Erstellen von
LMML-Dateien mit Altova XMLSPY Home Edition 2004
Download
der LMML-Schema-Dateien
Download
der kostenlosen Version von Altova XMLSPY Home Edition 2004
Allgemeines
zur Erstellung von LMML Dokumenten
Erstellung
der LMML-Datei mit Zuweisung eines Schemas
Die folgende Beschreibung bezieht sich auf Altova XML-Spy Home Edition 2004 (nicht Altova XML-Spy Home Edition 2005). Will man sich die Ergebnisse einer XSLT-Verarbeitung in der Browser-Vorschau von XML-Spy anzeigen lassen, sollte zur korrekten Darstellung der Microsoft Internet Explorer 6 installiert sein. In diesem Browser ist der Microsoft XML Parser 3.0 integriert. Derzeit aktuelle nicht Microsoft-Browser wie Mozilla Firefox 1.0, Mozilla 1.7.3 oder Netscape Navigator 7.1 können die XML-Dateien mit XSLT-Stylesheets ebenfalls darstellen.
Nach dem Download und Entpacken der LMML-Schema-Dateien (siehe http://www.lmml.de/download/LMML11-CS-Schema.zip) müssen alle .xsd Dateien (xsd = XML schema definition) in einem Ordner ablegt werden (Abbildung 1). Alle weiteren entstehenden oder zu verwendenden Dateien sollten am Schluss ebenfalls in diesem Verzeichnis liegen (Abbildung 16). Sie stehen alle zum Download zur Verfügung (Download).

Abbildung 1: Verzeichnis mit allen entpackten LMML-Schema-Dateien
Nach dem Download von Altova XMLSPY Home Edition 2004 (21 MB) unter http://www.altova.com/download_archive.html kann die Software unter MS Windows 98/ME/NT/2000/XP installiert werden.
Allgemeines zur Erstellung von LMML Dokumenten
Anfangs ist es sinnvoll ein Inhaltverzeichnis des zu veröffentlichenden Stoffes zu erstellen.
Grundsätzlich können alle Inhalte in eine einzige Datei abgelegt und sukzessive LMML-Elemente zugewiesen werden. Es sollte allerdings bei umfangreicheren Inhalten geprüft werden, ob die Inhalte nicht besser in eigene separate LMML-Dateien abgelegt werden sollten. Als Vorgabe, welche Dateien mit welchem Inhalt erstellt werden, könnte das Inhaltsverzeichnis der Vorlage dienen. Jeder Inhaltsverzeichniseintrag würde dann eine LMML-Datei wiederspiegeln. Der Dateiname kann von der Kapitelbezeichnung übernommen werden. Umlaute, Leerzeichen und Sonderzeichen sollte man vermeiden.
Nachdem der Text eingegeben oder in das Word-Dokument kopiert wurde, werden den Textteilen die gewünschten Elemente per Doppelklick auf den Elementnamen im Aufgabenbereich zugeordnet.
Hinweise zum Einsatz von LMML-Elementen bieten http://daisy.fmi.uni-passau.de/pakmas/lmml/11/doc/de/html/ und http://orworld.upb.de/deliverables/wp5/authors/lmml/instructions/0000_anleitung/html/index_anleitung.html.
Anhand eines einfachen Beispieles wird eine LMML Datei mit Text und Bild erstellt. Das Ergebnis soll sich im Browser gemäß der Abbildung 2 darstellen

Abbildung 2: Beispiel einer LMML-Datei
Über File -> New wird eine neue XML-Datei erstellt (Abbildung 3).

Abbildung 3: Erstellen einer neuen Datei

Abbildung 4: Erstellen einer XML-Datei
Zusätzlich kann eine Schema-Datei angegeben werden (Abbildung 5).

Abbildung 5: Schema auswählen
Über Browse… wird die gewünschte Schema-Datei ausgewählt und die relative Pfadangabe aktiviert (Abbildung 6).

Abbildung 6: Schema-Datei angeben
Das Ergebnis zeigt die Abbildung 7.

Abbildung 7: Aktivieren der eingebundenen LMML-CS.xsd
Nach dem Erstellen der XML-Datei speichert man Sie am besten im Projektordner (Abbildung 16) ab.
Folgende Anpassungen am Quelltext sollten vorgenommen werden:
Wird der Textcursor zwischen <lmml> und </lmml> gesetzt, kann an dieser Stelle der Text aus einer externen Datei in die XML-Datei hineinkopiert werden (Abbildung 8).

Abbildung 8: Rohentwurf einer LMML-Datei
Markiert man Textteile, kann durch einen Doppelklick auf der rechten Seite unter Elements das jeweilige XML-Element dem Text zugewiesen werden. Auf diese Art und Weise können nacheinander die Elemente section, paragraph und lmmltext zugewiesen werden (Abbildung 9).
Über den gelben (F7) bzw. roten Haken (F8) wird die XML-Datei auf Wohlgeformtheit (allg. XML-Syntax) und Validität (Syntax des Schemas) geprüft.

Abbildung 9: Valide LMML-Datei
Damit die Überschrift automatisch durch die vorgefertigte XSL-Datei eingefügt werden kann, muss dem section-Element das Attribut title zugewiesen werden. Klickt man im Quelltext im section-Element hinter das Wort section und fügt ein Leerzeichen ein, erscheint ein Aufklappmenü, das alle möglichen Attribute zeigt. Gibt man den ersten Attribut-Buchstaben ein, wird zum gewünschten Buchstaben gesprungen (Abbildung 10). Mit der linken Maustaste oder Enter wird die Auswahl bestätigt und es kann zwischen die Gänsefüsschen der Attributwert eingetragen werden (Bodenschutz). Dem Attribut label des Elementes section wird in unserem Beispiel der Wert sec-bodenschutz zugewiesen.

Abbildung 10: Zuweisung von Attributen
Will man ein Bild einfügen, muss zuerst die Stelle im LMML-Dokument ausgewählt werden. Klickt man z. B. hinter das Ende des Elementes paragraph und bindet einen neuen paragraph ein, kann an dieser Stelle das Element image per Doppelklick hinzugefügt werden. Nach der Zuweisung des Attributes uri, wird die Pfadangabe zur Bilddatei als Attributwert angegeben.
Die XSL-Datei übernimmt allgemein die gesamte Anzeige und Formatierung der Inhalte. Z. B. wird der Wert des title-Attributes als Überschrift, der Wert des Attributes label als Zieladresse eines Hyperlinks, lmmltext mit einem einfachen Zeilenumbruch (br-Tag in HTML) und paragraph mit einem Absatz (p-Tag in HTML) umgesetzt.
Zum Abschluss muss der LMML-Datei noch der Pfad zur formatierenden XSL-Datei mitgegeben werden. Über XSL -> Assign XSL (Abbildung 11) kann nach der Bestätigung der Hinweismeldung die Pfadangabe mit Browse angegeben werden. Die relative Pfadangabe sollte aktiviert werden (Abbildung 12).

Abbildung 11: Zuweisung der XSL-Datei

Abbildung 12: Relative Pfadangabe zur XSL-Datei
In der Browser-Ansicht (unterer Rand der Anwendung) ist das Ergebnis der XSLT-Transformation sichtbar (Abbildung 14).
Im Gegensatz zur Verwendung einer DTD muss bei Verwendung eines Schemas in der layout.xsl zusätzlich ein eigener namespace mit dem Wert http://www.lmml.de/LMML-CS definiert werden. Das Präfix (forstlmml) kann im Rahmen der namespace-Konventionen frei gewählt werden. Abbildung 13 zeigt das root-Element der layout.xsl bei der Verwendung eines Schemas.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:forstlmml="http://www.lmml.de/LMML-CS">
Abbildung 13: Namespace in der layout.xsl

Abbildung 14: Ergebnis der XSLT-Transformation in der Browser Vorschau
Der Quelltext der endgültigen LMML-Datei (bodenschutz.xml) zeigt sich in Abbildung 15.
<?xml
version="1.0" encoding="UTF-8"?>
<?xml-stylesheet
type="text/xsl" href="layout.xsl"?>
<lmml
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.lmml.de/LMML-CS LMML-CS.xsd"
xmlns="http://www.lmml.de/LMML-CS">
<section title="Bodenschutz" label="sec-bodenschutz">
<paragraph>
<LMMLtext>Durch ihre intensive und tiefe Durchwurzelung festigt
die Waldbestockung den Boden. Damit und durch die Wasserpumpwirkung des
Bestandes werden Muren, Hangrutschungen, Oberflächenabtrag und andere
Erosionsvorgänge verhindert oder zumindest gedämpft. Ohne die bodenerhaltende
Wirkung des Waldes wären unsere Berge auf weiten Flächen blanker Fels und
Schutt. Der Laub- und Nadelabfall trägt wesentlich zur Bildung der Humusauflage
bei. Dies ist besonders wichtig auf flachgründigen Standorten, die durch
Aushagerung und Humusschwund gefährdet sind. Für den Praktiker ist von
besonderem Interesse, in welchem Maße sich Auflichtungen von Bergwaldbeständen
auf Oberflächenabfluß und Bodenabtrag auswirken. Die Auflichtung kann dabei
durch eine Vitalitätsminderung der Bestände oder auch durch Hiebsmaßnahmen
bedingt sein.
<image uri="bodenschutz.jpg"/>
</paragraph>
</section>
</lmml>
Abbildung 15: Quelltext der endgültigen LMML-Datei (bodenschutz.xml)
Ist eine LMML-Datei erstellt, kann Sie als Musterdatei kopiert und als Vorlage für andere LMML-Dateien dienen.
Liegen in unserem Beispiel die Datei layout.xsl und alle Schema-Dateien im selben Verzeichnis (Abbildung 16), kann die bodenschutz.xml über den Browser aufgerufen und formatiert angezeigt werden. Die bodenschutz.jpg muss in einem Unterverzeichnis bilder (festgelegt in der layout.xsl) abgelegt werden.

Abbildung 16: Verzeichnis mit allen Dateien und dem Ordner bilder, in dem sich die bodenschutz.jpg befindet.
Alle benötigten Dateien stehen unter folgenden Adressen zum Download oder zur Betrachtung zur Verfügung:
Neben XMLSpy sind auch andere XML-Editoren wie z. B. MS Word 2003, MS InfoPath und XMetal in der Lage LMML Dateien zu generieren.