Hostname: page-component-89b8bd64d-ksp62 Total loading time: 0 Render date: 2026-05-09T01:14:34.603Z Has data issue: false hasContentIssue false

Matching Pragmatic Lithic Analysis and Proper Data Architecture

The QuARI R Shiny Database Interface

Published online by Cambridge University Press:  27 July 2021

Daniel A. Contreras*
Affiliation:
Department of Anthropology, University of Florida, 1112 Turlington Hall, PO Box 117305, Gainesville, FL 32611-7305, USA
Zachary Batist
Affiliation:
Faculty of Information, University of Toronto, 140 St. George Street, Toronto, Ontario, M5S 3G6, Canada
Ciara Zogheib
Affiliation:
Faculty of Information, University of Toronto, 140 St. George Street, Toronto, Ontario, M5S 3G6, Canada
Tristan Carter
Affiliation:
Department of Anthropology, CNH 524, McMaster University, 1280 Main Street West, Hamilton, Ontario, L8S 4L9, Canada
*
(daniel.contreras@ufl.edu, corresponding author)
Rights & Permissions [Opens in a new window]

Abstract

The documentation and analysis of archaeological lithics must navigate a basic tension between examining and recording data on individual artifacts or on aggregates of artifacts. This poses a challenge both for artifact processing and for database construction. We present here an R Shiny solution that enables lithic analysts to enter data for both individual artifacts and aggregates of artifacts while maintaining a robust yet flexible data structure. This takes the form of a browser-based database interface that uses R to query existing data and transform new data as necessary so that users entering data of varying resolutions still produce data structured around individual artifacts. We demonstrate the function and efficacy of this tool (termed the Queryable Artifact Recording Interface [QuARI]) using the example of the Stelida Naxos Archaeological Project (SNAP), which, focused on a Paleolithic and Mesolithic chert quarry, has necessarily confronted challenges of processing and analyzing large quantities of lithic material.

La documentación y análisis de materiales líticos tiene que navegar una tensión entre examinar y documentar artefactos individuales o sumas de artefactos. Esta tensión presenta un desafío tanto para el procesamiento de artefactos como para la construcción de bases de datos. Aquí presentamos una solución realizado en R Shiny lo cual hace posible que los analistas de líticos puedan introducir datos para artefactos individuales y sumas de artefactos, mientras se mantiene una estructura de datos robusta pero flexible. Esta estructura resulta ser un interfaz en el navegador que emplea R para interrogar datos existentes y transformar datos nuevos cuando sea necesario, para que los usuarios —mientras introduzcan datos de resoluciones varias— puedan producir datos con una estructura basada en el artefacto individual. Demostramos la herramienta (denominada Queryable Artifact Recording Interface [QuARI]) tras el ejemplo del Proyecto Arqueológico Stelida Naxos (SNAP, por sus signos en ingles), lo cual, por enfocarse en una cantera lítica paleolítica y mesolítica, necesariamente se ha enfrentado con los desafíos de procesar y analizar cantidades grandes de material lítico.

Information

Type
Article
Creative Commons
Creative Common License - CCCreative Common License - BYCreative Common License - NCCreative Common License - SA
This is an Open Access article, distributed under the terms of the Creative Commons Attribution-NonCommercial-ShareAlike licence (http://creativecommons.org/licenses/by-nc-sa/4.0/), which permits non-commercial re-use, distribution, and reproduction in any medium, provided the same Creative Commons licence is included and the original work is properly cited. The written permission of Cambridge University Press must be obtained for commercial re-use.
Open Practices
Open materials
Copyright
Copyright © The Author(s), 2021. Published by Cambridge University Press on behalf of Society for American Archaeology
Figure 0

FIGURE 1. The contrasts and relationships between assemblage-level (upper table) and artifact-level (lower table) data recording.

Figure 1

FIGURE 2. Screenshots of the app in use. Users can filter the dataset and/or enter data using the fields at the top, and view and modify records in the bottom panel. In the upper left panel, Trench 004, Context 0031 has been selected and filtered for Mesolithic flakes with cortex class 2 or 3, so all unique combinations of artifacts associated with that locus that meet those conditions are displayed in the Level 2 tab. Selecting one of those rows (Mesolithic Flake 2 and 3 with “combined” modification, in the example) allows the user to access (view and/or edit) the records for those seven artifacts in the Level 3 tab (shown in the middle panel). The Photos and Illustrations buttons for a particular artifact (AR008381, in the example) analogously give access to any records particular to that artifact in the associated tabs (Photos, in the bottom panel).

Figure 2

FIGURE 3. Users are presented with the R Shiny interface through their browser (a). Their input in these fields produces a data frame (b) that is compared to the existing data maintained in the database (c). In case no record matching the same parameters is found (c'), a new record is created. In case a Level 2 record with the same values already exists (c''), that record (shaded yellow in c'') is updated to reflect the additional data the user has just input (shaded teal in b). In either case, the Level 2 table is updated accordingly (d), whether by adding a new record (shaded green, corresponding with actions taken in c') or by changing the quantity for an existing record (shaded orange, corresponding with actions in c''). The last two rows in the table illustrated in (d) are consequently two alternative end-states: either three new denticulate flakes are created for Locus 0123 (green row), or three new denticulate flakes are added to the one already recorded for Locus 0123 (orange row). Creating a new record or updating the quantity of lithics for an existing record in the Level 2 table (assemblage-level data, illustrated in Figure 2) necessarily implies changes to the Level 3 table (artifact-level data, illustrated here). Finally, the R Shiny interface queries the database to obtain up-to-date versions of these tables, which are then re-rendered in the browser interface.

Figure 3

FIGURE 4. As Level 2 records are either created or modified (illustrated in Figure 2), the Level 3 table is queried to determine the highest existing ArtefactID, and a sequential list of new ArtefactIDs is generated, the length of which corresponds to the quantity of new records implied by the updated Level 2 table (a). A temporary data frame is generated (b) that includes as many rows as there are new ArtefactIDs. It is populated with the values entered by the user as assemblage-level data, matching corresponding values in the Level 2 table; additional data pertaining to the individual artifact (e.g., raw material type, metrics) may also optionally be added. This temporary table is then appended to the Level 3 table in the database (c). The R Shiny interface then queries the database to obtain up-to-date information, which is subsequently re-rendered in the data tables visible in the browser.

Figure 4

FIGURE 5. Schematic of levels of analysis, associated tables, and their relationships in QuARI as developed for SNAP.

Supplementary material: File

Contreras et al. supplementary material

Contreras et al. supplementary material

Download Contreras et al. supplementary material(File)
File 166.6 KB