Ein Toolkit zur Präsentation von hierarchischen Bibliotheksdaten Andres von Arx UB Basel, August 2006
Das Problem: lange, unübersichtliche Listen im Webopac Indexlisten Kurztitellisten
Mögliche Lösungen: Relevance Ranking
Mögliche Lösungen: Relevance Ranking Gruppieren Zusammenfassen gleichartiger Einheiten FRBR
Mögliche Lösungen: Relevance Ranking Gruppieren Zusammenfassen gleichartiger Einheiten FRBR Hierarchisieren Anzeige in Baumstruktur
Anzeige der Hierarchie in HTML Baumstruktur: Anzeige eines Element im Kontext
Anzeige der Hierarchie in DHTML Baumstruktur: Anzeige nach Bedarf durch „Explode and Collapse“
Die hierarchische Anzeige empfiehlt sich überall, wo bibliographische Daten selbst eine hierarchische Struktur haben: BIB-BIB Verknüpfungen Band- und Reihenübersichten, Analytica Archivaufnahmen nach ISAD Handschriften / AMREM FRBR AUT-AUT Verknüpfungen Thesauri
Die hierarchische Anzeige kann derzeit nur ausserhalb des Bibliothekssystems Aleph realisiert werden. Aleph Webopac Externe Website
Realisierungen Guido Badalamenti, Università di Siena (dynamischer Zugriff mit CGI auf Aleph Oracle Tabelle z103)
Realisierungen Toolkit UB Basel für statische Webseiten funktioniert unabhängig vom Bibliothekssystem verwendet XML-Standardformate und OpenSource Tools (Perl, XSLT)
Komponenten Bibliothekssystem Website XML / HTML
Komponenten Website XML / HTML Bibliothekssystem Selektion, Extraktion MARC21 Slim XML
Komponenten Bibliothekssystem Website XML / HTML Selektion, Extraktion MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Komponenten Bibliothekssystem Website XML / HTML Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Komponenten Bibliothekssystem Website XML / HTML Session-Link Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Komponenten Bibliothekssystem Website XML / HTML Session-Link Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Selektion, Extraktion Aleph X-Services Perl: Download von XML Records mit CCL XSLT: Konversion in MARC 21 XML Aleph Sequential Aleph GUI: ret-03, print-03 Perl: Konversion in MARC 21 XML
MARC 21 Slim XML
Komponenten Bibliothekssystem Website XML / HTML Session-Link Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Sortieren, Hierarchisieren Ziel: Generierung einer XML-Datei, welche die natürliche Hierarchie abbildet XSLT: extrahiert die Felder, die für den Nachbau der Hierarchie nötig sind Perl: rekonstruiert die Verknüpfungen Zweck: Erleichterung der Formatierung
Sortieren, Hierarchisieren Das Verfahren ist abhängig von der Datenstruktur In UNIMARC / IDS-MARC enthält das Feld 490 die Systemnummer des Uplinks: Die Hierarchie kann über die 490 Felder rekonstruiert werden (Bottom-Up oder Top-Down) In USMARC AUT sind Verknüpfungen implizit: Oberbegriffe, Unterbegriffe, Verweisungen müssen aus dem Inhalt der Daten rekonstruiert werden
Hierarchie XML
Hierarchie XML
Komponenten Bibliothekssystem Website XML / HTML Session-Link Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Formatierung mit XSLT Ordnung aus Hierarchie XML beliebige Inhalte aus MARC XML Output Webseiten (oder Teile davon): XML, XHTML, HTML JavaScript Codelemente für DHTML ...
Komponenten Bibliothekssystem Website XML / HTML Session-Link Selektion, Extraktion Formatieren MARC21 Slim XML Hierarchie XML Sortieren, Hierarchisieren
Sessionlink Das Problem Jeder Aufruf von Aleph über eine URL öffnet eine neue Session Die Lösung Deep-Linking zu Aleph mit Wiederverwendung einer Session
Sessionlink 1. Ein Aufruf der lokalen Webseite ohne eine Session in der URL wird umgeleitet auf eine Seite auf dem Aleph Webserver. aleph='http://aleph.unibas.ch/F?func=file&' + 'file_name=api-session-rebus.html'; if ( window.location.search=='' ) window.location.replace(aleph);
Sessionlink 2. Der Aleph Webserver leitet zurück auf die Webseite und gibt eine Sessionsnummer mit. <html> <head> <meta http-equiv="refresh" content="0; URL=http://www.ub.unibas.ch/ibb/api/ rebus/index.html?&session"> </head> </html>
Sessionlink 3. Die lokale Webseite ergänzt die folgenden Aufrufe von Aleph durch die Session, die jetzt in der eigenen URL steckt. session=window.location.search.substring(1); function bib(recno) { myurl='http://aleph.unibas.ch/F/' + session + '?func=find-b' + '&find_code=SYS' + '&local_base=dsv05' + '&request=' + recno; alephwin=window.open(myurl,"DSV"); }
Link Beispielanwendungen, Dokumentation, Toolkit http://www.ub.unibas.ch/ibb/api/test