Je dois afficher le texte pour un nœud donné, tout en supprimant le texte pour le nœud enfant. J'ai essayé de gérer cela en créant un modèle vide pour le nœud enfant, mais cela n'a pas fonctionné. Comment supprimer le texte d'un noeud enfant?Comment afficher certains nœuds de texte dans XSLT mais pas les autres
Voici le XML:
<?xml version="1.0" encoding="UTF-8"?>
<document>
<item name="The Item">
<richtext>
<pardef/>
<par def="20">
<run>This text should </run>
<run>be displayed.
<popup><popuptext>This text should not be displayed.</popuptext></popup>
</run>
</par>
</richtext>
</item>
</document>
Voici ma feuille de style:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output indent="yes" method="html"/>
<xsl:template match="/*">
<html>
<body>
<table border="1">
<xsl:apply-templates/>
</table>
</body>
</html>
</xsl:template>
<xsl:template match="item">
<tr>
<td><xsl:value-of select="@name"/></td>
<td>
<xsl:apply-templates/>
</td>
</tr>
</xsl:template>
<xsl:template match="run">
<xsl:value-of select="." separator=""/>
</xsl:template>
<xsl:template match="popuptext" />
</xsl:stylesheet>