Découvrez ce qu’est la transformation XSLT dns FrameMaker.
FrameMaker fournit des options de traitement des fichiers XML. FrameMaker permet également l’importation et l’exportation XML pour prendre en charge les transformations XSL et le langage Schema pour la grammaire et la définition des règles (voir XML avec schéma). Vous pouvez importer un document XML utilisant le langage Schema en créant automatiquement une DTD (Document Type Definition) à partir du schéma référencé ou vous pouvez créer une EDD (Element Definition Document) directement à partir d’une définition de schéma. Vous pouvez également valider les fichiers en les comparant à un schéma associé, à l’importation comme à l’exportation.
XSL (EXtensible Stylesheet Language) est un langage de feuille de style pour les documents XML. XSLT (Extensible Stylesheet Language Transformation) est le moyen par lequel les transformations définies en XSL sont appliquées à des documents XML.
Langage pour la conversion de documents XML.
Langage de navigation dans des documents XML.
Langage pour la mise en forme de documents XML.
FrameMaker inclut un programme de traitement XSLT vous permettant d’associer un fichier XSLT à une application de structure XML ou à un document XML et d’appliquer les transformations définies dans ce document lors de l’importation ou de l’exportation au format XML. FrameMaker prend en charge les spécifications de la norme W3C XSLT 3.0. Vous pouvez changer le processeur XSLT en modifiant le fichier maker.ini ou depuis votre application structurée.
Les nouveaux éléments (SmartPaste
, PreProcessing
, PostProcessing
) de l’application structurée (XSLTPreferences
dans l’élément stylesheets
de XMLApplication
) vous permettent d’indiquer quel fichier XSLT de votre application structurée est à utiliser pour l’importation et l’exportation.
Par le biais de l’instruction de traitement xml-stylesheet
, vous pouvez désormais indiquer le fichier XSL d’un document comportant des balises XML qui remplace tout XSLT spécifié dans l’application structurée lors de l’importation de ce document.
Lors de l’importation, les transformations XSL sont appliquées avant les règles de lecture par défaut ou toute autre règle de lecture que vous avez définie. Par conséquent, l’application d’une transformation XSL à l’importation crée un nouveau fichier qui est transmis aux règles de lecture/écriture s’il est au format XML.
Lors de l’exportation, les transformations XSL sont appliquées après les règles d’écriture par défaut ou explicites. L’application des règles de lecture/écriture à l’exportation se solde par la création d’un nouveau fichier XML qui est transmis au processeur XSLT s’il est valide.
Vous pouvez créer une sortie hypertexte (XML ou HTML) à partir d’un fichier XML en utilisant la fonction XSL. En outre, vous pouvez créer et enregistrer des transformations réutilisables dans un fichier XML. Les transformations réutilisables contiennent des informations telles que le nom et le chemin d’accès du XSLT et le chemin d’accès des fichiers d’entrée et de sortie.
La sortie est créé à l’aide d’un analyseur installé sur la machine et enregistré avec FrameMaker via les paramètres maker.ini. Les analyseurs Xalan et SAXON sont installés par défaut sur votre ordinateur avec FrameMaker. Xalan prend en charge le langage XSLT 1.0 et SAXON le langage XSLT 3.0. Tous deux sont conformes à JAXP.
SAXON est l’analyseur par défaut utilisé lorsque XSL est exécuté directement ou si aucun analyseur spécifique à la transformation n’est spécifié. Toutefois, vous pouvez spécifier un nouveau processeur par défaut dans le fichier maker.ini à l’aide des indicateurs suivants :
[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
Une transformation XSL comprend des informations telles que XSL, Analyseur et Dossier de sortie, pour créer une sortie à partir de fichiers XML. Les transformations que vous créez sont stockées dans un fichier XML. Il existe deux types de transformations : par défaut et spécifique à l’application. Les transformations par défaut sont stockées dans le fichier comme spécifié dans le fichier maker.ini en utilisant l’indicateur TransformationFilePath. Les transformations spécifiques à l’application sont enregistrées dans un fichier XML que vous spécifiez pour l’application structurée dans le fichier structapps.fm.
La barre d’outils XSLT conserve un historique des transformations que vous utilisez et vous permet de créer une sortie issue de plusieurs fichiers XML à l’aide de la fonctionnalité Exécution avancée. Dans la barre d’outils, vous pouvez également choisir et exécuter une transformation\XSL à l’ouverture du fichier. Pour plus d’informations, voir Transformation de plusieurs fichiers à l’aide de la fonctionnalité Exécution avancée.
A. Cliquer pour sélectionner un fichier XSL B. Cliquer pour sélectionner une transformation C. Exécuter la transformation ou le XSL sélectionné D. Cliquer pour afficher la boîte de dialogue Exécution avancée
Dans le fichier maker.ini, recherchez la section XSLTProcessors
.
L’entrée correspondant au processeur SAXON
porte le suffixe : Défaut
.
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
Coupez et collez pour déplacer le suffixe vers l’entrée du processeur XALAN
comme suit :
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
Apprenez à créer des transformations XSLT dans FrameMaker.
Sélectionnez
.Dans la boîte de dialogue Gérer les transformations :
Pour utiliser le fichier de transformation par défaut, sélectionnez Fichier de transformation par défaut, puis cliquez sur Nouveau.
Pour créer un fichier de transformation, sélectionnez Fichier de transformation, puis cliquez sur Nouveau.
Cliquez sur Nouveau.
Dans la boîte de dialogue Nouvelle transformation, spécifiez les informations suivantes, puis cliquez sur Enregistrer sous pour créer un fichier de transformation :
Nom de la transformation : nom pour le paramètre de transformation.
Utilisation : vous pouvez sélectionner un fichier XSL ou choisir d’utiliser les instructions de traitement (PI) dans le fichier XML.
Processeur : SAXON, XALAN, ou tout autre analyseur enregistré avec FrameMaker.
Sortie : paramètres relatifs au fichier de sortie, tels que l’emplacement de l’enregistrement, le suffixe, ainsi que la manière d’ouvrir le fichier de sortie.
Apprenez à associer les fichiers de transformation à votre application XML dans FrameMaker.
Une fois que vous avez créé une transformation, vous pouvez associer le fichier de transformation à une ou plusieurs applications XML dans le fichier structapps.fm.
Dans la vue WYSIWYG, sélectionnez
.Dans une application structurée, recherchez l’élément <TransformationFile>
et indiquez le nom et le chemin du fichier de transformations.
Enregistrez le fichier StructApps.fm et sélectionnez .
Maintenant, vous pouvez choisir de générer le fichier de sortie à l’aide de la transformation de l’application concernée.
Apprenez à travailler avec des transformations spécifiques à une application dans FrameMaker.
Avec un fichier XML actif dans la vue XML, dans la barre d’outils XSLT, sélectionnez Transformation dans la liste déroulante Choisir.
Dans la boîte de dialogue Choisir la transformation, sélectionnez Applications structurées.
L’application concernée, telle que spécifiée dans structapps.fm, est sélectionnée dans la liste déroulante et les transformations pertinentes apparaissent dans le champ Transformations.
Dans Transformations, sélectionnez la transformation que vous souhaitez utiliser pour générer la sortie, puis cliquez sur OK.
Dans la barre d’outils XSLT, cliquez sur Exécuter.
FrameMaker génère la sortie hypertexte et affiche le fichier.
Découvrez comment vous pouvez utiliser l’exécution avancée pour transformer plusieurs fichiers XML dans FrameMaker.
Depuis la barre d’outils XSLT, vous pouvez exécuter une transformation sur plusieurs fichiers.
Dans la boîte de dialogue Exécution avancée, sélectionnez une portée d’exécution de la transformation :
Fichier en cours : génération d’une sortie depuis le fichier XML ouvert dans FrameMaker.
Sélectionnez l’option Inclure les éléments enfant si le document actif est un livre ou une carte. Lorsque cette option est sélectionnée, la fonction XSLT est appliquée aux éléments enfant, conjointement à l’élément parent.
Tous les fichiers ouverts : génération d’une sortie de tous les fichiers XML ouverts dans FrameMaker à l’aide d’une transformation ou d’un XSL.
Dossier : génération d’une sortie de tous les fichiers XML présents dans un dossier, à l’aide d’une transformation ou d’un XSL. Sélectionnez l’option Inclure les sous-dossiers, le cas échéant.
Sélectionnez une transformation ou un XSL, puis cliquez sur Exécuter.
Les fichiers de sortie sont lancés dans l’application associée.