2009-12-07 5 views

Répondre

12
  • xsl:copy-of est une copie exacte de l'élément XML d'entrée identifié. Aucun traitement xslt n'a lieu et la sortie de cet élément sera exactement la même que l'entrée.

  • xsl:apply-templates indique au moteur xslt de traiter les modèles qui correspondent aux éléments sélectionnés. xsl:apply-templates est ce qui donne à xslt sa capacité de remplacement, puisque les modèles que vous créez avec des éléments de correspondance peuvent avoir des priorités différentes, et le modèle ayant la plus haute priorité sera exécuté.

entrée:

<a> 
    <b>asdf</b> 
    <b title="asdf">asdf</b> 
</a> 

Xslt 1:

<xsl:stylesheet ... > 
    <xsl:template match="a"> 
     <xsl:copy-of select="b" /> 
    </xsl:template> 
</xsl:stylesheet> 

sortie XML 1:

<b>asdf</b> 
<b title="asdf">asdf</b> 

Xslt 2:

<xsl:stylesheet ... > 
    <xsl:template match="a"> 
     <xsl:apply-templates select="b" /> 
    </xsl:template> 

    <xsl:template match="b" priority="0"> 
     <b><xsl:value-of select="." /></b> 
     <c><xsl:value-of select="." /></c> 
    </xsl:template> 

    <xsl:template match="b[@title='asdf']" priority="1"> 
     <b title="{@title}"><xsl:value-of select="@title" /></b> 
    </xsl:template> 
</xsl:stylesheet> 

sortie XML 2:

<b>asdf</b> 
<c>asdf</c> 
<b title="asdf">asdf</b> 
7
copy-of 

va simplement vous renvoyer une décharge du XML dans le d'autre part ensemble de nœuds

apply-templates 

fourni appliquera tous les modèles applicables à l'ensemble de nœuds a transmis.

Questions connexes