MWB-API+

Ziele
Zusammenfassung der Ergebnisse
Ergebnisse im Detail
Übersicht TextPlus-FCS für das MWB
Technische Umsetzung

Patrick D. Brookshire, Ute Recker-Hamm: Text+Plus, #03: Verlinkungen und standardisierte Suchen: MWB-APIplus, in: Text+ Blog, 15.12.2023, https://textplus.hypotheses.org/8245.

Ziele

MWB-APIplus ist ein Text+-Kooperationsprojekt, das die Schaffung von Schnittstellen (APIs) für das Mittelhochdeutsche Wörterbuch (MWB) und sein Quellenkorpus nach Text+-Standard zum Gegenstand hat. Durch diese Schnittstellen wird es ermöglicht, MWB-Daten unabhängig von der HTML-Ausgabe im Browser nach Text+-Standards abzufragen und so in andere digitale Kontexte einzubinden. Dies können z.B. sprachhistorische oder lexikographische Portale, digitale Texteditionen und natürlich das Textplus-Portal selbst sein. Das Projekt ist im Arbeitsbereich "Lexikalische Ressourcen" angesiedelt und wird im Jahr 2023 mit einer 50%-Stelle vom Text+-Konsortium gefördert.

Der Projektplan sieht 4 Arbeitspakete vor:

Arbeitspaket 1: Metadaten-Service für das MWB-Textcorpus

  • Implementation der API gemäß OAI-PMH-Protokoll
  • Implementation der MarcXML-Serialisierung
  • Einbindung von Konvertern für die Zielformate MODS und DublinCore
  • Registrierung in der Text+-Registry

Arbeitspaket 2: Metadaten-Service für die MWB-Wortartikel

  • Implementation der Schnittstelle gemäß OAI-PMH-Protokoll wie Arbeitspaket 1
  • Registrierung in der Text+-Registry

Arbeitspaket 3: MWB-APIplus für das MWB-Textcorpus

  • Implementation der Schnittstelle nach Clarin-FCS-Spezifikation

Arbeitspaket 4: MWB-APIplus für die MWB-Wortartikel
Arbeitsschritte wie in Arbeitspaket 3; MWB-APIplus bezieht sich auf folgende Felder: Lemma, grammatische Angabe des Lemmas und lexikographische
Gliederungskommentare.

Zusammenfassung der Ergebnisse

Alle in den 4 Arbeitspaketen vorgesehenen APIs wurden entwickelt. Damit sind die Daten des MWB in das Textplus-Portfolio integriert und stehen für die technische Integration auch in andere Zusammenhänge zur Verfügung. Die Federated Content Search-APIs, die das Volltextarchiv und die Wortartikel betreffen, wurden beim TextPlus-Aggregator registriert, sodass das MWB dort gemeinsam mit den mittelhochdeutschen Vorgängerwörterbüchern des Wörterbuchnetzes (TCDH) und mit dem Referenzcorpus Mittelhochdeutsch (BBAW) abgefragt werden kann, die dort ebenfalls vertreten sind.

Außerdem wurde ein generischer CQL-Parser als XQuery-Modul entwickelt, der alle Features von CQL in XCQL überführen kann und damit eine leichtere Handhabung von CQL-Anfragen ermöglicht. Der Parser steht der Community auf Github zur Verfügung:  <https://github.com/digicademy/cql-parser-xqm>

Ergebnisse im Detail

Arbeitspaket 1: Metadaten-Service für das MWB-Textcorpus

API-Endpunkt: <https://mwb.adwmainz.net/exist/apps/mwb/api/bibliography/oai2?verb=Identify>

Folgende Werte beim Parameter "verb" sind möglich:

IdentifyAllgemeine Informationen zum Repository
ListMetadataFormatsListe verfügbarer Metadatenschemata
ListRecordsListe aller Datensätze
ListIdentifiersListe der IDs aller Datensätze
GetRecordeinzelner Datensatz

Beispielhafte Abfragen:

https://mwb.adwmainz.net/exist/apps/mwb/api/bibliography/oai2?verb=ListMetadataFormatsListe der verfügbaren Metadaten-Formate, nämlich DublinCore (oai_dc), MODS und MARC21
https://mwb.adwmainz.net/exist/apps/mwb/api/bibliography/oai2?verb=ListRecords&metadataPrefix=oai_dcListe aller Primärtexte des MWB im DublinCore-Format
https://mwb.adwmainz.net/exist/apps/mwb/api/bibliography/oai2?verb=GetRecord&metadataPrefix=mods&identifier=mwb:qvz:q_91fb6e4f-82dd-477f-9b5b-fe1cdf135d82Eintrag zu Albert von Augsburg, Leben des heiligen Ulrich (mit der ID "mwb:qvz:q_91fb6e4f-82dd-477f-9b5b-fe1cdf135d82") im MODS-Format

