Élément <xsl:namespace-alias> de XSLT

Définition et utilisation

L'élément <xsl:namespace-alias> est utilisé pour remplacer le namespace de la feuille de style par un autre namespace dans la sortie, autrement dit, utiliser un autre préfixe pour remplacer le préfixe associé au namespace donné.

Remarque :<xsl:namespace-alias> est un élément de niveau supérieur (top-level element) et doit être un élément enfant de <xsl:stylesheet> ou <xsl:transform>.

Parfois, un fichier XSLT génère un autre XSLT. Cela pose un problème de namespace, car il n'existe pas de manière claire de déclarer deux préfixes pour le même namespace, et le processeur ne traite pas les deux préfixes comme le même namespace. L'utilisation de la commande <xsl:namespace-alias> permet d'allouer un namespace de transition à un préfixe de remplacement, d'appliquer la feuille de style, puis de mapper le namespace de remplacement au namespace XSLT.

Bien que la génération de fichiers XSL à partir de XSL soit l'utilisation principale de cette commande, elle n'est pas la seule. Cette commande peut être utilisée dans n'importe quel conflit de noms d'espace (par exemple, le namespace des types de données de schéma xsi).

grammaire

<xsl:alias-d'espace-de-nom
préfixe-du-fichier-stylesheet="préfixe|#default"
resultat-préfixe="préfixe|"#default"/>

propriété

propriété valeur description
préfixe-du-fichier-stylesheet
  • prefix
  • #default
Obligatoire. Définir l'espace de nom que vous souhaitez modifier.
result-prefix
  • prefix
  • #default
Obligatoire. Définir l'espace de nom attendu pour la sortie.

Instance

Exemple 1

Le préfixe wxsl est converti en préfixe xsl : dans la sortie

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wxsl="http://www.codew3c.com/w3style.xsl"
<xsl:namespace-alias stylesheet-prefix="wxsl" result-prefix="xsl"/>
<xsl:template match="/">
  <wxsl:stylesheet>
    <xsl:apply-templates/>
  </wxsl:stylesheet>
</xsl:template>
</xsl:stylesheet>