Technische Universität Darmstadt

Werbung
Fachbereich Elektrotechnik und Informationstechnik
Institut für Datentechnik
Fachgebiet Industrielle Prozeß- und Systemkommunikation
Prof. Dr.-Ing. Ralf Steinmetz
Technische Universität Darmstadt
Studienarbeit
Implementierung einer XML-basierten Suchmaschine
für das Multibook-Projekt
der Technischen Universität Darmstadt
von
Jochen Geise
März 2001
Betreuer: Dipl.-Wirtsch.-Inf. Achim Steinacker
Nr. KOM-S-0107
Ehrenwörtliche Erklärung
Ehrenwörtliche Erklärung
Hiermit versichere ich, die vorliegende Studienarbeit ohne Hilfe Dritter und nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die aus den Quellen entnommen wurden, sind als solche kenntlich gemacht worden. Diese Arbeit hat in gleicher oder
ähnlicher Form noch keiner Prüfungsbehörde vorgelegen.
Darmstadt, den 14. März 2001
Jochen Geise
- iii -
Inhaltsverzeichnis
Inhaltsverzeichnis
Ehrenwörtliche Erklärung............................................................................... iii
Inhaltsverzeichnis ............................................................................................... v
Abbildungsverzeichnis .................................................................................... vii
Tabellenverzeichnis ...........................................................................................ix
Abkürzungsverzeichnis .....................................................................................xi
1 Einleitung .........................................................................................................1
1.1 Motivation ................................................................................................1
1.2 Ziele und Struktur der vorliegenden Arbeit .............................................2
2 Universitäten Online .......................................................................................5
2.1 Überblick über die derzeitige Situation....................................................5
2.2 Zukünftige Szenarien ............................................................................... 7
3 Bestehende Applikationen im Bildungsbereich ..........................................11
3.1 Der Deutsche Bildungsserver .................................................................11
3.1.1 Überblick........................................................................................................ 11
3.1.2 Metadatenkonzept .......................................................................................... 13
3.2 Technische Implementierung des DBS ..................................................15
3.2.1 Dublin Core Metadaten-Standard .................................................................. 15
3.2.2 Relationale Datenbankmanagementsysteme mit mySQL.............................. 16
3.2.3 Architektur der DBS-Applikation.................................................................. 18
3.2.4 Bewertungen .................................................................................................. 21
4 Entwurf einer Applikation für das Multibook ...........................................23
4.1 Das Multibook-Projekt ...........................................................................23
4.1.1 Überblick........................................................................................................ 23
4.1.2 Wissensbasis .................................................................................................. 23
4.1.3 Lernobjekte .................................................................................................... 24
4.2 Auswahl der zu verwendenden Technologien ........................................25
4.2.1 Learning Object Metadata.............................................................................. 25
4.2.2 Extensible Markup Language ........................................................................ 29
-v-
Inhaltsverzeichnis
4.2.3 XML-Datenbanken......................................................................................... 33
4.2.4 Java und Java-Servlets.................................................................................... 33
4.2.5 Implementierungsentwurf............................................................................... 34
5 Dokumentation der XML-Technologie .......................................................37
5.1 Überblick über XML und verwandte Technologien ..............................37
5.2 Extensible Markup Language .................................................................39
5.3 Document Type Definition.....................................................................42
5.4 Document Object Model ........................................................................43
5.5 XML Path Language ..............................................................................43
5.6 Extensible Stylesheet Language .............................................................48
5.7 XML Query Language ...........................................................................52
6 Dokumentation der Implementierung .........................................................53
6.1 Die Tamino-Datenbank ..........................................................................53
6.1.1 Grundlegende Architektur .............................................................................. 53
6.1.2 Systemvoraussetzungen und Installation........................................................ 55
6.1.3 Tamino Manager ............................................................................................ 55
6.1.4 Tamino Schema Editor ................................................................................... 56
6.1.5 Tamino Interactive Interface .......................................................................... 58
6.2 Benutzerschnittstelle...............................................................................61
6.2.1 Datenbankabfrage mit HTTP-Requests.......................................................... 61
6.2.2 Dynamische Webseiten mit Apache Cocoon .................................................63
6.2.3 Vollständige Architektur der zu entwickelnden Applikation.........................64
7 Evaluierung ....................................................................................................67
7.1 Funktionalität..........................................................................................67
7.2 Verbesserungsmöglichkeiten ..................................................................67
8 Resümee ..........................................................................................................69
Literaturverzeichnis .........................................................................................71
Anhang A ...........................................................................................................73
- vi -
Abbildungsverzeichnis
Abbildungsverzeichnis
Abbildung 1
Modularer Aufbau eines Bildungsangebotes .................................................. 9
Abbildung 2
Volltext-Server .............................................................................................. 11
Abbildung 3
Kommunikations-Server ............................................................................... 12
Abbildung 4
Meta-Server................................................................................................... 12
Abbildung 5
Elemente einer Datenbanktabelle.................................................................. 17
Abbildung 6
Einstiegsseite des DBS [DBS2001] .............................................................. 19
Abbildung 7
Eintragen einer Ressource in die Datenbank des DBS ................................. 20
Abbildung 8
Suchen einer Ressource und Übermittlung der Suchergebnisse zum Client 20
Abbildung 9
Modularer Aufbau des Multibooks [MUL2001] .......................................... 24
Abbildung 10 Baumstruktur des LOM-Standards ............................................................... 26
Abbildung 11 Unterelemente des RECORD-Elementes...................................................... 27
Abbildung 12 Leaves-Symbol.............................................................................................. 28
Abbildung 13 Unterelemente des GENERAL-Elementes ................................................... 28
Abbildung 14 XML in Kombination mit XSL als portables Format ................................... 32
Abbildung 15 Implementierungsentwurf einer Suchmaschine für das Multibook .............. 34
Abbildung 16 XML und verwandte Technologien [HOM1999] ......................................... 37
Abbildung 17 Bestandteile eines XML-Elementes .............................................................. 40
Abbildung 18 Beispiel einer XML-Dokumentenstruktur .................................................... 42
Abbildung 19 Leserichtung des verarbeitenden Prozessors [BAC2000] ............................. 45
Abbildung 20 Transformation und Formatierung mit XSL ................................................. 48
Abbildung 21 Arbeitsweise von XSLT in Verbindung mit XPath [BAC2000] .................. 49
Abbildung 22 Grundlegende Architektur der Tamino-Datenbank [SAG2001] ................... 53
Abbildung 23 Komponenten der X-Machine [SAG2001] ................................................... 54
Abbildung 24 Tamino Manager ........................................................................................... 56
Abbildung 25 Collection, Doctype und Node-Elemente des LOM-Schemas...................... 57
Abbildung 26 LOM DTD im Tamino Schema Editor ......................................................... 58
Abbildung 27 Tamino Interactive Interface ......................................................................... 59
Abbildung 28 HTTP-Request an Tamino mit XQL-Suchanfrage ....................................... 60
Abbildung 29 Suchformular für die LOM-Datenbank......................................................... 62
Abbildung 30 Vereinfachtes Verarbeitungsmodell von Apache Cocoon [MM2000] ......... 63
Abbildung 31 Implementierung der Suchmaschine für das Multibook ............................... 64
Abbildung 32 Dynamische Webseite von Cocoon mit Übersicht der Suchergebnisse ....... 65
Abbildung 33 Dynamische Webseite von Cocoon mit Details der Suchergebnisse............ 65
- vii -
Abbildungsverzeichnis
Abbildung 34 Adaptivität mit XML und XSL ?................................................................... 68
- viii -
Tabellenverzeichnis
Tabellenverzeichnis
Tabelle 1
Übersicht der grundlegenden Axis Names von XPath [BAC2000] .............. 45
Tabelle 2
Übersicht der XSL-Elemente ........................................................................ 50
Tabelle 3
Tabellarische Auflistung der XPath Axis Names [BAC2000] ..................... 73
- ix -
Tabellenverzeichnis
-x-
Abkürzungsverzeichnis
Abkürzungsverzeichnis
BSCW
CDATA
CERN
CGI
CSS
DB
DBMS
DBS
DFN
DIPF
DOM
DTD
EBU
EU
FOP
GUI
HTML
HTTP
IEEE
ISO
LOM
PCDATA
PDF
PHP
RDBMS
RDF
SGML
SQL
URL
WWW
W3C
XLink
XLL
XML
XPath
XPointer
XPL
XQL
XSL
XSLT
XSL-FO
Basic Support for Cooperative Work
Character Data
Counseil European pour la Recherche Nucléaire
Common Gateway Interface
Cascading Stylesheets
Datenbank
Datenbank Management System
Deutscher Bildungsserver
Deutsches Forschungsnetz
Deutsches Institut für Internationale Pädagogische Forschung
Document Object Model
Document Type Definition
European Broadcasting Union
Europäische Union
Formatting Objects to PDF
Graphic User Interface
Hypertext Markup Language
Hypertext Transfer Protocol
Institute of Electrical and Electronic Engineers
International Standards Organization
Learning Object Metadata
Parsed Character Data
Portable Document Format
Hypertext Preprocessor
Relationales Datenbank Management System
Ressource Description Framework
Standard Generalized Markup Language
Structured Query Language
Uniform Ressource Locator
World Wide Web
World Wide Web Consortium
XML Linking Language
XML Linking Language
Extensible Markup Language
XML Path Language
XML Pointer Language
XML Pointer Language
XML Query Language
Extensible Stylesheet Language
XSL Transformations
XSL Formatting Objects
- xi -
Abkürzungsverzeichnis
- xii -
Einleitung
1
Einleitung
1.1
Motivation
In den letzten Jahren hat eine explosionsartige Entwicklung im Bereich der Informationssysteme eingesetzt. Das World Wide Web, das Anfang der 90er Jahre entwickelt wurde, stellt ein
Medium zur Verfügung, das u.a. die Integration multimedialer Elemente unterstützt und
Hypertextfähigkeit besitzt. Neue Technologien versetzen Universitäten in die Lage, in virtuellen Hörsälen und digitalen Bibliotheken Informationen mit hohem Aktualitätsgrad zur Verfügung zu stellen. Computerbasierte Simulationen ermöglichen es, die Arbeit in der
wissenschaftlichen Forschung zu vereinfachen und zu verbessern.
Diese neuen Möglichkeiten stellen nicht nur eine Bereicherung bzw. Erweiterung des bestehenden Bildungsangebotes dar. Universitäten müssen sich in zunehmendem Maße der Aufgabe stellen, bestehende Lehr- und Lernkonzepte zu überdenken und neu zu definieren, um mit
Hilfe neuer Informationstechnologien besser auf die Bedürfnisse der heutigen Zeit eingehen zu
können.
„Ich habe eine Vision, von Schulbüchern, die immer hochaktuell sind; von Bildungs- und Kulturnetzen, die alle Menschen erreichen; von aufregenden neuen Ausdrucksformen für Informationen und von gar synaptischen Verknüpfungen zwischen Informationen.
Dabei sind meine Visionen so neu nicht. Schon seit Jahrhunderten beschäftigen sich Menschen
damit, Wissen zu bewahren, Querverbindungen im Denken herzustellen und das Wissen zu
vermitteln. Und heute haben wir mit dem Internet zumindest in einem Teil der Welt die Möglichkeit, Informationen und Wissen vielen zugänglich zu machen und verschiedene Informationsquellen hochgradig zu verknüpfen.“ [BAC2000]
Der Deutsche Bildungsserver (DBS) der Humboldt-Universität Berlin und das Multibook-Projekt der Technischen Universität Darmstadt sind erste Versuche, diese Visionen zu realisieren.
Diese Projekte zählen zu den sogenannten spezialisierten Diensten des Internets und versuchen, wichtige strukturierende und vermittelnde Funktionen für den Bildungsbereich zu übernehmen.
Der DBS versucht Materialien zu den unterschiedlichsten Wissensgebieten auf nationaler
Ebene zur Verfügung zu stellen, das Multibook hingegen spezialisiert sich auf Inhalte zum
Thema „Multimedia- und Kommunikationstechnologien“. Grundsätzlich besteht jedoch bei
beiden Projekten die gleiche Aufgabenstellung:
1. Die vorhandenen Informationen sind so zu erschließen, daß sie auffindbar werden, und
sie sind so zu beschreiben, daß ihre Relevanz für den Suchenden erkennbar wird.
2. Um qualitativ hochwertige Informationen anbieten zu können, müssen die Angebote
durch qualifizierte Fachleute bewertet und entsprechend beschrieben werden.
Die Beschreibungen der vorhandenen Informationen werden als Metadaten bezeichnet. Diese
Metadaten unterstützen aktiv beim Finden relevanter Informationen, indem sie für die Suche
-1-
Einleitung
einschränkende Zusatzaufgaben bereithalten und eine genauere Klassifikation der Suchbegriffe ermöglichen.
Mit Hilfe von Metadaten lassen sich daher sogenannte „Findmaschinen“ realisieren, die in
ihrer Funktionalität den herkömmlichen „Suchmaschinen“ überlegen sind. Verschiedene technische Implementierungen einer solchen Findmaschine sind hierbei möglich.
1.2
Ziele und Struktur der vorliegenden Arbeit
Die technische Implementierung einer Applikation, die es einem Benutzer ermöglicht, die
Inhalte des Multibooks nach relevanten Informationen zu durchsuchen, wurde als Aufgabe
dieser Studienarbeit definiert.
Zur Realisierung einer solchen Applikation sah die Aufgabenstellung im weiteren vor, die
aktuellen Standards Learning Object Metadata (LOM) und Extensible Markup Language
(XML) miteinzubeziehen.
Zur Realisierung einer solchen Applikation müssen im einzelnen folgende Punkte berücksichtigt werden:
1. Die dem LOM-Standard entsprechenden Metadaten des Multibooks müssen im XMLFormat gespeichert und in einer geeigneten Datenbank verwaltet werden.
2. Der Benutzer soll befähigt werden, über das Internet eine Suchanfrage an diese Datenbank zu stellen.
3. Um dem Benutzer die Suchergebnisse über eine webbasierte Schnittstelle darstellen zu
können, muß eine Konvertierung der im XML-Format gespeicherten Metadaten in das
derzeit gängige Datenformat Hypertext Markup Language (HTML) erfolgen.
Die Gliederung der vorliegenden Studienarbeit gibt Aufschluß über die Inhalte der einzelnen
Kapitel:
Im zweiten Kapitel wird die Notwendigkeit, bestehende Angebote und Strukturen im Bildungsbereich neu zu überdenken und neu zu definieren, näher erläutert.
Im Anschluß an diese theoretischen Überlegungen wird im dritten Kapitel am Beispiel des
DBS eine vorhandene Applikation in diesem Bereich - basierend auf relationalen Datenbanken
und der Skriptsprache Hypertext Preprocessor (PHP) bzw. HTML - vorgestellt und bewertet.
Der Entwurf einer eigenen Applikation erfolgt im vierten Kapitel. Die Ideen und Ziele des
Multibook-Projektes werden dargelegt. Außerdem werden die zur Implementierung der Applikation zu verwendenden Konzepte LOM und XML betrachtet.
Das fünfte Kapitel dokumentiert ausführlich die Konzepte von XML und den damit verwandten Technologien, wie beispielsweise Document Type Definition (DTD) und Extensible Stylesheet Language (XSL).
Die für die Implementierung verwendete XML-basierte Datenbank Tamino und die zu realisierende Benutzerschnittstelle werden im sechsten Kapitel näher erörtert.
-2-
Einleitung
Nach der Evaluierung der Umsetzung der Aufgabenstellung im siebten Kapitel - mit Hinweisen auf Verbesserungs- bzw. Erweiterungsmöglichkeiten - faßt das achte Kapitel die Resultate
der vorliegenden Studienarbeit zusammen.
-3-
Einleitung
-4-
Literaturverzeichnis
Literaturverzeichnis
[APA2000]
Apache XML Project, Apache Cocoon,<URL: http://
xml.apache.org/>, 2000
[BAC2000]
Bach, Mike, XSL und XPath - Verständlich und praxisnah,Addison
Wesley Verlag, 2000
[BOU2000]
Bourret, Ronald, XML and Databases,<URL: http://www.rpbourret.com/xml/XMLAndDatabases.htm>, 2000
[DBS2000]
Deutscher Bildungsserver, Wie funktioniert der DBS ?,<URL: http:/
/dbs.schule.de/zeigen.html?seite=668>, 2000
[DBS2001]
Deutscher Bildungsserver, Homepage,<URL: http://dbs.schule.de>,
2001
[DIP1999]
Diepold, Peter, Der Deutsche Bildungsserver: Ordnung im WebChaos, Überarbeitete Fassung des Vortrages auf der 4.Fachtagung
„Schulen ans Netz“ in Bonn,<URL: http://www.educat.hu-berlin.de/~diepold/san99/san99.html>, 1999
[DUB2000]
Dublin Core Metadata Initiative, FAQ, <URL: http://purl.oclc.org/
dc/education/index.htm>, 2000
[EBU1998]
European Broadcasting Union, Technical Review, Special Supplement,1998
[GP2000]
Goldfarb, Charles F.; Prescod, Paul, Das XML-Handbuch,Addison
Wesley Verlag, 2000
[HAR1999]
Harold, Elliotte Rusty, XML-Bible,IDG Books Worldwide, Inc.,
1999
[HOM1999]
Alex, Homer, XML IE5 Programmer´s Reference,Wrox Press Ltd.,
1999
[IEE2001]
IEEE Learning Technology Standards Committee (LTSC), Draft
Standard for Learning Object Metadata,<URL: http://ltsc.ieee.org/
doc/wg12/LOM_WD5.pdf>, 2001
[JAV2001]
java.sun.com, Java Servlet Technology,<URL: http://http://
java.sun.com/products/servlet/index.html>, 2001
[MEY1999]
Meyers großes Taschenlexikon, Datenbank,Bibliographisches
Institut & F.A. Brockhaus, 7.Auflage, Band 4, Seite 237, 1999
[MEY2001]
Meyer, Thorsten, Serverseitige Techniken zur Realisierung Webbasierter Anwendungen,<URL: http://www.informatik.uni-oldenburg.de/~totti/inf/webtechnik/index.html>, 2001
[MIN2000]
Mintert, Stefan, Server-Side XML mit Apache Cocoon,3.Darmstädter XML Kongreß, 2000
[MM2000]
Mintert, Stefan; Menge, Stefan, XML verpuppt - Aufbereitung mit
Cocoon und Extensible Server Pages,c´t Magazin, Heft 10, Seite
222 - 227, 2000
[MYS2000]
mySQL, mySQL Introduction,<URL: http://www.mysql.com/information/introduction.html>, 2000
- 71 -
Literaturverzeichnis
[MÜN1998]
Münz, Stefan, Selfhtml Version 7.0,<URL: http://www.teamone.de/
selfaktuell>, 1998
[MUL2001]
Multibook, Individuell generierte Lektionen,<URL: http://
www.multibook.de>, 2001
[OHS1998]
Ohst, Daniel, Dateiformate für das elektronische Publizieren,Humboldt-Universität zu Berlin, 1998
[SS2001]
Bakken, Stig Sæther; Schmid, Egon, PHP Manual,PHP Documentation Group, <URL: http://www.php.net/>, 2001
[RIE2001]
Rieckert, Wolf-Fritz, Datenbanksysteme und Aufbau von Datenbanken,<URL: http://www.193.196.176.31/~rieckert/lehre/db/
index.htm>, 2001
[SAG2001]
Software AG, Tamino XML Database,<URL: http://www.softwareag.com/tamino>, 2001
[TSI1999]
Tsichritzis, Dennis, Reengineering the University,Communications
of the ACM, Vol. 42, No. 6, 1999
[W3C1999]
W3C, XML Path Language (XPath) Version 1.0, W3C Recommendation 16 November 1999,<URL: http://www.w3.org/TR/xpath>,
1999
[W3C2000]
W3C, Extensible Markup Language (XML) 1.0 (Second Edition),
W3C Recommendation 6 October 2000,<URL: http://www.w3.org/
TR/2000/REC-xml-20001006>, 2000
[W3C2001a]
W3C, Document Object Model (DOM) ,<URL: http://www.w3.org/
DOM/>, 2001
[W3C2001b]
W3C, Extensible Markup Language (XML),<URL: http://
www.w3.org/XML/>, 2001
[W3C2001c]
W3C, Extensible Markup Language (XML) Activity,<URL: http://
www.w3.org/XML/Activity>, 2001
[W3C2001d]
W3C, Extensible Stylesheet Language (XSL),<URL: http://
www.w3.org/Style/XSL/>, 2001
[W3C2001e]
W3C, XML Pointer, XML Base and XML Linking,<URL: http://
www.w3.org/XML/Linking>, 2001
[W3C2001f]
W3C, XML Query,<URL: http://www.w3.org/XML/Query>, 2001
[W3C2001g]
W3C, XML Schema ,<URL: http://www.w3.org/XML/Schema>,
2001
- 72 -
Herunterladen