DAIA: deutsche Einführungenglische EinführungSpezifikationOntologyKonfiguration des zentralen DAIA-Servers (GBV-DAIA)Einbindung in eigene Webseitenhttp://daia.gbv.de

Die Document Availability Information API (DAIA) ist ein Datenmodell und eine Programmierschnittstelle (API) zur Abfrage von aktuellen Verfügbarkeitsinformationen von Dokumenten in Bibliotheken und ähnlichen Einrichtungen. Die DAIA wurde in Zusammenarbeit von der Verbundzentrale des GBV (VZG), der HeBIS-Verbundzentrale und dem Beluga-Projekt der Hamburger Bibliotheken entwickelt. Ziel ist es, eine einfache und einheitliche Methode zu schaffen, um bei beliebiges Bibliothekssystemen anzufragen, ob ein bestimmter Titel zur Zeit verfügbar, d.h. einsehbar oder ausleihbar, ist.

Diese Webseite enthält allgemeine Informationen zu DAIA auf Deutsch. Weitere Details stehen in Englisch auf der Seite Document Availability Information API (DAIA), auf der Seite der DAIA Formatbeschreibung sowie in den Publikationen zu DAIA.

Die Verbundzentrale des GBV betreibt unter http://daia.gbv.de/ betreibt einen DAIA-Server für die GBV-Bibliotheken sowie einen DAIA-Validator unter http://daia.gbv.de/validator. Details zur Konfiguration stehen unter Konfiguration der GBV-DAIA-Server‎.

Kurzübersicht

Herkömmliche Anzeige der Verfügbarkeit eines Exemplars im OPAC

DAIA ermöglicht es, in einem definierten Format abzufragen, ob ein bestimmtes Medium auf eine bestimmte Art in einer bestimmten Einrichtung derzeit verfügbar ist. Das konkrete Medium muss dabei bekannt sein und wird mit einem eindeutigen Identifikator (URI) referenziert. Für die Einrichtung, an die die Abfrage geschickt wird, gibt es eine Basis-URL - die „DAIA-Adresse“ der jeweiligen Einrichtung. Mit der Basis-URL und einer Medien-URI lässt sich über HTTP eine einfache DAIA-Abfrage zusammenstellen:

 

http://example.com/pfad-zur-api?id=Medien-URI&format=xml

