Morphs in linked-swissbib

documentMorph.xml

Erstellt Metadaten der Aufnahme. Pro bibliographicRecord-Ressource sollte auch eine document-Ressource vorhanden sein.

enrichedMorph.xml

Verarbeitet Datensätze im NTriples-Format und transformiert sie zu JSON-LD. Datensatz-Typen sind “Organisationen” (siehe Anmerkungen dazu im Abschnitt “organisationMorph.xml”) und “Personen”. Aufgrund der Syntax-Spezifika von NTriples sowie für die Normalisierung der Inputdaten, welche aus heterogenen Quellen stammen (DBPedia, VIAF, vorverarbeitete Swissbib-Daten), müssen die meisten Werte modifiziert werden. Die drei wichtigsten Fälle, die jeweils in einem <macro>-Element definiert werden:

Personen und “Organsationen” haben verschiedene JSON-LD-Kontexte. Daher gibt es zwei <combine>-Blöcke zur Erstellung des jeweiligen Kontextes, wo überprüft wird, ob es sich um einen Datensatz vom Typ Person oder Organization handelt. Je nach dem werden im betreffenden Kontext-Block die Daten weitergeleitet oder nicht.

itemMorph.xml

Erstellt Exemplardaten primär basierend auf dem nicht-kanonischen MARC-Feld 949. Hinweise:

Ein wiederholt genutzte Methode für Extraktion von mehreren eigenständigen Ressourcen aus einer einzigen bibliographischen (Eingabe-)Ressource ist die Erstellung von Entitäten (entity) in der betreffenden Morph-Datei. Dieser entity-Block umfasst alle Literale, welche für die jeweilige Zielressource benötigt werden. Nach dem morph-command folgt entity-splitter, das einzelne Entitäten eines Records einliest, diese aber als eigentständige Records wieder ausgibt. Mithilfe des Parameters entityBoundary lässt sich zudem für mehrfach geschachtelte Entitäten einstellen, ab welcher Stufe die Entitäten Records werden sollen.

organisationMorph.xml

Erstellt “Organisations”-Entitäten (Organisationen, Institutionen, Kongresse etc.) auf Basis von Marc-Feld 110, 111, 710 oder 711.

personMorph.xml

Erstellt Personen-Entitäten auf Basis von MARC-Feld 100 (1. Indikator 0 oder 1) oder 700 (1. Indikator dito). Der grundsätzlich Mechanismus ist derselbe wie bei itemMorph.xml und organisationMorph.xml: Literale werden pro relevantem Feld in entity-Blöcke zusammengefasst und anschliessend zu eigenständigen Ressourcen umgewandelt (für genauere Erläuterungen dazu s. Info-Box im Abschnitt zu itemMorph.xml). Zudem sind dieselben “Sicherheitsmassnahmen” wie bei organisationMorph.xml für Feld 100-Fälle implementiert, um ein unabsichtliches Weiterleiten einer Entität ohne Werte aus dem entsprechenden Feld zu verhindern.

resourceMorph.xml

Erstellt das eigentliche Katalogisat und linkt (bzw. wird verlinkt durch) die Ressourcen Person, Organisation, Document, Item sowie die separat erstellte Work.