Ein Java Repository für digitalen Content in Bibliotheken 9. Sun Summit Bibliotheken 13.-14. November 2007, Deutsche Nationalbibliothek Christof Mainberger, BSZ Digitale Bibliotheken verwalten digitalen Content Retrodigitalisierung Bild-Archiv BLOG Hochschulschriftenserver Kataloganreicherung Web-Site Medienserver Lehr- Lernplattform Langzeitarchivierung Institutionelles Repositorium Elektronischer Semesterapparat Virtuelle Auskunft Multimedia Back-Files Elektronische Zeitschrift Wiki Museums-Dokumentation 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 2 … und benötigen dazu Werkzeuge! Recherche Erschließung OAI Import (Ingest) Datenmodell Z39.50 Open URL Präsentation Export Normdaten Zugriffskontrolle Statistik Workflow Backend 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) Administration / Konfiguration Daten und Metadaten 3 Varianten des Backends von Repositorien Http SQL RDBS und Dateisystem WebAnwendung FileIO SQL* Dateien ebenfalls im RDBS ??? Spezielle Datenhaltung Unterschiedliche Schnittstellen zwischen Frontend und Backends 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 4 Standard-Schnittstelle für Content Repositories Http WebAnwendung ??? SQL RDBS und Dateisystem FileIO SQL* Dateien ebenfalls im RDBS ??? Spezielle Datenhaltung EINE Schnittstelle, die die Varianten der Datenhaltung abstrahiert. 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 5 Anforderungen an eine Schnittstelle • • • • • • • • Beliebige Medienobjekte, beliebige Metadaten Verbindung von Medienobjekt und Metadaten Hierarchische Sammlungsstruktur Unterstützung von XML, … feingranulare Rechteverwaltung Versionierung Volltextsuche, … leistungsfähige Programmierschnittstelle (API) • Standardisierung, breite Unterstützung und erschwingliche Implementierungen 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 6 Der JAVA-Standard für Content-Repositories JCR • Resultat des JCP170-Prozesses, Juli 2005 • Apache, BEA, Day Software, Fujitsu, HP, IBM, Novell, Oracle, SAP, Sun Microsystems, u.v.a.m. • JCR definiert ein abstraktes hierarchisches Datenmodell mit XPath als Anfragesprache • XML-Protokoll für Im- und Export von Datenbeständen • Transaktionen, Versionierung, Observation, Locking und SQL • Open Source Implementierung: Apache Jackrabbit • wird fortgesetzt im JCP283: Zugriffskontrolle, Mehrfachhierarchien, … 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 7 SWBplus als JAVA Content Repository SWBplus verwaltet die Kataloganreicherungen des BSZ: Inhaltsverzeichnisse, Abstracts, Klappentexte, etc. derzeit ca. 155.000 Anreicherungen aus 12 Bibliotheken und 14 Verlagen SWB Dezentrales Scannen und zentrale OCR Keine „eigene Rechercheoberfläche“; Abruf der Anreicherungen als Original, Text oder PDF über URLs Export der Anreicherungen in lokale OPACs SWBplus Anfang 2007 wurde für SWBplus von ORACLE auf eine APACHE-Jackrabbit Installation migriert. 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 8 Architektur des SWBplus-Repository ApacheTomcat RMI-Client SWBplusServlets Jackrabbit-Servlet Jackrabbit 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 9 (Vereinfachtes) Datenmodell von SWBplus Enrichment PPN Autoren Titel ISBNs … <enrichment ident="258311665" type="rez"> <authors><author>Romain..</author></authors> <titles><title>Catalogue des...</title></titles> <publishers><publisher>… </publisher></publishers> <years><year>2006</year></years> <places><place>Diet…</place></places> <isbns> <isbn>3-85…</isbn></isbns> Versionierbar <expression type=„inh" label=„Inhaltsverzeichnis"> <manifestations> Inhaltsverzeichnis <lang>fre</lang> Sprache <ocr-quality>orig</ocr-quality> <manifestation type="orig"> OCR-Qualität <filename>/orig/bsz1234.pdf</filename> Original Name </manifestation> <manifestation type="ocr"> Größe <filename>/ocr/bsz1234.pdf</filename> PDF </manifestation> Text <manifestation type="txt"> <filename>result/txt/bsz1234.txt</filename> Rezensionen </manifestation> Rezension[1] </manifestations> </expression> </enrichment> Abstract, … Rezension[2], … 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 10 Abfrage von SWBplus Beispiel: http://swbplus.bsz-bw.de/bsz08762818xinh.pdf //enrichment[swbplus:ppn= ‘08762818x‘] /swbplus:inhaltsverzeichnis/swbplus/PDF oder SELECT ./swbplus:inhaltsverzeichnis/swbplus:PDF FROM swbplus:enrichment WHERE swbplus:ppn= ‘08762818x‘ oder getEnrichment(„08762818x“).getInh().getPdf() mit Hilfe einer Abbildung auf ein JAVA-Objektmodell 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 11 Freiheitsgrad in der Datenhaltung Http SWBplus APACHE Jackrabbit XMLExport / Import Filesystem Derby- DB Migration der Daten in eine (beliebige) SQL-Datenbank 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 12 Fazit: It works! Und nun: • Anwendung des JCR für ‚kleinere‘ Anwendungen • Warten auf JCP283 • Warten auf „industrielle“ Implementierungen: IBM, Oracle, …, SUN,… ? 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 13 Vielen Dank für Ihre Aufmerksamkeit! [email protected] Tel.: 0 75 31 / 88 – 4468 9. Sun Summit Bibliotheken, 14.11.07, Christof Mainberger (BSZ) 14