goobi_opac.xml
In der Konfigurationsdatei goobi_opac.xml
wird die Kommunikation von Goobi workflow mit externen Datenquellen festgelegt. Dies betrifft zumeist Systeme wie Bibliothekskataloge. Die Datei befindet sich üblicherweise an folgendem Speicherpfad:
Beispielhaft sieht diese Konfigurationsdatei wie folgt aus:
Publikationstypen
In dem Element <doctypes>
können mehrere Publikationstypen definiert werden. Jeder Typ steht in einem eigenen <type>
-Element und hat einige Eigenschaften, die über Parameter und Unterelemente angegeben werden.
Eigenschaften eines Publikationstyps
Alle wichtigen Eigenschaften eines Publikationstyps werden als Parameter im <type>
-Element angegeben. Folgende Parameter können verwendet werden:
Attribut | Mögliche Werte | Bedeutung |
---|---|---|
| Text | Dieses Feld gibt den Titel des Publikationstypen an. Der Titel ist ein technisch einfach nutzbarer Name, der mit dem |
|
| Dieser Wert kann auf |
|
| Dieser Wert kann auf |
|
| Dieser Wert kann auf |
| Name aus | Mit diesem Feld kann ein Regelsatz angegeben werden, der mit diesem Publikationstyp verknüpft werden soll. |
| Name aus | Mit diesem Feld kann ein Regelsatz-Unterelement angegeben werden, das mit diesem Publikationstyp verknüpft werden soll. |
| Text | Mit diesem Feld kann eine Bezeichnung angegeben werden, die beim Export zu Tiff-Dateien in den Dateiheader geschrieben werden soll. |
Übersetzung des Titels
Die im title
-Parameter angegebene Bezeichnung eines Publikationstyps wird softwareintern verwendet und ist daher für Anwender nicht immer gut lesbar und wird nicht automatisch übersetzt. Daher kann der Name des Publikationstyps mit dem <label>
-Element in verschiedene Sprachen übersetzt werden. Mit dem language
-Parameter wird das Sprach-Kürzel angegeben. Je nach Konfiguration werden üblicherweise folgende Sprachen unterstützt:
Mapping zu anderen Datenformaten
Es kann vorkommen, dass ein Publikationstyp mit einer Suchfunktion oder mit externen Datenformaten über bestimmte Bezeichnungen oder Kürzel gefunden werden können soll, die nicht aus dem Titel ableitbar sind. Dazu können für jeden Typen mit dem Unterelement <mapping>id42</mapping>
weitere Bezeichnungen angegeben werden. Wird dann zum Beispiel nach der ID id42
gesucht, so wird der entsprechende Publikationstyp gefunden.
Kataloge
Goobi kann Metadaten aus verschiedenen Katalogen verwenden. Diese werden mit dem <catalogue>
Element direkt im <opacCatalogues>
Element eingetragen. Für jedes Katalog-Element wird mit dem title
Parameter der offizielle Name des jeweiligen Katalogs angegeben.
Konfiguration eines Katalogs
Einige weitere Eigenschaften eines Katalogs werden im Unterelement <config>
als Parameter angegeben. Folgende Parameter können verwendet werden:
Attribut | Mögliche Werte | Bedeutung |
---|---|---|
| OPAC-Typ | Mit diesem Parameter kann der OPAC-Typ der vom Katalog verwendeten Datenbank angegeben werden. Dies kann zum Beispiel |
| Text | Hier kann eine Beschreibung des Katalogs angegeben werden. |
| Protokoll | Dieser Parameter wird üblicherweise auf |
| URL | Dieser Parameter gibt den Domain-Namen oder die IP-Adresse der API des Katalog-Services an. Wird hier das Netzwerkprotokoll angegeben, so muss der |
| Portnummer | Mit der Portnummer kann ein besonderer Netzwerkport der API des Katalog-Services angegeben werden. Üblicherweise ist dies der Standard-HTTP-Port |
| Zahl | Mit diesem Parameter kann die Datenbank-Version angegeben werden, die bei API-Anfragen verwendet werden soll. |
| Zeichensatz | Mit diesem Parameter kann ein Zeichensatz angegeben werden, mit dem die Datenbank die Datensätze zurückgeben soll. |
| Dateipfad | Dieser Parameter wird nur verwendet, wenn der Katalog eine PICA-Datenbank verwendet. Der Dateiname muss auf eine IKTLIST-Datei verweisen, die Informationen über Mediennummernsysteme bereitstellt. |
| Text | Dieser Parameter wird verwendet, um UCNF-Informationen in die URL der API-Anfrage einzufügen. |
Optionen für die Suche
Metadaten werden in Katalogen mithilfe bestimmter Nummern identifiziert (zum Beispiel ISBN oder ISSN). Sollen in Goobi Metadaten anhand einer vorgegebenen Nummer aus dem jeweiligen Katalog importiert werden, können mit dem ` Element verschiedene Nummernsysteme aufgelistet werden. Ein Anwender kann dann im folgenden Beispiel eine ISBN-Nummer eingeben und dazu passend das ISBN-Feld auswählen:
Dabei stellt jedes <searchField>
Element eine Option in dem zugehörgigen Dropdown-Menü dar. Der in label
angegebene Text wird auf der Nutzeroberfläche dargestellt. Der in value
definierte Wert ist die interne ID des Nummernsystems. Je nach Katalog kann auch eine textbasierte ID verwendet werden. Das kann zum Beispiel so aussehen:
Detailierte Informationen über unterstützte Nummernsysteme können von der jeweiligen Katalog-API abgefragt werden. Dies ist eine XML-Datei, die direkt im Browser aufgerufen werden kann. Die Domain muss entsprechend dem verwendeten Anbieter angepasst werden.
Mapping zu Publikationstypen
Wie oben beschrieben, können Publikationstypen mit alternativen Bezeichnungen gefunden werden. Zusätzlich ist es in <catalogue>
Elementen möglich, mit dem <specialmapping>
Element katalogspezifische Bezeichnungen (und damit auch Kataloge) zu Publikationstypen zu verknüpfen. Damit können über die alternativen Bezeichnungen eines Katalogs passende Publikationstypen definiert und gefunden werden.
Dabei verweist der type
-Parameter des <specialmapping>
-Elements auf den title
des zuvor definierten Publikationstypen. Das <specialmapping>
Element beinhaltet eine alternative Bezeichnung. Folgendes Beispiel würde für einen K10Plus-Katalog den Suchbegriff k10plus_periodical
mit dem Publikationstyp periodical
verknüpfen:
Anpassen von Datensätzen aus MARC-Dateien
Werden Datensätze aus Katalogen abgefragt, so werden diese unter anderem über MARC-Dateien in Goobi importiert. Datensätze aus diesen Dateien können durch bestimmte Ersetzungsmuster angepasst werden. Dazu wird das <beautify>
Element als direktes Unterelement des entsprechenden <catalogue>
Elements verwendet und kann beliebig viele <setvalue>
Befehle enthalten.
Da die Bearbeitung der MARC-Daten mit diesen Befehlen sehr komplex werden kann, werden hier auf Basis des folgenden MARC-Daten-Ausschnitts nur ein paar einfache Beispiele beschrieben.
Mit dem folgendem Befehl können bestimmte Werte ersetzt werden. Stellt sich zum Beispiel heraus, dass manche Datensätze vom Typ book
eine ungültige Jahreszahl (year
) haben, können falsche Daten korrigiert werden. Der setvalue
-Befehl bestimmt, dass in jedem mit der inneren <condition>
angesprochenen datafield
mit Tag book
das subfield
mit dem Parameter code="year"
den Wert 1900
bekommen soll. Die <condition>
besagt, dass alle datafield
Elemente berücksichtigt werden sollen, die das Tag book
haben und bei denen ein Unterelement mit code="year"
und dem Wert 190
vorhanden ist.
Daten können mit dem <setvalue>
-Befehl gefiltert werden. Möchte man zum Beispiel die other_id
Elemente entfernen, kann deren Wert mit einer leeren Zeichenkette überschrieben werden.
Hinweis: Ein Sternchen (*) ist ein Platzhalter für ein beliebigen Wert. Reguläre Ausdrücke werden nicht unterstützt.
Datensätze können auch um neue Eigenschaften ergänzt werden. Dies funktioniert allerdings nur bedingt, weil nur auf die Daten aus der MARC-Datei und aus dem <setvalue>
Befehl zurückgeriffen werden kann. So ist es zum Beispiel möglich, Datensätze mit bestimmten Inhalten neue Tags zu vergeben:
Hinweis: Bitte beachten Sie, dass Goobi ursprünglich auf die Kommunikation mit PICA-Katalogen ausgerichtet war. Mittlerweile werden auch viele weitere verschiedene Katalogsysteme unterstützt. Diese bedingen jedoch oftmals eine sehr individuelle Konfiguration z.B. für die Kommunikation über das Protokoll Z39.50 oder unter Nutzung von SRU.
Zuletzt aktualisiert