Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
« Escape XML en XSLT » : différence entre les versions
Aller à la navigation
Aller à la recherche
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 7 : | Ligne 7 : | ||
</xsl:for-each> | </xsl:for-each> | ||
<xsl:value-of select="'>'" /> | <xsl:value-of select="'>'" /> | ||
<xsl:apply-templates select=" | <xsl:apply-templates select="node()" mode="escape" /> | ||
<xsl:value-of select="concat('</', name(), '>')" /> | <xsl:value-of select="concat('</', name(), '>')" /> | ||
</xsl:template> | </xsl:template> | ||
<xsl:template match=" | <xsl:template match="text()" mode="escape"> | ||
<xsl: | <xsl:value-of select="."/> | ||
</xsl:template></syntaxhighlight> | </xsl:template></syntaxhighlight> | ||
Version du 22 novembre 2012 à 06:44
Si tu veut escape XML un element XML dans XSLT comme texte pour voir tous les attributs, les nœuds et les textes, voici un template pour le faire:
<xsl:template match="*" mode="escape">
<xsl:value-of select="concat('<', name())" />
<xsl:for-each select="@*">
<xsl:value-of select="concat(' ', name(), '="', ., '"')" />
</xsl:for-each>
<xsl:value-of select="'>'" />
<xsl:apply-templates select="node()" mode="escape" />
<xsl:value-of select="concat('</', name(), '>')" />
</xsl:template>
<xsl:template match="text()" mode="escape">
<xsl:value-of select="."/>
</xsl:template>