XSL-Transformation

Erfahren Sie, was die XSLT-Transformation in FrameMaker ist.

FrameMaker bietet Optionen zum Verarbeiten von XML. FrameMaker ermöglicht auch den XML-Import und -Export zur Unterstützung von XSL-Transformationen und der XML Schema-Sprache für Grammatik- und Regeldefinitionen (siehe XML mit Schema). 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:
XSLT

Eine Sprache für die Transformation von XML-Dokumenten.

XPath

Eine Sprache für die Navigation in XML-Dokumenten.

XSL-FO

Eine Sprache zum Formatieren von XML-Dokumenten.

FrameMaker bietet einen XSLT-Prozessor, mit dem Sie eine XSLT-Datei mit einer XML-Strukturanwendung oder einem XML-Dokument verknüpfen können 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 maker.ini oder in Ihrer strukturierten Anwendung ändern.

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 und SAXON unterstützt XSLT 3.0. Beide, XALAN und SAXON, sind mit JAXP kompatibel.

Hinweis: Im Lieferumfang von FrameMaker (Version 2019) ist Saxon Enterprise Edition 9.8.3 enthalten.

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 angegeben haben.

Ü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. Weitere Informationen finden Sie unter Transformieren mehrerer Dateien mit „Erweiterte Ausführung“.


XSLT-Symbolleiste in FrameMaker

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

Wechseln zum XALAN-Prozessor

  1. Suchen Sie in der Datei „maker.ini“ den Abschnitt XSLTProcessors.

  2. 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
  3. 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

Erstellen von Transformationen

Erfahren Sie, wie Sie in FrameMaker XSLT-Transformationen erstellen.

Hinweis: Achten Sie darauf, zur XML-Ansicht zu wechseln, bevor Sie diesen Vorgang durchführen.
  1. Wählen Sie XSLT > Transformation verwalten.


    Dialogfeld „Transformation verwalten“ in der XML-Ansicht von FrameMaker

  2. Im Dialogfeld Transformationen verwalten:

    Wählen Sie zur Verwendung der Standardtransformationsdatei die Option Standardtransformationsdatei aus, und klicken Sie dann auf Neu.

    Um eine neue Transformationsdatei zu erstellen, wählen Sie die Option Transformationsdatei und klicken auf Neu.

    Hinweis: Wenn Sie bereits über eine Transformationsdatei verfügen, klicken Sie auf Durchsuchen und wählen Sie die Datei aus.
  3. Klicken Sie auf Neu.

  4. Geben Sie im Dialogfeld Neue Transformation die folgenden Informationen an, und klicken Sie auf Speichern unter, um eine Transformationsdatei zu erstellen:

    Hinweis: Wenn Sie in Schritt 1 über die Schaltfläche Durchsuchen eine bereits vorhandene Transformationsdatei ausgewählt haben, speichern Sie die neue Transformation in der ausgewählten Transformationsdatei.
    1. Transformationsname: Ein Name für die Transformationseinstellung.

    2. Verwendung:Wählen Sie entweder eine XSL-Datei aus, oder verwenden Sie die Verarbeitungsanweisungen (Processing Instructions, PI) innerhalb der XML-Datei.

    3. Prozessor: SAXON, XALAN oder ein anderer bei FrameMaker registrierter Parser.

    4. Ausgabe: Einstellungen in Bezug auf die Ausgabedatei, z. B. Speicherort und Suffix sowie die Art der Öffnung der Ausgabedatei.

Bearbeiten von Transformationen

Erfahren Sie, wie Sie die Transformationsdateien in FrameMaker Ihrer XML-Anwendung zuordnen.

Nachdem Sie eine Transformation erstellt haben, können Sie die Transformationsdatei einer oder mehreren XML-Anwendungen in „structapps.fm“ zuordnen.

  1. Wählen Sie in der WYSIWYG-Ansicht die Option Struktur > Anwendungsdefinition > Globale Anwendungsdefinitionen bearbeiten.

  2. Suchen Sie in einer strukturierten Anwendung das Element <TransformationFile>, und geben Sie den Pfad und den Namen der Transformationsdatei an.


    Suchen nach dem Transformationsdateielement und Angeben von Pfad und Namen der Transformationsdatei in der Strukturansicht

  3. Speichern Sie die Datei StructApps.fm, und wählen Sie Struktur > Anwendungsdefinition > Anwendungsdefinitionen lesen .

Jetzt können Sie Dateiausgabe mit der Transformation für die jeweilige Anwendung generieren.

Anwendungsspezifische Transformation

Erfahren Sie, wie Sie in FrameMaker mit anwendungsspezifischen Transformationen arbeiten können.

  1. Wenn eine XML-Datei in der XML-Ansicht im Fokus ist, wählen Sie in der XSLT-Symbolleiste in der Dropdown-Liste Wählen die Option „Transformation“.

  2. Wählen Sie im Dialogfeld „Transformationen wählen“ die Option „Strukturierte Anwendungen“.


    Anwendungsspezifische Transformation im Dialogfeld „Transformation verwalten“

  3. Die relevante Anwendung, wie unter structapps.fm angegeben, wird aus der Dropdown-Liste ausgewählt, und die entsprechenden Transformationen werden im Feld Transformationen angezeigt.

  4. Wählen Sie in Transformationen die Transformation aus, mit der Sie die Ausgabe generieren möchten, und klicken Sie auf OK.

  5. Klicken Sie in der XSLT-Symbolleiste auf Ausführen.

    FrameMaker generiert die Hypertext-Ausgabe und zeigt die Datei an.

Transformieren mehrerer Dateien mit „Erweiterte Ausführung“

Erfahren Sie, wie Sie die erweiterte Ausführung verwenden können, um in FrameMaker mehrere XML-Dateien zu transformieren.

Mit der XSLT-Symbolleiste können Sie eine Transformation in mehreren Dateien ausführen.

  1. Wählen Sie in der XSLT-Symbolleiste „Erweiterte Ausführung“.

    Erweiterte Ausführung in der XSLT-Symbolleiste

  2. Wählen Sie im Dialogfeld Erweiterte Ausführung einen Bereich zum Ausführen der Transformation aus:

    1. Aktuelle Datei: Generiert eine Ausgabe aus der XML-Datei, die in FrameMaker geöffnet ist.

    2. Wählen Sie „Untergeordnete Elemente einschließen“, wenn das aktive Dokument ein Buch oder eine Zuordnung ist. Ist diese Option ausgewählt, wird die XSLT sowohl auf das untergeordnete als auch auf das übergeordnete Element angewendet.

    3. Alle geöffneten Dateien: Generiert mithilfe einer Transformation oder einer XSL eine Ausgabe aus allen XML-Dateien, die in FrameMaker geöffnet sind.

    4. Ordner: Generiert mithilfe einer Transformation oder einer XSL eine Ausgabe aus allen XML-Dateien in einem Ordner. Wählen Sie bei Bedarf „Unterordner einbeziehen“.

  3. Wählen Sie eine Transformation oder eine XSL und klicken Sie auf Ausführen.

Die Ausgabedateien werden in der entsprechenden Anwendung gestartet.


January 19, 2022

Legal Notices | Online Privacy Policy