/
Datenaufbereitung und Mapping

Datenaufbereitung und Mapping

Für die Verarbeitung der Daten wird die Software Alma2Elastic verwendet. Alma2Elastic harvestet eine OAI-PMH Schnittstelle, die Daten in MARCXML ausliefert, und erstellt aus jedem MARC-Record ein Indexdokument. Zusätzlich können externe Services in den Workflow eingebunden werden, die eine Anreicherung der Daten vornehmen.

Bibliographische Daten

Im Indexdokument sind die bibliographischen Daten inkl. vom Bibliothekssystem expandierten Bestandsdaten (Exemplare, Holdings, etc.) in drei verschiedenen Formen enthalten:

MODSlike as JSON

Mapping des MARC-Records mit Anreicherungen aus externen Quellen (GND, etc.) in ein auf MODS basierendes Schema

Felder: mapping.*

Nutzung:

  • Suche und Anzeige von Daten über externe Oberflächen

  • Datenanalyse in Kibana mittels Queries und Visualisierungen

  • CSV-Exporte

Mapping und Anreicherung

Das Mapping und der Aufruf von Services für die Datenanreicherung sind in Google Sheets hinterlegt.

Für die Verarbeitung aller Felder, die Verknüpfungen zu Agenten, Orten oder Themen (1xx/7xx/6xx, jeweils x00, x10, x11, x30, x50, x51) enthalten, wird der GND-Service aufgerufen. Dieser nimmt das Mapping der Felder und die Anreicherung mit ausgewählten Daten aus der GND vor. Für Details siehe GND-Sercive: Mapping and enrichment. Für ein Beispiel siehe Beispiel Person.

Eine erweiterte Aufbereitung der Daten wird für Datumswerte, Holdings/Items und Sprachcodes vorgenommen. Für Details siehe die internen Funktionen Date Values, Holdings und Languages von Alma2Elastic.

Indexierung und Nutzung

mapping.* sind in der Regel mit type keyword indexiert. Agenten, Orte und Themen sind mit type nested indexiert. Damit ausgewählte Inhalte aus diesen Feldern trotzdem in Kibana für Visualisierungen zur Verfügung stehen, werden sie kopiert und sind unter copyfields.* auffindbar.

MARC as JSON

Vollständiger MARC-Record in JSON

Felder: datafield.*, controlfield.* und LDR.*

Nutzung:

  • Detaillierte Datenanalyse mittels Querys in Discover

  • Visualisierungen mittels Filters

  • LDR und controlfield für CSV-Exporte

Indexierung und Nutzung

datafield.* sind mit type nested indexiert.

Ein datafield enthält immer die Felder tag, ind1, ind2, subfield und subfield.keyword. subfield und subfield.keyword enthalten die Daten in der Struktur "|Unterfeldcode Unterfeldinhalt", z.B. |a Metallindustrie. Abgesehen von subfield sind alle Felder mit type keyword indexiert. subfield ist mit type text indexiert.

In einem keyword field ist der ganze Inhalt als ein String indexiert, d.h. man muss den ganzen Inhalt eingeben oder trunkieren. Hier wird keine Normalisierung vorgenommen, d.h. Gross- und Kleinbuchstaben, etc. sind relevant. * In einem text field ist der String auf Whitespace und weiter Zeichen gesplittet indexiert und wird normalisiert. In diesen Feldern kann man suchen, wie man es sich über einen Suchschlitz gewohnt ist, inkl. Boolsche Operatoren und Anführungszeichen für die Phrasensuche.

Beispiel für ein Feld mit mehreren Unterfeldern:

{ "tag": "650", "ind1": " ", "ind2": "7", "subfield": [ "|a Metallindustrie", "|0 (DE-STW)13034-4", "|2 stw" ] }

Zur Nutzung der datafield.* für Abfragen, siehe Queries in Kibana.

MARC lines as JSON

Korrekte MARC-Felder als String pro Feld

Felder: fieldlists.*

Nutzung: Für CSV-Exporte

Indexierung und Nutzung

Unter fieldlists gibt es pro MARC-Feld ein Feld, das die Inhalte aller in der Aufnahme vorkommenden Felder als Strings enthält. Der String beginnt mit den Indikatoren wobei blank durch # ersetzt wird. Die Unterfelder werden mit $$ eingeleitet. Am Ende eines Felds steht immer ein senkrechter Strich (pipe).

fieldlists.* sind nicht indexiert und können deshalb weder für die Suche noch für die Visualisierung von Daten genutzt werden. Sie stehen für die Anzeige im Bereich Discovery und für den CSV-Export zur Verfügung.

Beispiel für ein Feld, das in der Aufnahme mehrfach vorkommt:

"700": [ "1#$$aHalířová, Martina$$d1979-$$0(DE-588)1029723567$$eVerfasser$$4aut|", "1#$$aJiránek, Tomáš$$d1965-$$0(DE-588)141624205$$eVerfasser$$4aut|" ]

 

Weitere Daten

Das Indexdokument enthält weitere Daten für darauf aufbauende Services.

Search-Felder

Für die Suche über eine externe Oberfläche

Felder: search.*

Die Felder sind mit type text mit type keyword indexiert.

Flags

Für die Bildung von Datensets

Das Setzen von Werten für “flags” ist Teil des Mappings. Siehe Tabellenblatt “flags” für die aktuell zur Verfügung stehenden Werte und deren Definition.

Facets

Für Facetten auf Suchoberflächen (in Entwicklung)

Access Control List (ACL)

Für die Zugriffssteuerung (in Entwicklung)

Related content