Artifex uses two label families: period (ordered date bins) and region (a hierarchical cultural-geographic taxonomy). Both are versioned through configuration files; changing them changes the dataset version.
historical_to_astronomical (src/artifex/dates.py).[date_start, date_end]. A single year is a range of length zero.original_date_text; flags date_approximate ("c.", "about", "late …")
and date_uncertain ("?", "probably", "or", …) are derived from it.date_issue: missing, zero-placeholder (the Met's 0/0 for
undated objects), out-of-range, or reversed-range (start and end swapped and fixed).User-facing dates show the museum's text where available. Normalised ranges are formatted with explicit eras where needed: "500–100 BCE", "50 BCE–50 CE", "800 CE", "1600–1650".
Defined in configs/dataset.yaml (period.bins); contiguous, half-open intervals [start, end):
| id | label | covers |
|---|---|---|
pre-500 |
Before 500 CE | everything before 500 CE |
500-1299 |
500–1299 | |
1300-1449 |
1300–1449 | |
1450-1549 |
1450–1549 | |
1550-1649 |
1550–1649 | |
1650-1749 |
1650–1749 | |
1750-1849 |
1750–1849 | |
1850-1899 |
1850–1899 | |
1900- |
1900 and later |
Bins are deliberately neutral date ranges, not style periods ("Renaissance", "Edo"), because the collection spans
traditions whose periodisations do not align. Bins are narrower where the collection is dense and wider where it is
sparse; a bin with fewer than min_records_per_class labelled works in the modelling subset is not a classifier target
(its works remain in the collection and the retrieval index).
Assignment rule. A work is labelled with a bin only if at least 75 % of its documented range lies inside that
bin (assign_period in src/artifex/labels.py). Otherwise period_status is spans-bins and the work has no period
label. It is still evaluated with range-aware metrics. The rule avoids forcing "16th–17th century" into one bin.
A region label describes the cultural-geographic attribution recorded by the holding museum for the artwork (its culture or place of production). It is not the place depicted and, where avoidable, not the artist's birthplace. Regions are historical-geographic zones, not modern states; modern country names in museum records only point into these zones.
configs/region_mapping.yaml)| Broad region | Narrower traditions (sub-regions) |
|---|---|
| Europe | Italian peninsula · Low Countries · France · Iberian peninsula · German-speaking lands & Central Europe · British Isles · Nordic countries · Eastern Europe · Greek & Byzantine world |
| North America | — |
| Latin America & Caribbean | — |
| East Asia | China · Japan · Korea |
| South Asia | Mughal & North Indian courts · Rajasthan & Central India · Punjab Hills (Pahari) · Deccan · Eastern India · Sri Lanka |
| Himalayan region (Tibet, Nepal, Bhutan) | — |
| Southeast Asia | — |
| West & Central Asia | Iran · Anatolia & Ottoman lands · Arab lands of West Asia · Central Asia · Ancient Near East |
| Nile Valley & North Africa | Egypt · Maghreb |
| Sub-Saharan Africa | — |
| Oceania | — |
Only broad regions (and traditions) with enough labelled works become classifier targets; the deployed list is shown on the Methodology page under Current configuration and with every analysis.
object_culture → object_geography → artist_nationality → department_hint
(the last is used only for the Met's Egyptian Art department, which is itself a geographic attribution).ambiguous and stays unlabelled — the search does not fall back to a weaker field. Examples: "United States or
England", "Western Tibet [or Kashmir (?)]".override rules handle compound terms whose meaning is not the union of their words ("Roman Egypt" → Nile Valley;
"British India" → South Asia; "Sino-Tibetan" → Himalayan region).unmapped. All distinct strings, their counts and mappings are written to
data/manifests/region_mapping_report.csv for review.Every record keeps culture_original, region_original, region_basis, region_status and region_matched_text.