Elemento <xsl:namespace-alias> do XSLT

Definição e uso

O elemento <xsl:namespace-alias> é usado para substituir namespaces em saída pelo namespace de estilo, em outras palavras, usar outros prefixos para substituir os prefixos associados ao namespace dado.

Notas:<xsl:namespace-alias> é um elemento de nível superior (top-level element) e deve ser um elemento filho de <xsl:stylesheet> ou <xsl:transform>.

Às vezes, arquivos XSLT geram outro XSLT. Isso traz problemas de namespace, pois não há maneira clara de declarar dois prefixos para o mesmo namespace, e o processador não trata os dois prefixos como o mesmo namespace para operar. O comando <xsl:namespace-alias> pode atribuir um namespace alternativo a um prefixo alternativo, aplicar o estilo, e então mapear o namespace alternativo para o namespace XSLT.

Embora a geração de arquivos de XSL para XSL seja o principal uso deste comando, não é a única. Pode ser usado em qualquer conflito de namespaces (por exemplo, namespaces de tipos de dados de schema xsi:).

sintaxe

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

atributo

atributo valor descrição
stylesheet-prefix
  • prefix
  • #default
Obrigatório. Especifica o espaço de nomes que você deseja alterar.
result-prefix
  • prefix
  • #default
Obrigatório. Especifica o espaço de nomes esperado para a saída.

Exemplo

Exemplo 1

O prefixo wxsl é convertido para o prefixo xsl: na saída:

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