Cela peut-être utile pour, par exemple, retirer des balises de mise en forme superflues, ou pour extraire une information condensée.
Exemple avec des balises i, u et b (balises HTML de mise en forme)
Le XML | <?xml version="1.0" encoding="UTF-8"?>
<R>
<chapitre num="1" titre="exemple" >
<para>Ceci est un <b>exemple</b> de texte que l'on souhaite purger
de ses <i><u>balises </u></i>de style <i><u><b>i,b et u</b> </u></i></para>
</chapitre>
</R> |
Le XSLT | <?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="node()">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of select="."/>
</xsl:template>
<xsl:template match="@*">
<xsl:attribute name="{name()}"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="i|u|b">
<xsl:apply-templates select="node()"/>
</xsl:template>
</xsl:stylesheet> |
Le Résultat | <?xml version="1.0" encoding="UTF-8"?>
<R>
<chapitre num="1" titre="exemple">
<para>Ceci est un exemple de texte que l'on souhaite purger
de ses balises de style i,b et u </para>
</chapitre>
</R> |
|