Élément <xsl:processing-instruction>
Génère un nœud d'instruction de traitement dans la sortie.
<xsl:processing-instruction
name = "pi-name">
</xsl: processing-instruction>
Attributs
- name
Obligatoire. NCName de l'instruction de traitement.
Informations sur l'élément
Nombre d'occurrences |
Illimité |
Éléments parents |
xsl:attribute, xsl:comment, xsl:copy, xsl:element, xsl:fallback, xsl:for-each, xsl:if, xsl:message, xsl:otherwise, xsl:param, xsl:processing-instruction, xsl:template, xsl:variable, xsl:when, xsl:with-param, éléments de sortie |
Éléments enfants |
xsl:apply-imports, xsl:apply-templates, xsl:call-template, xsl:choose, xsl:copy, xsl:copy-of, xsl:fallback, xsl:for-each, xsl:if, xsl:message, xsl:number, xsl:text, xsl:value-of, xsl:variable |
Notes
L'élément <xsl:processing-instruction>
génère un nœud d'instruction de traitement dans la sortie. Le nom est indiqué par l'attribut name
. Le contenu de l'élément fournit le reste de l'instruction de traitement.
La déclaration XML n'est pas une instruction de traitement et doit être générée en définissant les attributs d'un élément <xsl:output>
.
Exemple
Cet exemple illustre un modèle qui génère la déclaration XML et une instruction de traitement de feuille de style dans la sortie.
Fichier XML (customers.xml)
Fichier XSLT (pi.xsl)
Essayez !
Copiez le code ci-dessus et enregistrez-le dans les fichiers appropriés sur votre disque local.
Exécutez l'exemple à l'aide de l'utilitaire msxsl.exe (disponible à l'adresse www.microsoft.com/downloads/) ou à partir de l'invite de commande, comme suit :
msxsl customers.xml pi.xsl -o new-cust.xml
Sortie
Le résultat de cette transformation est le même fichier XML, auquel une nouvelle feuille de style est intégrée. Le fichier de sortie, new-cust.xml, doit se présenter comme suit :
<?xml version="1.0" encoding="UTF-16"?>
<?xml-stylesheet type="text/xsl" href="style.xsl" ?>
<customers>
<customer>
<name>James Smith</name>
<address>123 Elm St.</address>
<phone>(123) 456-7890</phone>
</customer>
<customer>
<name>Amy Jones</name>
<address>456 Oak Ave.</address>
<phone>(156) 789-0123</phone>
</customer>
</customers>