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 >
|
|