Lernen Sie XSLT-Transformationen in Adobe FrameMaker kennen.
FrameMaker bietet Optionen zum Verarbeiten von XML. FrameMaker ermöglicht auch den Import und Export von XML zur Unterstützung von XSL-Transformationen und der Schema-Sprache für Grammatik- und Regeldefinitionen. Sie können ein XML-Dokument, das Schema verwendet, importieren und dadurch automatisch eine DTD (Document Type Definition) aus dem referenzierten Schema erstellen. Sie können auch direkt aus einer Schema-Definition ein EDD (Element Definition Document) erstellen. Darüber hinaus ist sowohl beim Import als auch beim Export eine Validierung unter Verwendung eines verknüpften Schemas möglich.
XSL (EXtensible Stylesheet Language) ist eine Stilvorlagensprache für XML-Dokumente. XSLT (Extensible Stylesheet Language Transformation) ist die Art wie die in XLS definierten Transformationen auf XML-Dokumente angewendet werden.
XSL ist ein Satz der folgenden drei Spezifikationen:
Eine Sprache für die Transformation von XML-Dokumenten.
Eine Sprache für die Navigation in XML-Dokumenten.
Eine Sprache zum Formatieren von XML-Dokumenten.
FrameMaker enthält einen XSLT-Prozessor, mit dem Sie eine XSLT-Datei mit einer strukturierten XML-Anwendung oder einem XML-Dokument verknüpfen und beim Importieren von oder Exportieren in XML die in diesem Dokument definierten Transformationen anwenden können. FrameMaker unterstützt W3C XSLT 3.0-Empfehlungen. Sie können den XSLT-Prozessor durch Bearbeitung der Datei Datei maker.ini oder aus Ihrer strukturierten Anwendung.
Mithilfe der neuen Elemente (SmartPaste
, PreProcessing
, PostProcessing
) in der strukturierten Anwendung (XSLTPreferences
im Element Stylesheets
von XMLApplication
) können Sie eine XSLT-Datei als Teil Ihrer strukturierten XML-Anwendung definieren, wobei diese sowohl für den Import als auch den Export verwendet werden kann.
Mit der Verarbeitungsanweisung (PI – Processing Instruction) xml-stylesheet
können Sie nun in einem XML-Markup-Dokument eine XSL-Datei angeben, die jegliche beim Importieren des Dokuments in der Strukturanwendung angegebenen XSLT-Befehle ersetzt.
Beim Import werden XSL-Transformationen vor den standardmäßigen Schreibregeln oder den gegebenenfalls von Ihnen definierten zusätzlichen Schreibregeln angewendet. Dies bedeutet Folgendes: Das Ergebnis der Anwendung einer XSL-Transformation beim Importieren ist eine neue Datei, welche (wenn es eine XML-Datei ist) an die Lese-/Schreibregeln übergeben wird.
Beim Export werden XSL-Transformationen nach den standardmäßigen oder spezifisch definierten Schreibregeln angewendet. Das Ergebnis der Anwendung von Lese-/Schreibregeln beim Export ist eine neue XML-Datei, die, sofern sie gültig ist, an den XSLT-Prozessor übergeben wird.
Sie können eine Hypertext-Ausgabe (XML oder HTML) aus einer XML-Datei mithilfe einer XSL generieren. Darüber hinaus können Sie wiederverwendbare Transformationen in einer XML-Datei erstellen und speichern. Die wiederverwendbaren Transformationen beinhalten Informationen wie den Namen und Pfad der XSLT und den Pfad der Eingabe- und Ausgabedateien.
Die Ausgabe wird mit einem Parser erstellt, der auf dem Computer installiert und in FrameMaker über die maker.ini-Einstellungen registriert ist. XALAN und SAXON werden standardmäßig zusammen mit FrameMaker auf Ihrem Computer installiert. XALAN unterstützt XSLT 1.0, SAXON unterstützt XSLT 3.0. Sowohl XALAN als auch SAXON sind mit JAXP kompatibel.
SAXON ist der Standardparser, der verwendet wird, wenn XSL direkt ausgeführt wird oder wenn kein bestimmter Parser für eine Transformation angegeben ist. Sie können jedoch einen neuen Standardprozessor in der Datei maker.ini mit den folgenden Flags angeben:
[XSLTProcessors]
; processorName=jar path(all dependent jars should be in same dir), TransformerFactory class,
; default if default processor
; (if not specified – 1st processor would become default.)
XALAN=fminit\XSLT\XSLTProcessors\xalan\xalan-j_2_7_2-bin\xalan.jar,
org.apache.xalan.processor.TransformerFactoryImpl
SAXON=fminit\XSLT\XSLTProcessors\saxon\SaxonEE9-8-0-7J\saxon9ee.jar,
net.sf.saxon.TransformerFactoryImpl, Default
Eine XSL-Transformation beinhaltet Informationen wie XSL, Parser und Ausgabeordner für die Erstellung einer Ausgabe aus XML-Dateien. Die von Ihnen erstellten Transformation wird in einer XML-Datei gespeichert. Es gibt zwei Arten von Transformationen: Standard und anwendungsspezifisch. Die Standardtransformationen werden mithilfe des TransformationFilePath-Flags in der Datei gespeichert, wie in der Datei maker.ini angegeben. Die anwendungsspezifischen Transformationen werden in einer XML-Datei gespeichert, die Sie für die strukturierte Anwendung in der Datei structapps.fm angeben.
Über die XSLT-Symbolleiste können Sie einen Verlauf der von Ihnen verwendeten Transformationen verwalten und mithilfe der Funktion „Erweiterte Ausführung“ eine Ausgabe aus mehreren XML-Dateien erstellen. Sie können außerdem von der Symbolleiste aus eine Transformation\XSL wählen und für die geöffnete Datei ausführen.
A. Klicken Sie, um eine XSL-Datei anzuzeigenB. Klicken Sie, um eine Transformation auszuwählenC. Führen Sie die ausgewählte Transformation oder die XSL-Datei aus D. Klicken Sie, um das Dialogfeld „Erweiterte Ausführung“ anzuzeigen
Suchen Sie in der Datei maker.ini den Abschnitt XSLTProcessors
.
Der Eintrag für den SAXON
-Prozessor hat das Suffix Default
.
XALAN=fminit\XSLT\XSLTProcessors\xalan\xalan-j_2_7_2-bin\xalan.jar,
org.apache.xalan.processor.TransformerFactoryImpl
SAXON=fminit\XSLT\XSLTProcessors\saxon\SaxonEE9-8-0-7J\saxon9ee.jar,
net.sf.saxon.TransformerFactoryImpl, Default
Schneiden Sie das Suffix aus und fügen Sie es folgendermaßen in den Eintrag für den XALAN
-Prozessor ein:
XALAN=fminit\XSLT\XSLTProcessors\xalan\xalan-j_2_7_2-bin\xalan.jar,
org.apache.xalan.processor.TransformerFactoryImpl, Default
SAXON=fminit\XSLT\XSLTProcessors\saxon\SaxonEE9-8-0-7J\saxon9ee.jar,
net.sf.saxon.TransformerFactoryImpl