Webservices und Datenformate
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
3,852
On Slideshare
3,850
From Embeds
2
Number of Embeds
1

Actions

Shares
Downloads
17
Comments
0
Likes
0

Embeds 2

http://www.slideshare.net 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Digitale Bibliothek Jakob Voss Webservices und Datenformate Digitale Bibliothek WS 2007/2008 Fachhochschule Hannover Informationsmanagement (BA) 26. November 2007
  • 2. Datenformate
    • Unterscheidung notwendig
      • Abstrakte Strukturierung (Datenmodell)
      • Konkrete Kodierung (Datenformat)
    • Definiert durch Standards
    • Datenformate basieren aufeinander
  • 3. Kodierungsformen
    • XML
    • SQL
    • RDF
    • JSON
    • ...
  • 4. Feldbasierte Formate
    • Einfach
      • Titel : Zettelwirtschaft
      • Autor : Krajewski, Markus
    • Pica+
      • 021A :
        • a : Zettelwirtschaft
      • 028A :
        • d : Markus
        • a : Krajeski
  • 5. Pica-Datenformat
    • Internes (bibliografisches) Datenformat der CBS und LBS-Software
    • Struktur aus Feldern und Unterfeldern
    • Pica3 zur Katalogisierung und Pica+ intern
    • Details geregelt durch Katalogisierungsrichtlinien
    • Ähnliche Grundstruktur (!) wie MAB/MARC
  • 6. Webservices
    • Konkretes Beispiel
      • Gegeben eine ISBN
      • Ist das Buch(?) an der FH ausleihbar?
      • Gibt es das Buch(?) in Hannover?
  • 7. Datenverarbeitung
    • Daten holen
      • Screen Scraper
      • Gegebene API
    • Daten weitergeben
      • Direkt in eigene Anwendung einbinden
      • Proprietäre API
      • Standardisierte API
  • 8. Verfügbarkeit ermitteln mittels Screen Scraper
    • Katalog der Bibliothek im Kurt-Schwitters-Forum
    • http://opc4.tib.uni-hannover.de:8080/DB=11/
    • Titeldaten Standort und Ausleihstatus
    • Raussuchen per Hand
  • 9. Verfügbarkeit ermitteln mittels Screen Scraper
    • use LWP::Simple;
    • my $opac = 'http://opc4.tib.uni-hannover.de:8080/DB=11';
    • my $ikt = 1016;
    • my $regexp = '>Ausleihstatus: </strong></td><td[^>]+>([^>]+)<BR>([^>]+)<';
    • my $isbn = shift @ARGV;
    • my @status;
    • if ($isbn) {
    • my $url = $opac . &quot;/CMD?ACT=SRCHA&IKT=&quot; . $ikt . &quot;&TRM=&quot; . $isbn;
    • my $html = get($url);
    • while ($html =~ m/$regexp/g) {
    • push @status, &quot;$isbn: $1, $2&quot;;
    • }
    • @status = (&quot;$isbn: nicht gefunden&quot;) unless @status;
    • print join(&quot; &quot;, @status) . &quot; &quot;;
    • } else {
    • print &quot;Usage: $0 ISBN &quot;;
    • }
  • 10. Verfügbarkeit ermitteln mittels Screen Scraper
    • $ ./isbn-at-schwitters.pl 3-931659-29-1
    • 3-931659-29-1: Ausleihbar, Bitte selbst am Standort Freihand dem Regal entnehmen
    • $ ./isbn-at-schwitters.pl 3-936931-16-X
    • 3-936931-16-X: Praesenzexemplar, -
    • 3-936931-16-X: Ausleihbar, z. Zt. ausgeliehen
    • 3-936931-16-X: Ausleihbar, z. Zt. ausgeliehen
    • $ ./isbn-at-schwitters.pl 978-0-8050-8043-8
    • 978-0-8050-8043-8: beim Buchhandel bestellt, -
    • $ ./isbn-at-schwitters.pl 978-3-446-41208-8
    • 978-3-446-41208-8: Praesenzexemplar, -
    • $ ./isbn-at-schwitters.pl 978-3-937514-42-0
    • 978-3-937514-42-0: nicht gefunden
  • 11. Vorhandensein über- prüfen mittels SRU-API
    • Gesamtkatalog Hannover
      • http://gso.gbv.de/DB=2.92/
    • SRU-Schnittstelle
      • http://gso.gbv.de/sru/DB=2.92/
    • Titel- und Exemplardaten im PICA-Format
  • 12. Vorhandensein über- prüfen mittels SRU-API
    • use PICA::Server;
    • my $isbn = shift @ARGV;
    • my @status;
    • if ($isbn) {
    • my $server = PICA::Server->new(
    • SRU => &quot;http://gso.gbv.de/sru/DB=2.92/&quot;
    • );
    • $server->cqlQuery( 'pica.isb=' . $isbn,
    • Record => sub {
    • $record = shift;
    • my @bib = $record->values('101@$d');
    • push @status, @bib;
    • }
    • );
    • @status = (&quot;$isbn: nicht gefunden&quot;) unless @status;
    • print join(&quot; &quot;, @status) . &quot; &quot;;
    • } else { print &quot;Usage: $0 ISBN &quot;; }
  • 13. Weitergabe über SeeAlso-API
    • Basiert auf unAPI und OpenSearch Suggestions
    • Query-Format:
      • wie unAPI mit format=seealso&id=...
    • Response-Format:
      • OpenSearch Suggestions (JSON)
      • [&quot;..id..&quot;,[..titles..],[..descriptions..],[..urls..]]
  • 14. (OpenSearch Suggestions) SeeAlso Linkserver ISBN JSON Links JavaScript
  • 15. (OpenSearch Suggestions) SeeAlso Wrapper Webservice ISBN JSON Verfügbarkeit JavaScript OPAC ISBN
  • 16. Bibliothekarische Datenformate
    • Bernhard Eversberg (1989, 1994, 1999) : Was sind und was sollen Bibliothekarische Datenformate? http://www.allegro-c.de/formate/
    • MARC, MAB, PICA, Allegro ...
      • Feldbasiert
      • Insellösungen (eigener Zeichensatz, eigene Werkzeuge, eigene Sonderwege...)
      • Definiert durch: Katalogisierungsrichtlinien
      • Nachteil: Ungenau (nicht formal) definiert, wenig Kontrolle, Werkzeuge, APIs...
  • 17. BibTeX
    • Hilfsmittel zur Formatierung von Literaturangaben im Satzprogramm LaTeX
    • Existiert seit 1985 (sic!)
    • Trennung von Layout (Bibliographystyle) und Inhalten (Datensätze in .bib-files)
  • 18. BibTeX
    • @BOOK{knuth2book,
    • author = &quot;Donald E. Knuth&quot;,
    • title = &quot;Seminumerical Algorithms&quot;,
    • volume = 2,
    • series = &quot;The Art of Computer Programming&quot;,
    • publisher = &quot;Addison-Wesley&quot;,
    • address = &quot;Reading, Massachusetts&quot;,
    • edition = &quot;Second&quot;,
    • year = &quot;1981&quot;,
    • note = &quot;This is a full BOOK entry&quot;,
    • }
  • 19. BibTeX
    • Publikationstypen
      • article, book, conference, inbook, misc...
    • Felder
      • author, title, journal, year, number, pages...
    • Vor- und Nachteile
      • robuster, etablierter und verbreiteter de-facto-Standard
      • Kein verbindliches Datenschema, kein Unicode etc.
  • 20. Einige weitere Formate
    • [Qualified] Dublin Core (DC)
    • Metadata Object Description Schema (MODS)
    • Metadata Encoding and Transmission Standard (METS)
    • Text Encoding Initiative (TEI)
    • Encoded Archival Description (EAD)
    • ONIX International (Online Information Exchange)
    • EXIF, IPTC (XMP)
    • u.v.a.m. !
    ONIX
  • 21. &quot;Semantische&quot; Datenformate
    • Datenfelder als global definierte &quot;Properties&quot; mit einem festen URI
      • Beispiel: http://xmlns.com/foaf/0.1/name
    • Ggf. zusätzliche Beschränkung auf bestimmte Datentypen
    • Ohne Validierung sind Datentypen witzlos!
  • 22. &quot;Semantische&quot; Datenformate
    • Datenformat => Ontologie
    • Semantic Web (&quot;Web 3.0&quot;) im Kommen
    • Übung: Bestehende Formate müssen durch Verwendung von RDF tauglich fürs Semantic-Web gemacht werden!
    • Bibliographic Ontology?