diff --git a/src/MDConcEventTypes.php b/src/MDConcEventTypes.php index 30dec81..5750c0a 100644 --- a/src/MDConcEventTypes.php +++ b/src/MDConcEventTypes.php @@ -24,10 +24,14 @@ final class MDConcEventTypes implements MDImporterConcordanceListInterface { 'http://terminology.lido-schema.org/eventType/production' => 1, 'Leipoldt, J.' => 1, 'Rohleder, Walter, Reichenbach' => 1, + // "Unknown event" + 'Ereignis' => 1, + 'http://terminology.lido-schema.org/lido00003' => 1, // 2: Was found 'Auffinden' => 2, 'Ausgrabung' => 2, + 'Excavation' => 2, 'Finding' => 2, 'Fund' => 2, 'Fund (Aktivität)' => 2, @@ -36,6 +40,13 @@ final class MDConcEventTypes implements MDImporterConcordanceListInterface { // 3: Published 'Published' => 3, 'Veröffentlicht' => 3, + 'Veröffentlichung' => 3, + 'published' => 3, + 'http://terminology.lido-schema.org/eventType/publication' => 3, + 'Publikation' => 3, + 'Publishing' => 3, + 'Publication Event' => 3, + 'Publication (Event)' => 3, // 4: Template creation 'Template creation' => 4, @@ -226,7 +237,8 @@ final class MDConcEventTypes implements MDImporterConcordanceListInterface { 'Verkauft' => 43, // 44: Restorated - 'Restauierung' => 44, + 'Restaurierung' => 44, + 'Restauriert' => 44, 'wurde restauriert' => 44, // 45: Damaged @@ -234,12 +246,8 @@ final class MDConcEventTypes implements MDImporterConcordanceListInterface { 'Beschädigung' => 44, 'wurde beschädigt' => 44, - // 48: Published - 'published' => 48, + // 48: Edited 'Herausgegeben' => 48, - 'http://terminology.lido-schema.org/eventType/publication' => 48, - 'Publikation' => 48, - 'Publication Event' => 48, // 49: Gifted, donated 'Schenkung' => 49, diff --git a/src/MDConcFieldRelatedWorksType.php b/src/MDConcFieldRelatedWorksType.php new file mode 100644 index 0000000..78bfd1a --- /dev/null +++ b/src/MDConcFieldRelatedWorksType.php @@ -0,0 +1,117 @@ + + */ +declare(strict_types = 1); + +/** + * Represents a possible target for importing related works + * as defined by LIDO. + */ +enum MDConcFieldRelatedWorksType { + + case related_works_freetext; + case series; + case literature; + case weblink; + case undefined; + + /** + * Returns a target field value of this type based on a string. + * + * @param string $input Input to get a value from. + * + * @return MDConcFieldRelatedWorksType + */ + public static function fromString(string $input):MDConcFieldRelatedWorksType { + + return match($input) { + + "Dokumentiert in", + "dokumentiert in", + "Erwähnung in", + ":iterature", + "Beschrieben in", + "Literatur", + "Literatur in Zusammenhang", + "beschrieben in" => self::literature, + + "Teil von", + "ist Teil von", + "Gehört zu", + "Part of", + "Gesamtwerk", + "part of", + "Photoserie", + "Mappe", + "series", + "Serie" => self::series, + + "hat Vorlage", + "Kopie von", + "Objekt", + "ist Version von", + "inhaltlicher Bezug zu", + "Teil", + "has part", + "Dublette", + "Objektbezug", + "Vergleiche", + "Umfasst", + "Entwurf", + "Vorderseite", + "Rückseite", + "Paarweise mit", + "Zustandsdruck", + "Foto", + "Original", + "Variante", + "Aufnahme Objekt", + "Zusammen mit", + "Ausführung", + "Related objects", + "Join", + "Hauptobjekt", + "Akte", + "Vorgang", + "Form", + "Identisch mit", + "Kopie", + "Gegenstück zu", + "hat Version", + "hat Kopie", + "ist Verso von", + "ist Recto von", + "ist Kopie nach", + "ist Quelle für", + "in Beziehung zu", + "ist abgeleitet von", + "ist vorbereitend für", + "Enthalten in", + "Enthält", + "Verso von", + "Recto von", + "ist Teil desselben konzeptuellen Ganzen mit", + "ist vorbereitende Studie für", + "Druck", + "Referenz", + "Haupttafel", + "Faksimile", + "Blatt", + "Photo", + "Einzelteil", + "Vorlage" => self::related_works_freetext, + + "Weblink", + "Web link" => self::weblink, + + "" => self::undefined, + + default => throw new MDpageParameterNotFromListException("Unknown target field for related works type: " . $input), + }; + + } +} diff --git a/src/MDConcLengths.php b/src/MDConcLengths.php index a4b9528..f4416b5 100644 --- a/src/MDConcLengths.php +++ b/src/MDConcLengths.php @@ -12,17 +12,25 @@ declare(strict_types = 1); final class MDConcLengths implements MDImporterConcordanceListInterface { private const LENGTHS_LIST = [ - "cn" => "cm", - ",cm" => "cm", - "5cm" => "cm", - "Breite" => "cm", // Default: cm - "breite" => "cm", // Default: cm - "Width" => "cm", // Default: cm - "width" => "cm", // Default: cm - "Höhe" => "cm", // Default: cm - "höhe" => "cm", // Default: cm - "Height" => "cm", // Default: cm - "height" => "cm", // Default: cm + "cn" => "cm", + ",cm" => "cm", + "5cm" => "cm", + "ca" => "cm", // Default: cm; This is likely also a typo + "Breite" => "cm", // Default: cm + "breite" => "cm", // Default: cm + "Width" => "cm", // Default: cm + "width" => "cm", // Default: cm + "Höhe" => "cm", // Default: cm + "höhe" => "cm", // Default: cm + "Height" => "cm", // Default: cm + "height" => "cm", // Default: cm + "´´´" => "cm", // Default: cm + "Theater" => "cm", // Default: cm + "Oper" => "cm", // Default: cm + "min" => "cm", // Default: cm + "-" => "cm", // Default: cm + "a)" => "cm", // Default: cm + "/" => "cm", // Default: cm "inch" => "in", "Zoll" => "in", diff --git a/src/MDConcLicenses.php b/src/MDConcLicenses.php index 3e47b22..151f3d9 100644 --- a/src/MDConcLicenses.php +++ b/src/MDConcLicenses.php @@ -17,7 +17,9 @@ final class MDConcLicenses implements MDImporterConcordanceListInterface { "CC0 1.0" => "CC0", "CC 0 1.0" => "CC0", "CC_0 1.0" => "CC0", + "kein Copyright / Public domain (CC0 1.0)" => "CC0", "http://creativecommons.org/publicdomain/zero/1.0/" => "CC0", + "http://creativecommons.org/publicdomain/zero/1.0/deed.de" => "CC0", "https://creativecommons.org/publicdomain/zero/1.0/" => "CC0", "https://creativecommons.org/publicdomain/zero/1.0/deed.de" => "CC0", @@ -38,6 +40,7 @@ final class MDConcLicenses implements MDImporterConcordanceListInterface { "http://creativecommons.org/licenses/by-sa/4.0/" => "CC BY-SA", "https://creativecommons.org/licenses/by-sa/4.0/" => "CC BY-SA", "Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International (CC BY-SA 4.0)" => "CC BY-SA", + "Namensnennung 4.0 International (CC BY 4.0)" => "CC BY-SA", "CC BY_NC" => "CC BY-NC", "CC_BY_NC" => "CC BY-NC", @@ -68,6 +71,10 @@ final class MDConcLicenses implements MDImporterConcordanceListInterface { "https://www.deutsche-digitale-bibliothek.de/content/lizenzen/rv-fz/" => "RR-F", "https//www.deutsche-digitale-bibliothek.de/content/lizenzen/rv-fz" => "RR-F", "http://www.deutsche-digitale-bibliothek.de/lizenzen/rv-fz/" => "RR-F", + "https://www.deutsche-digitale-bibliothek.de/content/lizenzen/rv-ez" => "RR-F", + "https://www.deutsche-digitale-bibliothek.de/content/lizenzen/rv-ez/" => "RR-F", + "https//www.deutsche-digitale-bibliothek.de/content/lizenzen/rv-ez" => "RR-F", + "http://www.deutsche-digitale-bibliothek.de/lizenzen/rv-ez/" => "RR-F", "http://www.europeana.eu/rights/rr-f/" => "RR-F", "https://www.europeana.eu/rights/rr-f/" => "RR-F", "Rechte vorbehalten - Freier Zugang" => "RR-F",