Zusammenfassung
Themenstellung:
Im Rahmen eines Projektes zur Erstellung eines Wissensmanagement - Systems soll eine Export - Schnittstelle von der OpenOffice Writer Komponente in ein vorgegebenes XML - Format realisiert werden. Dabei unterteilt sich die Studienarbeit in zwei Kern - Aufgaben. Zum einen soll die Ausgabedatei des OpenOffice Writer eingehend untersucht werden und zum anderen soll die Export - Funktion implementiert werden. Zielstellung:
Vorgegebenes Ziel ist eine automatisch generierte, flache XML - Datei, welche kompatibel zu einer vorgegebenen DTD ist und dabei alle Meta -, Stil -, und Link -Informationen und den Inhalt des vorliegenden Dokuments enthält. Vorgabe ist die Vollständigkeit der exportierten XML - Datei, nicht aber die saubere Integration in den OpenOffice Writer. Umfeld:
Diese Studienarbeit baut auf der Studienarbeit von Mathias Frömmer auf, in der der Prototyp eines Semantic Webbrowsers realisiert wurde. Dabei arbeitet eine kleine Gruppe von Studenten an der Weiterentwicklung dieses Wissensmanagementsystems. Die einzelnen Teilaufgaben werden später noch genauer beschrieben. Ergebnis:
Das Ergebnis ist ein einfach zu bedienender Export - Prozess, der eine XML - Datei ausgibt, die allen Vorgaben entspricht.
Studienarbeit Dominik Heinz Stuttgart, 3. Juni 2004
Thema : OpenOffice XML Export
Inhaltsverzeichnis
1 GLOSSAR 6
2 EINLEITUNG 7
3 SINN UND ZWECK 8
4 THEORETISCHE GRUNDLAGEN 9
4.1 TECHNOLOGIEN (XML) 9
4.1.1 XML - Xtensible Markup Language 9
4.1.2 DTD - Data Type Definition 9
4.1.3 Namespaces 9
4.1.4 XSL / XSLT - Xtensible Stylesheet Language 9
4.1.5 XPath - XML Path Language 10
4.1.6 Xlink - XML Linking Language 10
4.1.7 XPointer - XML Pointing Language 10
4.1.8 XSLT - Prozessor 11
4.1.9 XMLParser 11
4.2 FORMATE 11
4.2.1 XHTML 11
4.2.2 DocBook 12
4.2.3 Mydoc (Semantic Web) 12
4.3 APPLIKATIONEN 12
4.3.1 OpenOffice 12
4.3.2 Saxparser 12
4.3.3 Semantic Webbrowser 13
Seite 4 von 34
Studienarbeit Dominik Heinz Stuttgart, 3. Juni 2004
Thema : OpenOffice XML Export
5 KONZEPTION 13
5.1 OOO DATEIFORMAT - DAS AUSGANGSFORMAT 14
5.1.1 Analyse der OpenOffice Writer Datei 14
5.1.1.1 Metadaten (office:meta) 16
5.1.1.2 Einstellungen (office:settings) 16
5.1.1.3 Stilinformationen / Gestaltungselemente (office:styles) 16
5.1.1.4 Inhalt (office:content) 17
5.1.2 Office - interne und selbstdefinierte Styles 18
5.1.3 Ablage und Aufruf von Bildern 18
5.1.4 Defintion von Internet Links 18
5.2 XML - FORMAT DES SEMANTIC WEBBROWSERS - DAS ZIELFORMAT 19
5.3 TRANSFORMATION 19
5.3.1 Extraktion des Archivs 19
5.3.2 Erzeugung einer „flachen“ XML - Datei 19
5.3.3 Transformation in das neue XML - Format 19
6 UMSETZUNG 21
6.1 UMSETZUNG EINES OOO EXPORT - FILTER 21
6.1.1 Verlinkung des OpenOffice Applikationskern 21
6.1.2 Implementierung einer UNO - basierten OpenOffice API 21
6.1.3 Nutzung des XML - basierten Dateiformats 22
6.2 INTEGRATION IN DEN OPENOFFICE WRITER 22
6.3 IMPLEMENTIERUNG DES XSLT - STYLESHEET 24
6.3.1 Meta - und Dokumentinformationen 25
6.3.2 Übernahme von Bildinformationen 26
6.3.3 Textkörper, Überschriften und besondere Textfelder 26
6.3.4 Stil - und Farbinformationen 27
6.3.4.1 Die Problematik der gesonderten Stildefinition 28
6.3.4.2 Die Problematik des gesonderten Stilinformation 28
6.3.4.3 Die Problematik der attributbasierten Stilinformation 29
6.3.4.4 JA - Extraktion und Verknüpfung mittles boolscher XPath - Anweisung 30
7 FAZIT 32
8 LITERATUR 33
9 ABBILDUNGSVERZEICHNIS 34
Seite 5 von 34
1 Glossar
Java PDF RDF RTF SAX SGML URI UTF - 8 XML XSL - FO XSL XSLT
Seite 6 von 34
2 Einleitung
In der Studienarbeit von Mathias Frömmer wurde der Prototyp eines Semantic Webbrowsers realisiert. Diese Studienarbeit finden sie als Anlage auf der beigelegten CD. Basierend auf dieser Studienarbeit sollte nun eine Gruppe von Studenten verschiedene Erweiterungen implementieren. Zum einen sollte durch das Hinzufügen von verschiedenen Import - und Export - Filtern die Kompatibilität erhöht werden und zum anderen durch die Implementierung eines Such -Algorithmus der Browser erweitert werden.
Da der Semantic Webbrowser nur XML - Dateien akzeptiert, ist es notwendig, die verschiedensten Eingabeformate in das XML - Format zu portieren.
Die Syntax von XML - Formaten wird in einer DTD fest definiert. Das heisst jedes Element und jede Baumhierarchie muss ich der DTD vorgegeben werden. Die DTD des Semantic Webbrowsers nennt sich „mydoc.dtd“.
In der Studienarbeit von Mathias Frömmer wurde bereits der Konverter 'majix' für die Portierung RTF zu XML eingesetzt. Da RTF (Rich Text Format) ein gängiges Ausgabeformat von Microsoft Word ist, ist damit der Export von Microsoft Office realisiert.
Nun sollten noch weitere Filter implementiert werden:
zz Ein Filter für die Protierung TEX zu XML. LaTeX ist ein alter und bewährter Standard in der Textformatierung. Dieser Filter wurde umgesetzt
zz Ein Export - Filter, der Daten aus dem Semantic Webbrowser in ein PDF (portable Document Format) druckt.
Dieser Exportfilter wurde implementiert
zz Ein Export - Filter für die Portierung SXW zu XML, also ein Export - Filter für die OpenOffice Writer - Komponente.
Dieser Filter wurde umgesetzt von Dominik Heinz und ist somit Thema dieser Studienarbeit
Des weiteren sollte noch ein Suchalgorithmus implemetiert werden:
zz Diese Erweiterung wurde implementiert
Seite 7 von 34
3 Sinn und Zweck
In der Studienarbeit von Matthias Frömmer wurde ein Semantic Webbrowser als Prototyp entwickelt. Der Begriff „Semantic Web“ stellt eine Quasi - Weiterentwicklung des Internets dar. Die Idee ist ein Semantisches Netzwerk, in dem Entitäten (Bilder, Texte, Gegenstände) über verschiedene Kanten (Eigenschaften, Handlungen) miteinander versbunden sind. Wenn in einem solchen Netzwerk ein spezielle Information gefunden werden soll, so kann direkt ein intelligenter Findungsalgorithmus implementier werden, der nicht nur nach bestimmten Begriffen, sondern auch nach Begiffen in einem bestimmten Zusammenhang suchen kann. Bisher werden alle Informationen in XML und RDF (Resource Description Framework) abgespeichert
Da sich OpenOffice mehr und mehr durch seine breite Unterstützung von verschiedenen Formaten in den Vordergrund drängt ist es sinnvoll, einen Filter für Dateien der OpenOffice Writer -Komponente zu erstellen.
Seite 8 von 34
4 Theoretische Grundlagen
4.1 Technologien (xml)
4.1.1 XML - Xtensible Markup Language
Die "Extensible Markup Language" ist eine vereinfachte Form der SGML und Quasi-Standard zur Erstellung strukturierter Dokumente im World Wide Web oder in einem Intranet. XML wird "erweiterbar" (extensible) genannt, weil man hier seine eigenen Auszeichnungs - Tags erstellen kann.
4.1.2 DTD - Data Type Definition
Eine DTD ist die Beschreibung der Inhalte einer XML-Datei. Die XML - Spezifikation beschreibt dafür genaue Mechanismen wie eine DTD definiert werden muss und wie sie verwendet werden soll. Im Allgemeinen ist eine DTD jedoch nichts weiter als eine Datei im Text-Format mit der Dateiendung .dtd. Es kann daher für die Editierung ein Text-Editor oder ein spezieller DTD-Editor verwendet werden. Letzterer birgt meist den Vorteil, dass bei der Erstellung einer DTD nicht viel falsch gemacht werden kann.
4.1.3 Namespaces
In XML werden die Bedeutungen der Attribute bzw. der Datentypen nicht durch eine Document Type Definition festgelegt, sondern durch Schemas. Diese XML-Schemas werden in einem Namespace (engl.: Namensraum) expliziert und auf einer Website niedergelegt. Der Namespace definiert die verwendeten Attributnamen.
4.1.4 XSL / XSLT - Xtensible Stylesheet Language
XSL steht für Extensible Stylesheet Language und beschreibt die Darstellung und Behandlung von XML-Daten mit Hilfe von XSL Stylesheets. XSL als Sprache umfasst sowohl XSLT, als Transformationssprache, und XSLT(-FO) als Formatierungssprache. Beide sind von XML abgeleitet - folgen also dessen Syntax und Regeln. XSLT stellt Elemente bereit, die die Transformation (Umwandlung) von XML-Daten in Daten anderen Formats erlauben (wie z.B. HTML, RTF, ...). XSL-FO seinerseits stellt wiederum Elemente zur Verfügung, mit denen Seite 9 von 34
festgelegt werden kann, wie XML-Daten angezeigt werden sollen (ähnlich CSS). Diese Studienarbeit wird sich auf die Transformierung konzentrieren.
4.1.5 XPath - XML Path Language
Ziel von XPath ist es, eine Methode zu bieten, nach der einzelne Elemente (oder Gruppen von Elementen) in XML - Dokumenten direkt adressiert werden können, ähnlich, wie es in HTML mittels auch möglich ist.
XPath entstand schon 1998 im Zusammenhang mit XSL(T). Ebenso wie XLink wurden damals alle diese Bestandteile innerhalb von XSL integriert. 1999 wurden die einzelnen Bestandteile von XSL jedoch gelöst und in eigene Arbeitsgruppen verpackt. Schon Ende 1999 wurde XPath zur Recommendation (Empfehlung des W3C) erklärt und blieb seitdem weitestgehend unverändert.
Wie in XSLT und XML vorgeschrieben, sieht auch XPath die einzelnen Objekte (Elemente, Attribute, Kommentare usw.) als Knoten an. Man kann sich ein XML mit diesem Hintergrund als eine Art Baum vorstellen: Jedes Element bildet einen Ast von dem wiederum andere Äste (die Unterelemente und Attribute) abzweigen können. Jeder Knoten kann einen erweiterten Namen und einen Textwert besitzen - beide können z.B. zur Verwendung mit XSLT herangezogen werden.
4.1.6 Xlink - XML Linking Language
Die XML Linking Language (kurz: XLink) ist eine Sprache die es ermöglicht, innerhalb von XML-Dokumenten Links zu erzeugen, ähnlich zu - oder - Links in HTML . Links in HTML haben verschiedene Nachteile:
• Sie sind fest an den Tagnamen gebunden
• Sie können nur Links vom aktuellen Dokument zu externen Ressourcen abbilden Zielsetzung von XLink ist es, eine einheitliche Syntax festzulegen, die an keine spezielle XML-Implementierung gebunden ist, auf die aber alle XML-basierten Sprachen zurückgreifen können. Dabei sollen Links möglichst flexibel definiert werden können.
4.1.7 XPointer - XML Pointing Language
XPointer definiert eine auf XPath aufbauende Sprache, die in URIs verwendet werden kann, um Teile eines XML-Dokuments zu adressieren. XPointer bietet drei verschiedene Formen zur Adressierung von Dokumentteilen: Bare-Names, Child Sequence und Full XPointer.
Seite 10 von 34
Arbeit zitieren:
Dominik Heinz, 2004, Open Office XML Export, München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
Formatvorlage (Microsoft Word) für eine Diplomarbeit, Masterarbeit, Ha...
Für MS Word 2003 - Update 2010
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Formatvorlage (OpenOffice) für eine Diplomarbeit, Masterarbeit, Hausar...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 35 Seiten
Formatvorlage / Vorlage zur Erstellung einer Diplomarbeit, Bachelorarb...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 15 Seiten
Formatvorlage / Vorlage für eine Diplomarbeit / Hausarbeit
Für MS Word 2007 - dotx
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Anleitung zum Erstellen schriftlicher Arbeiten: Der Aufbau einer wisse...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 20 Seiten
Erstellen einer schriftlichen Hausarbeit
Vorlagen, Muster, Formulare, Infobroschüren
Hausarbeit, 14 Seiten
Grundtechniken wissenschaftlichen Arbeitens
Bibliografieren - Reden - Schr...
Vorlagen, Muster, Formulare, Infobroschüren
Skript, 46 Seiten
Ratgeber zur Erstellung wissenschaftlicher Arbeiten. Diplomarbeiten - ...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 39 Seiten
Informatik - Software: Open Office XML Export ist nun auf dem Buchmarkt erhältlich
Informatik - Software: neuer Titel erschienen: Open Office XML Export
Dominik Heinz hat einen neuen Text hochgeladen
Interoperabilität von Dokumentenformaten: Open Document Format und Off...
FOKUSbasic.
Klaus-Peter Eckert, Jan Henrik Ziesing, Ucheoma Ichionwu
OMDoc -- An Open Markup Format for Mathematical Documents [version 1.2...
Foreword by Alan Bundy
Michael Kohlhase
Globaphobia: Confronting Fears about Open Trade
Gary Burtless, Robert E. Litan, Robert J. Shapiro
0 Kommentare