
Envoyé par
tiscars
or il semble que mon template match avec tout ce qui passe.
Non, ce n'est pas ton template qui "matche" tout, c'est qu'il n'existe pas de template pour intercepter les cas que tu ne veux pas traiter. Ainsi, en présence d'un élément x:italic par exemple, le processeur XSLT ne va pas trouver de template qui le "matche" (en mode "text"), il va donc activer les templates par défaut (on a tendance à les oublier ceux-là). Or, ces templates par défaut se contentent de parcourir les éléments et d'envoyer en sortie les noeuds textuels.
Il suffit d'ajouter un template vide qui intercepte les cas que tu ne veux pas traiter, et qui va être prioritaire sur le template par défaut :
<xsl:template match="x:*" mode="text" />
Partager