1 DocBook-Filter für OpenOffice.org
In diesem Dokument soll dargestellt werden, wie OpenOffice.org als WYSIWYG-Editor für XML-Dateien verwendet werden kann. Das Prinzip basiert darauf, Dokumente zu erstellen, die durch Stilvorlagen strukturiert werden. Beim Export werden diese Stilvorlagen in XML-Tags umgewandelt.
Dieses How-To zeigt Ihnen, wie man den DocBook-Filter ansprechen und benutzen kann. Es zeigt auch, wo die entsprechenden Vorlagen zu finden sind. Die Benutzer können sie also herunterladen und immer die neueste Version verwenden.
|
Die Angaben zu diesem Dokument beziehen sich auf OpenOffice.org 1.1 Beta 1. Kleine technische Details können sich in späteren Versionen leicht verändert haben. |
Anfangs benutzte OpenOffice.org Bereiche, um DocBook-Bereiche umzusetzen. Es hat sich allerdings herausgestellt, dass Benutzer die gebräuchlichen Textverarbeitungsvorlagen wie Überschrift1, Überschrift2 etc. vorziehen. Die mit OOo1.1 Beta mitgelieferten Stylesheets und Vorlagen benutzen OpenOffice.org-Bereiche. Sie finden unten Links zu Stylesheets, die OOo-Überschriften benutzen, und Installationsanweisungen dafür. Die Stylesheets unterstützen im Moment nur DocBook-Artikel. Unterstützung für Bücher und Kapitel ist geplant.
Sie finden die Stylesheets in einer .jar-Datei. Der Inhalt dieser Datei wird später in diesem Dokument erklärt. In der Zukunft soll OOo Im- und Export von XSLT direkt unterstützen.
Für einen Überblick, was im Moment schon geht, beachten Sie bitte:
Ein Beispiel-DocBook-Dokument.
Das zugehörige Writer (.sxw)-Dokument nach dem Import der DocBook-Datei.
|
Nested Bereiche werden unterstützt. Siehe dazu Verwendete oder Benutzervorlangen im Stylisten, welche Tags unterstützt werden. |
|
Siehe auch Eric Bellots Ooo2sdbk. |
2 DocBook in OpenOffice.org 1.1 benutzen
Die DocBook-Filter können bei der Installation von OpenOffice.org ebenfalls installiert werden. Wählen Sie „Benutzergesteuerte Installation“. In der darauf erscheinenden Komponentenauswahl suchen Sie Bereich Optionale Komponenten und wählen Filter für mobile Geräte.
|
In OpenOffice.org 1.1 Beta 2 Deutsch sind die DocBook-Filter schon aktiviert. Die folgenden Schritte können Benutzer dieser Version überspringen. |
Um die
DocBook-Filter zu aktivieren, müssen Sie die folgende Datei
bearbeiten:
<OOo Install
Dir>/share/registry/data/org/openoffice/Office/TypeDetection.xcu;
- Suchen Sie die Zeile
<node oor:name="DocBook File" oor:op="replace">
- Vor dem dazu gehörendem Endtag
</node>
fügen Sie die folgenden Zeilen ein:<prop oor:name="Installed" oor:type="xs:boolean"> <value>true</value> </prop>
- Ähnlich verfahren Sie für XHTML. Der Unterschied: Sie suchen nach der Zeile <node oor:name="XHTML File" oor:op="replace">.
- Ähnlich verfahren Sie für Flat XML File. Der Unterschied: Sie suchen nach der Zeile <node oor:name="Flat XML File" oor:op="replace">.
Ist der Filter aktiviert, dann starten Sie OOo und überprüfen Sie, ob DocBook als Dateiformat in den Öffnen- und Speicherdialogen zur Verfügung steht.
|
Öffnen Sie die Auswahlliste für den Dateityp und tippen Sie mehrmals „d“. |
Wenn Ihr Rechner an ein Netzwerk angeschlossen ist und das DocBook-Format eine öffentliche DTD-Kennung hat, müssen Sie die OpenOffice.org-Einstellungen für HTTP-Proxy-Server noch einstellen.
- Extras -> Optionen
- Internet -> Proxy
- Geben Sie den Namen des HTTP-Proxy-Servers und seine Port-Nummer ein.
Diese Schritte sind nötig, weil der Crimson XML-Parser versucht, das Dokument
entsprechend seiner DTD zu validieren.
|
Der Filter basiert auf Java. Damit er korrekt funktioniert, muss die Java Runtime Umgebung während der Installation von OpenOffice.org angegeben werden. OpenOffice.org 1.1 Beta 2 benötigt die JRE 1.4.1 oder neuer. Diese Version enthält auch einen XML-Parser (Crimson) und einen XSLT-Prozessor (Xalan). |
3 DocBook-XML mit OpenOffice. org anlegen und bearbeiten
3.1 Eine DocBook-Vorlage anlegen
Es ist nicht möglich, vordefinierten Vorlagen DocBook-Vorlagen in OpenOffice.org zur Verfügung zu stellen. Gehen Sie dazu wie folgt vor:
- Laden Sie ein einfaches DocBook XML-Dokument herunter.
- Öffnen Sie es in OpenOffice.org.
- Öffnen Sie den Stylisten mit F11 und wählen Sie in der unteren Auswahlliste „Alle“. Nun werden alle enthaltenen DocBook-Vorlagen dargestellt.
Informationen, wie man den Filter benutzt, finden Sie im UserGuide.
3.2 Bereiche/Überschriften
Wie man das Stylesheet ändert
Der DocBook-Filter benutzt die Funktionen des Frameworks XSLT von XMerge. Das docbook.jar enthält zwei XSLT Stylesheets. Mit einem können Sie von DocBook nach OpenOffice.org konvertieren und mit dem anderen von OpenOffice.org nach DocBook.
Die Datei enthält im Verzeichnis META-INF auch die Datei converter.xml. Darin werden die unterstützten MIME-Typen, die Stylesheet-Namen und das benutzte XMerge-Plugin beschrieben.
Zum Bearbeiten:
- Legen Sie ein temp-Verzeichnis an.
mkdir temp
- Entpacken Sie das Jar in das temp-Verzeichnis.
jar -xvf docbook.jar temp
- Danach finden Sie diese Dateien im
temp
-Verzeichnis:- META-INF/converter.xml
- sofftodocbook.xsl
- docbooktosoff.xsl
META-INF/MANIFEST.MF
Die beiden Stylesheets können nun beliebig bearbeitet werden. Sie können auch die neuesten Kopien herunterladen.
So packen Sie die veränderten Dateien in das Jar zurück:
cd temp
jar -cvf ../docbook.jar
- Kopieren Sie die Datei nach
<OOo installation>/program/classes
- Starten Sie OpenOffice.org neu.
Ein Beispiel: Wollen Sie die neuen XSLT-Stylesheets benutzen, dann ersetzen Sie die Stylesheets im temp-Verzeichnis mit den heruntergeladenen Versionen. Die converter.xml-Datei enthält Informationen für die Konvertierungen, die der Filter bietet. Diese Information wird von XMerge benutzt, wenn eine Konvertierung angefordert wird.
<converters>
<converter type="staroffice/sxw" version="1.0">
<converter-display-name>
XSLT Transformation sxw
</converter-display-name>
<converter-description>
Converter which performs xslt transformations
</converter-description>
<converter-vendor>
OpenOffice.org
</converter-vendor>
<converter-class-impl>
org.openoffice.xmerge.converter.xml.xslt.PluginFactoryImpl
</converter-class-impl>
<converter-xslt-serialize>
sofftodocbookheadings.xsl
</converter-xslt-serialize>
<converter-xslt-deserialize>
docbooktosoffheadings.xsl
</converter-xslt-deserialize>
<converter-target type="application/x-docbook" />
</converter>
</converters>
3.3 Momentan unterstützte Tags
Die aktuelle Liste der im Moment unterstützten DocBook-Tags.
4 ToDo
- Unterstützung weiterer DocBook-Tags
- Unterstützung von XML Entities. Entity-Referenzen gehen momentan verloren. Man kann sie vielleicht erhalten, indem man sie wie Felder behandelt.
- ArticleInfo sollte ursprünglich die Dokument-Eigenschaften unterstützen. Dies bedeutet allerdings zu viele Tags. Also wird dies vielleicht ein eigener Bereich.
- Bilder (Wir haben Platzhalter für die benötigten Informationen)
- Hyperlinks
- Kapitel
- Referenzen
5 Einschränkungen
Wir wollen auf diese Einschränkungen hinweisen, betrachten sie aber nicht als unüberwindbares Hindernis. Wenn es genügend Interesse an diesem Projekt gibt, dann wird den Wünschen nach Erweiterungen auch nachgekommen.
- Benutzer können in OOo nicht festlegen, welche Vorlagen (Tags) wofür benutzt werden. Sie müssen sich an die Vorgaben halten.
- Keine Validierung des Exports.
6 Offene Fehler
- Keine Unterstützung für Nested Tags in Text Spans.
Benutzen Sie zum Beispiel:
In HTML erschient dies so:<menuchoice> <guimenu> File </guimenu> <guimenuitem> New </guimenuitem> </menuchoice>
Use File -> New
- Kommentare werden importiert (Der Parser ignoriert sie. Man muss vielleicht ein Kommentar-Tag benutzen).
- Nested Listen werden in OpenOffice.org in drei einzelne Listen aufgeteilt und müssen auch als drei einzelne Listen exportiert werden.
- Vorlagen werden im Import-Stylesheet definiert.
- Import in ein vorhandenes Stylesheet wäre schön.