Compartir a través de


Compatibilidad con la función msxsl:node-set()

Actualización: November 2007

La función msxsl:node-set permite convertir un fragmento del árbol de resultados en un conjunto de nodos. El conjunto de nodos resultante siempre contiene un único nodo, que es el nodo raíz del árbol.

Nota:

La clase XslTransform es obsoleta en .NET Framework versión 2.0. Puede llevar a cabo Extensible Stylesheet Language for Transformations (XSLT) mediante la clase XslCompiledTransform. Para obtener más información, vea Uso de la clase XslCompiledTransform y Migración desde la clase XslTransform.

La función msxsl:node-set permite convertir un fragmento del árbol de resultados en un conjunto de nodos. El conjunto de nodos resultante siempre contiene un único nodo, que es el nodo raíz del árbol.

Ejemplo

En el ejemplo siguiente, $var es una variable que es un árbol de nodos en la hoja de estilos. La instrucción for-each, combinada con la función node-set, permite que el usuario itere por este árbol como un conjunto de nodos.

nodeset.xsl

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:msxsl="urn:schemas-microsoft-com:xslt"
                xmlns:user="https://www.contoso.com"
                version="1.0">
    <xsl:variable name="books">
        <book author="Michael Howard">Writing Secure Code</book>
        <book author="Michael Kay">XSLT Reference</book>
    </xsl:variable>

    <xsl:template match="/">
        <authors>
            <xsl:for-each select="msxsl:node-set($books)/book"> 
                <author><xsl:value-of select="@author"/)</author>
            </xsl:for-each>
        </authors>
    </xsl:template>
</xsl:stylesheet>

Resultados

El resultado de la transformación es

<?xml version="1.0" encoding="utf-8"?>
<authors><author>Michael Howard</author><author>Michael Kay</author></authors>

Vea también

Conceptos

La clase XslTransform implementa el procesador XSLT