Hinweise

Das Quellenverzeichnis des MWB enthält die Titelaufnahmen als Fließtexte, die mit zusätzlichen Metadaten angereichert sind, z.B. zur Textdatierung, zur Textsorte usw. Zu diesen Zusatzfeldern gehört auch die Pica Produktionsnummer (PPN), die einen Abgleich mit Bibliothekskatalogen ermöglicht. Separate Felder für Autor, Herausgeber, Reihe u.ä. gibt es im Quellenverzeichnis des MWB hingegen nicht. Im Rahmen von MWB-APIplus wird die PPN dazu genutzt, diese Felder mit den entsprechenden Daten aus dem Gemeinsamen Verbundkatalog (GVK) zu füllen. Dies betrifft die Felder für Autor, Herausgeber, weitere beteiligte Personen, Erscheinungsort und Erscheinungsjahr. Die vollständige Titelaufnahme des MWB wird zusätzlich angegeben. Im Falle von MWB-Siglen aus Sammelwerken, z.B. aus Haupts Gesamtabenteuer, liefert der GVK als weitere beteiligte Personen auch die übrigen Texte der Sammlung, was eine unvermeidbare Unschönheit des gewählten Verfahrens der Datenübernahme aus dem GVK darstellt.

Der Verweis auf das digitale Textobjekt zielt auf die HTML-Fassung in MWB Online. Weitere Hinweise zur technischen Umsetzung siehe unten.

Arbeitspaket 2: Metadaten-Service für die MWB-Wortartikel

API-Endpunkt: <https://mwb.adwmainz.net/exist/apps/mwb/api/articles/oai2?verb=Identify>

Folgende Werte beim Parameter "verb" sind möglich (wie Arbeitspaket 1):

IdentifyAllgemeine Informationen zum Repository
ListMetadataFormatsListe verfügbarer Metadatenschemata
ListRecordsListe aller Datensätze
ListIdentifiersListe der IDs aller Datensätze
GetRecordeinzelner Datensatz

Beispielhafte Abfragen:

https://mwb.adwmainz.net/exist/apps/mwb/api/articles/oai2?verb=ListMetadataFormatsListe der verfügbaren Metadaten-Formate, nämlich DublinCore (oai_dc), MODS und MARC21
https://mwb.adwmainz.net/exist/apps/mwb/api/articles/oai2?verb=ListRecords&metadataPrefix=oai_dcListe aller bereits publizierten Artikel des MWB im DublinCore-Format in einer Teilmenge von 100 Elementen. Das ResumptionToken ermöglicht die Abfrage der nächsten Portion (s.u.)
https://mwb.adwmainz.net/exist/apps/mwb/api/articles/oai2?verb=GetRecord&metadataPrefix=mods&identifier=mwb:art:2070000Eintrag zu einem Artikel (mit der ID "mwb:art:2070000" = abegründecheit) im MODS-Format

Hinweise

Der Metadaten-Service für MWB-Artikel arbeitet analog zum Metadaten-Service für das Quellencorpus. Jeder bereits publizierte MWB-Artikel entspricht einem Datensatz, für den Lemma und grammatische Angabe als Titel, der Artikelautor sowie die Referenz auf die gedruckte und digitale Publikation ausgegeben werden. Die Ausgabe erfolgt in Portionen zu 100 Artikeln. Wie im OAI-PMH-Standard vorgesehen, erlaubt das mitgelieferte ResumptionToken die jeweils nächste Portion abzurufen; das Attribut completeListSize gibt die Gesamtzahl der zu Verfügung stehenden Datensätze an.

Weitere Hinweise zur technischen Umsetzung siehe unten.

Arbeitspaket 3: MWB-API für das MWB-Textcorpus

MWB-APIplus folgt der Clarin-FCS- und der Text+ LexFCS-Spezifikation für die Lexikalische Suche. MWB-APIplus realisiert für das Textarchiv des MWB die Textplus "Basic Search" und die "Advanced Search" (s. die Übersicht unten). Letztere erlaubt einen Zugriff auf die Annotationsebene der Texte. Der Endpunkt ist im TextPlus-Aggregator registriert und kann über ihn abgefragt werden.

