Ejemplo de <xsl:namespace-alias>
Este ejemplo muestra cómo utilizar <xsl:namespace-alias> para declarar el prefijo alt: como un alias para el espacio de nombres XSLT en el árbol de resultados literales, cuando el prefijo xsl: está limitado por el mismo URI de espacio de nombres en la hoja de estilos.El resultado es otra hoja de estilos XSLT.
Archivo XML (mymin.xml)
<?xml version='1.0'?>
<?xml-stylesheet type="text/xsl" href="alias.xsl"?>
<myelem/>
Archivo XSLT (alias.xsl)
<?xml version='1.0'?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:alt="http://www.w3.org/1999/XSL/Transform-alternate">
<xsl:namespace-alias stylesheet-prefix="alt" result-prefix="xsl"/>
<xsl:param name="browser" select="'InternetExplorer'"/>
<xsl:template match="/">
<alt:stylesheet>
<xsl:choose>
<xsl:when test="$browser='InternetExplorer'">
<alt:import href="IERoutines.xsl"/>
<alt:template match="/">
<div>
<alt:call-template name="showTable"/>
</div>
</alt:template>
</xsl:when>
<xsl:otherwise>
<alt:import href="OtherBrowserRoutines.xsl"/>
<alt:template match="/">
<div>
<alt:call-template name="showTable"/>
</div>
</alt:template>
</xsl:otherwise>
</xsl:choose>
</alt:stylesheet>
</xsl:template>
</xsl:stylesheet>
Archivo JScript (test.js)
var xmldoc = new ActiveXObject("Msxml2.DOMDocument.6.0");
xmldoc.async=false;
xmldoc.load("mymin.xml");
var xsldoc= new ActiveXObject("Msxml2.DOMDocument.6.0");
xsldoc.async = false;
xsldoc.load("alias.xsl");
var outfile = new ActiveXObject("Msxml2.DOMDocument.6.0");
outfile.async=false;
var strResult;
strResult = xmldoc.transformNode(xsldoc);
outfile.loadXML(strResult);
outfile.save("output.xsl");
WScript.Echo("Output.xsl was made.");
¡Inténtelo!
Copie el archivo XML de arriba y péguelo en un archivo de texto.Guarde el archivo como mymin.xml en un directorio en su unidad local.
Copie el archivo XSLT de arriba y péguelo en un archivo de texto.Guarde el archivo como alias.xsl en el mismo directorio.
Copie el archivo JScript de arriba y péguelo en un archivo de texto.Guarde el archivo como test.js en el mismo directorio.
Haga doble clic en el archivo test.js desde el para iniciar la aplicación.Por otra parte, puede escribir "test.js" desde el símbolo del sistema.
Nota
En sistemas operativos distintos de Windows 2000 o Windows XP, podría tener que instalar Windows Scripting Host (wscript.exe), si no está ya instalado.
El siguiente archivo de salida, output.xsl, aparece en su unidad local.
Compruebe que los resultados son los mismos que los que se enumeran a continuación.
Resultados
Cuando ejecute test.js, debería observar los siguientes resultados en un cuadro de mensaje o ventana de la consola:
Output.xsl was made.
El procesador también produce la siguiente secuencia como archivo XSLT, output.xsl, en la carpeta donde ha guardado los archivos de muestra.Se ha agregado un espacio blanco para ofrecer mayor claridad.
<?xml version="1.0" encoding="UTF-16"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:import href="IERoutines.xsl" />
<xsl:template match="/">
<div>
<xsl:call-template name="showTable" />
</div>
</xsl:template>
</xsl:stylesheet>