Compare commits

...

28 Commits

Author SHA1 Message Date
da8dfe079e Extend concordance lists 2025-09-02 16:51:29 +02:00
b6b883420c Map literature type "Weiteres" 2025-09-02 13:14:48 +02:00
c63e9df9b3 Extend mappings 2025-09-02 11:54:04 +02:00
7e57ee2363 Map ownership type "Deakzessiert" 2025-09-02 11:18:46 +02:00
a0f4a2b159 Map ownership status for deaccession 2025-09-01 14:28:45 +02:00
f83b1aeb9f Update concordance lists 2025-08-14 21:45:43 +02:00
b323e10d9b Update MDConcMeasurementTypes 2025-08-14 16:22:21 +02:00
52f861c739 Map Länge (Griff) to length 2025-08-13 14:42:52 +02:00
50772ae02f Extend list of marking type concordances 2025-08-06 14:55:08 +02:00
46817aca32 Map Halsweite (Unterlage) as measurement type 2025-07-29 12:29:42 +02:00
b2a5bec110 Add marking position and two actor roles 2025-07-29 00:36:35 +02:00
e3db74e734 Extend marking position and tag relation type concordances 2025-07-25 17:25:58 +02:00
0555dcd94f Extend MDConcMarkingType 2025-07-25 01:31:39 +02:00
091f5016aa Add new concordances for height and width 2025-07-21 13:52:56 +02:00
3bb3ba4d70 Merge branch 'master' of gitea:museum-digital/MDImporterConcordanceLists 2025-07-18 13:05:14 +02:00
c2a433588f Extend concordance list 2025-07-18 13:03:30 +02:00
399f345888 Extend mappings for currencies and entry types 2025-07-15 10:39:02 +02:00
1d85ab3921 Map new sizes for blades 2025-07-14 17:17:51 +02:00
5796322692 Map concordance for license statement "Keine Verwendung erlaubt" 2025-07-11 21:08:08 +02:00
f9c94926c8 Extend MDConcMeasurementTypes 2025-07-09 14:46:56 +02:00
1635d4130a Add exception mode to redirect from object-tag relation type to
object-event relation (generic, e.g. if the tag is actually a time)
2025-06-26 14:34:18 +02:00
b7330634d7 Extend marking types list 2025-06-26 01:22:14 +02:00
a7ed284c26 Extend MDConcEntryTypes 2025-06-23 16:20:32 +02:00
d28e70d6c1 Merge pull request 'src/MDConcMarkingType.php aktualisiert' (#16) from ufladerer-patch-1 into master
Reviewed-on: #16
2025-06-12 17:20:48 +02:00
ca7ca028d2 src/MDConcMarkingType.php aktualisiert 2025-06-12 09:45:07 +02:00
ba0fe9d83a Add marking type concordance 2025-06-11 22:04:44 +02:00
aa51fdd56a Merge pull request 'src/MDConcMarkingPosition.php aktualisiert' (#15) from ufladerer-patch-1 into master
Reviewed-on: #15
2025-06-11 14:04:15 +02:00
2bd86abbdc src/MDConcMarkingPosition.php aktualisiert 2025-06-11 12:23:20 +02:00
13 changed files with 129 additions and 4 deletions

View File

@@ -0,0 +1,9 @@
<?PHP
declare(strict_types = 1);
/**
* Exception thrown in case a name entered for the relation between tag
* and object is actually an event type.
*/
final class MDImporterTagRelationTypeIsEventType extends Exception {
}

View File

@@ -32,6 +32,7 @@ final class MDConcActor implements MDImporterConcordanceListInterface {
"Ausstellung von Bezugsscheinen" => 1,
"Bearbeiter" => 1,
"Bearbeiterin" => 1,
"Konstruktion" => 1,
"Bearbeiter*in" => 1,
"Bearbeitende" => 1,
"Bindung" => 1,
@@ -661,6 +662,8 @@ final class MDConcActor implements MDImporterConcordanceListInterface {
"Zeichner u. Stecher" => 19,
// 20: Copied
"Abgeschrieben" => 20,
"Kopist" => 20,
"Übersetzer" => 20,
"Übersetzerin" => 20,
"Übersetzer*in" => 20,

View File

@@ -24,7 +24,13 @@ final class MDConcCurrencies implements MDImporterConcordanceListInterface {
"23.117,55" => "",
"15.01.1900" => "",
"Belarussischer Rubel" => 'by-BYN',
// Schweizer Franken / Swiss Franc
"SFR" => "ch-CHF",
"CHF" => "ch-CHF",
"Swiss franc" => "ch-CHF",
// Deutsche Mark
"DM" => "de-DM",
"dM" => "de-DM",
"Dm" => "de-DM",
@@ -35,10 +41,17 @@ final class MDConcCurrencies implements MDImporterConcordanceListInterface {
"Mark" => "de-DM",
"de-DM" => "de-DM",
"Deutsche Mark" => "de-DM",
// Reichsmark (Deutschland)
"RM" => "de-RM",
"Reichsmark" => "de-RM",
"Reichsmark (Deutsches Reich)" => "de-RM",
"Reichsmark (Deutsches Reich" => "de-RM",
// Franc (France)
"French Franc" => "fr-FF",
// Forint
"Forint" => "hu-Ft",
"FT" => "hu-Ft",
"Korona" => "hu-Korona",

View File

@@ -303,6 +303,8 @@ final class MDConcEntryTypes implements MDImporterConcordanceListInterface {
"Dauerausleihe" => "16",
"Dauerleihgabe von Privat" => "16",
"Letét" => "16",
"Permanent loan" => "16",
"permanent loan" => "16",
"Tartós leltét" => "16",
// 98: Old belongings
@@ -335,6 +337,7 @@ final class MDConcEntryTypes implements MDImporterConcordanceListInterface {
"Global" => "99",
"Zurückgegeben" => "99",
"Übernahme" => "99",
"Übernahme 1986" => "99",
"Übernahme von Betrieb" => "99",
"Teilbetrag" => "99",
"mitgenommen" => "99",
@@ -343,6 +346,8 @@ final class MDConcEntryTypes implements MDImporterConcordanceListInterface {
"unbekant" => "99",
"Ünernahme" => "99",
"Übergabe" => "99",
"Unbezeichnet" => "99",
"unbezeichnet" => "99",
"Übergabe abgeschr.B. DHM" => "99",
"gyűjtés" => "99",
"sch" => "99",

View File

@@ -64,6 +64,7 @@ vermuteter Herstellungsort' => 1,
'vermuteter Herstellungsort Fassung' => 1,
'Kupferstecher' => 1,
'Herstellungsort Fassung' => 1,
'Herstellungsort Hose' => 1,
'Herstellungsort Münze' => 1,
'Herstellung oder Vertrieb' => 1,
'Herstellung zugeschrieben' => 1,

View File

@@ -139,6 +139,7 @@ final class MDConcLicenses implements MDImporterConcordanceListInterface {
"http://www.europeana.eu/rights/rr-r/" => "RR-R",
"https://www.europeana.eu/rights/rr-r/" => "RR-R",
"Keine Verwendung erlaubt" => "RR-R",
'PDM' => 'Public Domain Mark',
'Public Domain Mark 1.0' => 'Public Domain Mark',

View File

@@ -50,6 +50,7 @@ final class MDConcMarkingPosition implements MDImporterConcordanceListInterface
"unterer Bildrand" => "bottom",
"Unterer Bildrand" => "bottom",
"unterer Bildrand, mittig" => "bottom",
"unten mitte" => "bottom",
"Unterkante Bild" => "bottom",
"Boden, unten" => "bottom",
"unterer Blattrand" => "bottom",
@@ -89,6 +90,7 @@ final class MDConcMarkingPosition implements MDImporterConcordanceListInterface
// Bottom right
"im Bild unten rechts" => "bottom_right",
"rechts unten Signatur" => "bottom_right",
"verso unten rechts" => "bottom_right",
"unterer Bildrand rechts" => "bottom_right",
"Bildrand rechts unten" => "bottom_right",
"Rechts unten" => "bottom_right",
@@ -256,6 +258,7 @@ final class MDConcMarkingPosition implements MDImporterConcordanceListInterface
"Balken" => "other",
"Zugbalken" => "other",
"innen" => "other",
"Innen" => "other",
"inneres Lederfutter" => "other",
"Innenseite" => "other",
"unter Gewichtsauflagenschale" => "other",

View File

@@ -32,6 +32,9 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"rot gemasert" => "handwritten",
"ornamentiert" => "handwritten",
"handschriftlich; aufgeklebt" => "handwritten",
"handschriftlich mit Bleistift" => "handwritten",
"mit schwarzer Kreide" => "handwritten",
"mit schwarzer Kreide - Signatur" => "handwritten",
"Beschriftung auf Plakette (handschriftlich)" => "handwritten",
"Beschriftung" => "handwritten",
"Beschriftung (handschriftlich)" => "handwritten",
@@ -45,6 +48,8 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"Titel (handschriftlich)" => "handwritten",
"Widmung (handschriftlich)" => "handwritten",
"Text" => "handwritten",
"im Stein" => "handwritten",
"im Stein - Beschriftung" => "handwritten",
# Handwriting
@@ -98,7 +103,6 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"geschrieben (schwarzer Filzstift)" => "handwritten",
"geschrieben mit schwarzer Ölfarbe" => "handwritten",
"geschrieben mit schwarzer Farbe" => "handwritten",
"Künstlersignatur" => "handwritten",
"Kugelschreiber,Bleistift" => "handwritten",
"Kugelschreiber" => "handwritten",
"Kulibeschriftung auf der Rückseite" => "handwritten",
@@ -128,7 +132,7 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"signiert und datiert" => "handwritten",
"Signiert" => "handwritten",
"signiert, mit Bleistift geschrieben" => "handwritten",
"Signatur mit Kugelschreiber" => "handwritten",
"handschriftlich mit Bleistift - Marke" => "handwritten",
"signiert, mit blauer Tinte geschrieben" => "handwritten",
"signiert, mit schwarzer Tinte geschrieben" => "handwritten",
"Tinte" => "handwritten",
@@ -145,7 +149,6 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
# Scratchings
"Beschriftung (geritzt)" => "scratch",
"Signatur (geritzt)" => "scratch",
"kratzen, Filzstift" => "scratch",
"gekratzt" => "scratch",
"eingeritztes Kreuzchen" => "scratch",
@@ -159,6 +162,7 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"Bemalung" => "painted",
"bemalt" => "painted",
"gemalt" => "painted",
"Gemalt" => "painted",
"signiert, gemalt" => "painted",
"Wappen (gemalt)" => "painted",
@@ -227,6 +231,7 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"gerduckt" => "overprint",
"goldener Druck mit Ornamenten und Zierrahmen" => "overprint",
"Golddruck" => "overprint",
"Titel mit Signatur (gedruckt)" => "overprint",
"Bechriftung (gedruckt)" => "overprint",
"Seriennummer" => "overprint",
"Textaufdruck" => "overprint",
@@ -245,6 +250,7 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"schwarzer Aufdruck" => "overprint",
"schwwarzer Aufdruck" => "overprint",
"geplottert" => "overprint",
"gedruckt - Beschriftung" => "overprint",
"gedruckt und eingeschoben" => "overprint",
"gedruckt und eingeschoben, kursiv" => "overprint",
"Druckerei-Vermerk" => "overprint",
@@ -418,6 +424,16 @@ final class MDConcMarkingType implements MDImporterConcordanceListInterface {
"Signatur mit Datierung (gemalt)" => "signature",
"Signatur mit Datierung (gestempelt)" => "signature",
"Signatur mit Datierung (gezeichnet)" => "signature",
"Signatur mit Datum (handschriftlich)" => "signature",
"Signatur mit Datum (gedruckt)" => "signature",
"Signatur mit Datum (gemalt)" => "signature",
"Signatur mit Datum (gestempelt)" => "signature",
"Signatur mit Datum (gezeichnet)" => "signature",
"Künstlersignatur" => "signature",
"Signatur (geritzt)" => "signature",
"Signatur mit Kugelschreiber" => "signature",
"handschriftlich mit Bleistift - Signatur" => "signature",
"im Stein - Signatur" => "signature",
# Watermark
"Wasserzeichen" => "watermark",

View File

@@ -100,6 +100,7 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"Bemalte Bildfläche (Höhe x Breite)",
"Plattengröße (Foto)",
"Andere Maße",
"Halsweite (Unterlage)",
"Format",
"Stichhöhe",
"Maße Transport",
@@ -181,6 +182,7 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"Höhe größtes Stück",
"height",
"height (overall)",
"Höhe (Trägermaterial)",
"Lichtmass (Höhe)",
"Bruttomass (Höhe)",
"Kartierung (Höhe)",
@@ -225,6 +227,9 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
'Höhe (Einleger 22)',
'Höhe (Einleger 23)',
'Höhe (Einleger 24)',
'Höhe (Passepartout)',
'Höhe (Unterlage)',
'Höhe (Buch)',
"Reliefhöhe" => MDMeasurementType::height,
"Länge",
@@ -260,6 +265,10 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"Sitzhöhe (Tiefe)",
"Länge (Platte)",
"Tiefe (Platte)",
"Länge (Griff)",
"Tiefe (Griff)",
"Länge (Parierstange)",
"Tiefe (Parierstange)",
"Objektmaß (Länge)",
"Objektmaß (Tiefe)",
"Objektmass (Länge)",
@@ -288,6 +297,12 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
'Tiefe (Einleger 2)',
'Länge (Einleger 3)',
'Tiefe (Einleger 3)',
'Länge (Passepartout)',
'Tiefe (Passepartout)',
'Länge (Unterlage)',
'Tiefe (Unterlage)',
'Länge (Buch)',
'Tiefe (Buch)',
"depth",
"Dicke" => MDMeasurementType::length,
@@ -307,7 +322,9 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
" (Breite)",
"width",
"width (overall)",
"Breite (Griff)",
"Außenmaß (Breite)",
"Breite (Trägermaterial)",
"Bruttomass (Breite)",
"Objektmaß (Breite)",
"Objektmass (Breite)",
@@ -349,10 +366,14 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
'Breite (Einleger 19)',
'Breite (Einleger 20)',
'Breite (Einleger 21)',
'Breite (Passepartout)',
'Breite (Unterlage)',
'Breite (Buch)',
"Stärke",
"Schenkelbreite (Breite)" => MDMeasurementType::width,
"Durchmesser",
"Durchmesser (Schaft)",
"Durchm.",
"Durchmesser (mit Dicke)",
"Durchmesser (Boden)",
@@ -368,7 +389,7 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"Durchmesser unten",
"Durchmesser (Höhe)",
"Durchmesser (Breite)",
"Durchmesser (Tiefe)",
"Durchmesser (Länge)",
"Durchmesser (Länge)",
"Objektmaß (Durchmesser)",
"Objektmass (Durchmesser)",
@@ -485,6 +506,7 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"weight",
"Gewicht (Höhe)",
"Lauf (Gewicht)",
"Gewicht (Breite)",
"Gewicht (Tiefe)",
"Gewicht (Länge)",
@@ -502,6 +524,10 @@ final class MDConcMeasurementTypes implements MDImporterConcordanceListInterface
"orientation",
"Stempelstellung" => MDMeasurementType::die_axis,
"Länge (Klinge)" => MDMeasurementType::length_blade,
"Breite (Klinge)" => MDMeasurementType::width_blade,
"Höhe (Klinge)" => MDMeasurementType::height_blade,
default => throw new MDImporterMissingConcordance("Unmapped specific measurement type: " . $input),
};

View File

@@ -21,8 +21,13 @@ final class MDConcObjectTagRelTypes implements MDImporterConcordanceListInterfac
'Assoziation' => 'tag',
'assoziation' => 'tag',
'description' => 'tag',
'Druckvorlage' => 'tag',
'emotion' => 'tag',
'atmosphäre' => 'tag',
'Objektart' => 'tag',
'objektart' => 'tag',
'schlagwort hist.ereignis' => 'tag',
'schlagwort thema' => 'tag',
"motive" => "display_subject",
"motiv" => "display_subject",
@@ -36,6 +41,32 @@ final class MDConcObjectTagRelTypes implements MDImporterConcordanceListInterfac
];
// Maps to event type
private const RELATION_TYPES_MAPPED_TO_EVENTS = [
'\'datierung\'' => ['event_type' => 24, 'target_section' => 'time'],
'datierung' => ['event_type' => 24, 'target_section' => 'time'],
'schlagwort zeitraum' => ['event_type' => 24, 'target_section' => 'time'],
'person' => ['event_type' => 23, 'target_section' => 'actor'],
];
/**
* Returns the mapped event type and event type target
* of a supposed tag-object relationship name.
*
* @param string $input Input string (relation type name).
*
* @return array{event_type: int, target_section: 'time'|'actor'|'place'}
*/
public static function getMappedEventType(string $input):array {
if (isset(self::RELATION_TYPES_MAPPED_TO_EVENTS[strtolower($input)])) {
return self::RELATION_TYPES_MAPPED_TO_EVENTS[strtolower($input)];
}
throw new MDImporterMissingConcordance("Unknown object-tag relationship type: " . $input);
}
/**
* Require a function for getting the concordance target.
*
@@ -52,6 +83,10 @@ final class MDConcObjectTagRelTypes implements MDImporterConcordanceListInterfac
return self::RELATION_TYPE_NAMES[strtolower($input)];
}
if (isset(self::RELATION_TYPES_MAPPED_TO_EVENTS[strtolower($input)])) {
throw new MDImporterTagRelationTypeIsEventType("Tag-object relationship type is signifies not tags, but an event component.");
}
throw new MDImporterMissingConcordance("Unknown object-tag relationship type: " . $input);
}

View File

@@ -17,6 +17,8 @@ final class MDConcOwnershipStatus implements MDImporterConcordanceListInterface
"Eigentum" => "owned",
"Geschenk" => "owned",
"Besitz" => "owned",
"Owned" => "owned",
"owned" => "owned",
"Kauf" => "owned",
"Fund" => "owned",
"Eigenleistung" => "owned",
@@ -28,6 +30,8 @@ final class MDConcOwnershipStatus implements MDImporterConcordanceListInterface
// Permanent loans
"Dauerleihe" => "permanent_loan",
"Dauerleihgabe" => "permanent_loan",
"Permanent loan" => "permanent_loan",
"permanent loan" => "permanent_loan",
// Loans
"Leihe" => "borrowed",
@@ -39,6 +43,13 @@ final class MDConcOwnershipStatus implements MDImporterConcordanceListInterface
'Third party property' => 'third_party_property',
'Fremdeigentum' => 'third_party_property',
// Deaccessed
'Deaccessed' => 'deaccessed',
'deakzessioniert' => 'deaccessed',
'Deakzessioniert' => 'deaccessed',
'Deakzession' => 'deaccessed',
'Deakzessiert' => 'deaccessed',
];
/**

View File

@@ -28,6 +28,7 @@ final class MDConcPlace implements MDImporterConcordanceListInterface {
'Herstellungsland' => 1,
'Herstellung' => 1,
'Entstehungsort' => 1,
'Herstellungsort Hose' => 1,
'Münzstätte' => 1,
// 2: Finding / was found

View File

@@ -23,6 +23,7 @@ final class MDConcSourceTypes implements MDImporterConcordanceListInterface {
"document]book" => "book",
// Misc
"Weiteres" => "misc",
"document]avm" => "misc",
];