Der DAIA-Server der Einrichtung (in diesem Beispiel http://example.com/pfad-zur-api) liefert darauf eine Antwort im DAIA Format zurück (hier konkret DAIA/XML). In der Regel wird die DAIA-Anfrage nicht direkt von einem Benutzer gestellt sondern von einem anderem Computerprogramm: dem DAIA-Client. Wie und wozu die Antwort weiterverarbeitet wird, hängt vom jeweiligen Client ab (Anzeige im Katalog, Benachrichtigung etc.). Alle Clients müssen jedoch die Spezifikation des DAIA-Format verstehen.

Der Begriff „Verfügbarkeit“ ist in DAIA so definiert, dass ein Exemplar (item) eines Mediums (document) jeweils unabhängig voneinander für verschiedene Dienstleistungen (service) momentan entweder verfügbar (available) oder nicht verfügbar (unavailable) sein kann. Die Services sind:

Herkömmliche Anzeige der Verfügbarkeit eines Exemplars im OPAC

 

Eine grundsätzliche Unterscheidung zwischen physischen und elektronischen Medien findet nicht statt. Neben den Informationen zum Status der Verfügbarkeit (available/unavailable) in den verschiedenen Services kann als Detail zusätzlich angeben werden, welchen Standort und welche Signatur ein Exemplar hat, wann es vorraussichtlich wieder verfügbar sein wird oder wie lange die Bereitstellung in etwa dauert.

Kodierung der Verfügbarkeit in DAIA/JSON und DAIA/XML

Der URI-Parameter format=xml einer DAIA-Abfrage legt fest, dass die DAIA-Antwort im XML-Format DAIA/XML zurückgeliefert wird, welches durch ein XML Schema definiert ist. Alternativ können DAIA-Daten durch format=json in der JavaScript Object Notation (JSON) zurückgeliefert werden (DAIA/JSON):

http://example.com/pfad-zur-api?id=Medien-URI&format=xmlhttp://example.com/pfad-zur-api?id=Medien-URI&format=json

Beide Formate enthalten die selben Informationen und sind in der Spezifikation des DAIA-Format enthalten; im DAIA Datenmodell ist die gemeinsame grundlegende Struktur von Verfügbarkeitsinformationen in DAIA auf einer A4-Seite zusammengefasst. Die Kodierung in weiteren Formaten (u.A. RDF) ist angedacht.

Anwendungen

DAIA-Clients

Ein DAIA-Client ist eine Anwendung, die Verfügbarkeitsinformationen über DAIA abruft und weiterverarbeitet. Zur einfachen Einbindung von Verfügbarkeitsinformationen in eigene Anwendungen werden verschiedene Beispiel-Clients und Programmbibliotheken bereitgestellt. Angedacht sind konkrete Hinweise zur Einbindung in PICA-LBS, Touchpoint und andere Bibliothekssysteme und in Content-Management-Systeme, beispielsweise über JSP Tags, Smarty-Templates etc. Ein JavaScript-Client der einen DAIA-Server als SeeAlso-Schnittstelle verfügbar macht, ist testweise bereits verfügbar (daia2seealso.js).

Die Icons für Präsenz, Ausleihe, Open Access und Fernleihe sind als 16x16 PNG, 32x32 PNG und SVG hier als ZIP-Datei zusammengefasst:

470x150

Weitere Ideen:

DAIA-Server

Ein DAIA-Server ist ein Webservice, der für eine oder mehrere Einrichtungen nach der aktuellen Verfügbarkeit von Medien im DAIA-Format abgefragt werden kann. Konkrete DAIA-Server sind derzeit beim HEBIS, bei der VZG und an der TUB Hamburg-Harburg im Einsatz.

Zur Entwicklung eigener DAIA-Server für unterschiedliche Einrichtungen werden in verschiedenen Programmiersprachen Programmbibliotheken bereitgestellt (siehe unten), so dass nur noch die Abbildung des Internformats mit seinen bibliotheksspezifischen Besonderheiten auf das DAIA-Format programmiert werden muss. DAIA-Server können auch für verschiedene Bibliotheken zentral angeboten werden, sofern geklärt ist, wie die Verfügbarkeitsinformationen in den unterschiedlichen Einrichten gespeichert sind.

Programmierung

Zur Programmierung von eigenen DAIA-Clients und Servern gibt es mehrere Programmbibliotheken mit Beispielen, die als Open Source unter https://sourceforge.net/projects/daia/ bereitgehalten und weietrentwickelt werden. Das Code-Repository kann hier eingesehen werden. Weitere Entwickler, Bug-Reports etc. sind immer gerne gesehen. Derzeit gibt es Umsetzungen in den folgenden Programmiersprachen:

PHP

phpDaia ist eine PHP-Bibliothek zur Erstellung von DAIA/XML. Ein Connector zu PICA steht zur Verfügung. phpDaia wurde an der TU Hamburg-Harburg entwickelt, ist noch sehr experimentell und steht unter der GPL.

Perl

Unter http://search.cpan.org/dist/DAIA/ ist auf CPAN ein Perl-Modul zur Verabeitung von DAIA-Datein (DAIA/JSON und DAIA/XML) verfügbar. Dazu gehört unter anderem auch ein Kommandozeilenclient zur Verarbeitung von DAIA-Daten und ein Validator.

XSLT

Der XSLT-Client (https://github.com/gbv/daia/blob/master/xslt/daia.xsl) erzeugt aus DAIA/XML eine tabellarische HTML-Ansicht. Der Client wird derzeit von allen DAIA-Servern zur Anzeige verwendet, er könnte aber eine Überarbeitung gebrauchen. Da praktisch alle Informationen angezeigt werden, ist der Client eher für Test- und Entwicklungszwecke statt für Endnutzer sinnvoll.

JavaScript

Das Skript daia2seealso.js wertet einige DAIA-Informationen zur Anzeige aus (Testversion).

Häufige Fragen (FAQ)

Frequently Asked Questions

How can I encode that a certain fee must be paid to get a given publication?If a publication is not freely available only you must not encode it being available in service 'openacess'. The other services make no assumption on fees. Either the fee is normal in the context of your institution so it does not have to be encoded in a special way, or it is an exception so you should put it in afield.

How can I add barcodes or other non-URI identifiersEither you must make these identifiers primary URIs or you add them as simple identifiers. Simple identifiers are only possible in DAIA/XML and DAIA/RDF:

<uri:document:12345> a bibo:Document ;
    dct:identifier "non-uri:abc"  
    daia:exemplar [ 
      a frbr:Item ;
      dct:identifier "non-uri:xyz"
    ] .

Publikationen zu DAIA

Vortrag auf dem Bibliothekstag 2009

Verfügbarkeitsrecherche mit DAIA

Verlässliche Informationen über die aktuelle Verfügbarkeit eines Mediums sind für die Nutzung einer Bibliothek unabdingbar. Für Nutzer ist unter Anderem von praktischer Bedeutung, ob in einer Einrichtung ein Medium direkt ausleihbar ist oder als Präsenzexemplar eingesehen werden kann, wie lange die Bereitstellung dauert und wann ein ausgeliehenes Medium wieder verfügbar ist. Leider gibt es bislang kein einfaches Verfahren zur Kodierung und Abfrage dieser Informationen. Vorhandene Standards wie SIP2, NCIP und ISO ILL beschränken sich auf die Nutzung innerhalb oder zwischen Bibliothekssystemen. Zudem werden sie aufgrund vorhandener Interpretationsspielräume unterschiedlich ausgelegt und es mangelt an freien Werkzeugen, die mit diesen Standards umgehen können. Auch neue Entwicklungen wie ISO 20775 und die Bestrebungen der ILS Discovery Interface Task Force bleiben so komplex, dass sie sich nicht für schlanke Anwendungen eignen.

In einer Zusammenarbeit von Mitarbeitern der Verbundzentrale des GBV (VZG), der HeBIS-Verbundzentrale und der Staats- und Universitätsbibliothek Hamburg wurde deshalb eine einfache Schnittstelle zur Abfrage von Verfügbarkeitsinformationen entwickelt, die in diesem Vortrag vorgestellt werden soll: Die "Document Availability Information API" (DAIA) dient nicht zur Recherche nach Medien oder zur Abfrage statischer Katalogdaten, sondern zur Abfrage von Informationen darüber, wie und wo ein konkretes Medium an einer gegebenen Einrichtung genutzt werden kann. Informationen über die aktuelle Verfügbarkeit können über die Schnittstelle mit Mashups und Widgets in beliebige andere Webanwendungen (Web 2.0) und nicht zuletzt in bestehende OPACs integriert werden. Alle Komponenten stehen als Open Source zur Verfügung und sind gut dokumentiert. Für verschiedene Verbundbibliotheken von GBV und HeBIS und öffentliche Bibliotheken ist DAIA schon implementiert und kann - wie im Vortrag vorgestellt wird - in eigenen Anwendungen verwendet werden.

Die Vortragsfolien sind unter http://www.opus-bayern.de/bib-info/volltexte/2009/682/ archiviert.

Artikel im HeBIScocktail zum Bibliothekstag 2009

In der Sonderausgabe HeBIScocktail Bibliothekartag 2009 wird auf Seite 5-6 unter dem Titel DAIA - Ein neuer Baustein für Bibliotheken im Web 2.0 kurz dargestellt, was die Motivation hinter DAIA ist und welche Vorteile es bringt.

Kurzvortrag auf der ELAG 2009

Auf der ELAG 2009 wurde DAIA am 23.4.2009 im Rahmen eines Lightning Talks unter dem Titel Defining Availability with the Document Availability Information API (DAIA) vorgestellt. Die Vortragsfolien gibt es bei bei Slideshare und auf der Webseite der VZG (PDF).

 


@Nolispanmo: Diese Seite wurde von Jakob Voss und Uwe Reh erstellt und darf von hebiswriter' komplett oder in Auszügen für Artikel in Wikipedia kopiert werden. Bitte kopiere den gelöschten Artikel in die Baustelle.

Navigationsmenü