Elemento <xsl:namespace-alias> di XSLT

Definizione e uso

L'elemento <xsl:namespace-alias> viene utilizzato per sostituire i namespace delle tabelle di stile con altri namespace nell'output, in altre parole, utilizzare altri prefissi per sostituire i prefissi associati al namespace dato.

Nota:<xsl:namespace-alias> è un elemento di livello superiore (top-level element) e deve essere figlio di <xsl:stylesheet> o <xsl:transform>.

A volte, i file XSLT generano un altro XSLT. Questo crea problemi di namespace, poiché non c'è modo chiaro di dichiarare due prefissi per lo stesso namespace, e il processore non li considera come lo stesso namespace per operare. Utilizzando il comando <xsl:namespace-alias> è possibile assegnare un namespace di transizione a un prefisso alternativo, applicare lo stile, e poi mappare il namespace alternativo al namespace XSLT.

Nonostante la generazione di file XSL a XSL sia l'uso principale di questo comando, non è l'unico. Può essere utilizzato in qualsiasi conflitto di nomi di spazio (ad esempio xsi: namespace per tipi di dati di schema).

sintassi

<xsl:namespace-alias
stylesheet-prefix="prefix|#default"
result-prefix="prefix|"#default"/>

proprietà

proprietà valore descrizione
stylesheet-prefix
  • prefix
  • #default
Obbligatorio. Specifica lo spazio dei nomi che desideri modificare.
result-prefix
  • prefix
  • #default
Obbligatorio. Specifica lo spazio dei nomi previsto per l'output.

Esempio

Esempio 1

Il prefisso wxsl viene convertito nel prefisso xsl: nell'output:

<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>