API-Endpunkt nach Text+-FCS: <https://mwb.adwmainz.net/exist/apps/mwb/api/texts/fcs>

Beispielhafte Abfragen:

https://mwb.adwmainz.net/exist/apps/mwb/api/texts/fcs?query=hantSuche nach der Wortform (Token) hant im Textarchiv
https://mwb.adwmainz.net/exist/apps/mwb/api/texts/fcs?query=h?ntWildcardsuche nach Wortformen, Treffer z.B. hant, hânt, hunt usw.
Mögliche Wildcards sind ? oder *
https://mwb.adwmainz.net/exist/apps/mwb/api/texts/fcs?queryType=fcs&query=[text="hende"]Advanced Search nach der Wortform hende im Textarchiv; das Ergebnis enthält zusätzlich die Annotationslayer der Treffer (Lemma und POS)
https://mwb.adwmainz.net/exist/apps/mwb/api/texts/fcs?queryType=fcs&query=[lemma="hant"]Advanced Search nach Lemma hant im Textarchiv

Hinweis: Wegen technischer Umstellung des MWB-Textarchivs ist zur Zeit (Stand November 2023) noch nicht das ganze Textarchiv des MWB über die Schnittstelle abfragbar.

Arbeitspaket 4: MWB-API für MWB-Wortartikel

MWB-APIplus für die Wortartikel folgt ebenfalls der Clarin-FCS- und der LexFCS-Spezifikation für die Lexikalische Suche. MWB-APIplus realisiert für das Textarchiv des MWB die Textplus "Basic Search" und die "Lexical Search" (s. die Übersicht unten); außerdem ist der Endpunkt im TextPlus-Aggregator registriert und kann über ihn abgefragt werden.

API-Endpunkt nach TextPlus-FCS:  <https://mwb.adwmainz.net/exist/apps/mwb/api/articles/fcs>

Beispielhafte Abfragen:

https://mwb.adwmainz.net/exist/apps/mwb/api/articles/fcs?query=hantBasic Search nach dem token hant im MWB; Basissuche wie oben für das Textarchiv
https://mwb.adwmainz.net/exist/apps/mwb/api/articles/fcs?queryType=lex&query=lemma=âbent*Lexical Search nach allen Lemmata, die mit âbent beginnen
https://mwb.adwmainz.net/exist/apps/mwb/api/articles/fcs?queryType=lex&query=def=grünLexical Search nach dem Wort grün in allen lexikographischen Gliederungskommentaren
https://mwb.adwmainz.net/exist/apps/mwb/api/articles/fcs?queryType=lex&query=pos=INTJLexical Search nach allen Artikel zu Interjektionen. Liste der Wortarten gemäß Universal POS, im MWB: ADJ, ADP, ADV, DET, INTJ, NOUN, NUM, PRON, VERB. Das MWB unterscheidet nicht zwischen CCONJ und SCONJ.

Übersicht TextPlus-FCS für das MWB

Suchtypen

In Text+-FCS obligtorische Suchtypen und -felder sind in fett dargestellt; optionale, die in MWB-APIplus nicht realisiert wurden, sind durchgestrichen.

Technische Umsetzung

Die Daten des MWB liegen als XML-Daten (in der Regel TEI-P5) in der nativen XML-Datenbank eXist-db vor. MWB-APIplus wird durch XQuery-Skripte realisiert, die direkt auf den Grunddaten arbeiten. Lediglich die MARC21-Serialisierung wird durch Anwendung des einschlägigen XSLT-Stylesheets der Library of Congess (https://www.loc.gov/standards/marcxml/xslt/MODS2MARC21slim.xsl ) aus der MODS-Serialisierung erzeugt.

Für die menschenlesbare Ausgabe der beiden Metadaten-Services im Browser wird das für OAI-DC konzipierte Stylesheet oai2.xslt von ePrints Soton (University of Southhampton) genutzt. Da es bei MODS und MARC21 keine Validierung durchführt, setzt es bei den Formaten die die Überschrift "Unknown Metadata Format" ein, obwohl sie korrekt serialisiert werden und die sonstige Darstellung korrekt ist.

OAI-PMH Übersicht
SRU Übersicht

(Stand: 07.11.2023)