Bonjour,

J'ai un xsl qui parse un Xml vers un xsl-fo mais je n'arrive pas à afficher correctement. Les deux fichier sont encodé en UTF-8. Dans l'Xml, les caractère spéciaux sont codé comme suis :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<text line-feed="true" base-line="SUPER" symbol-family="BODY_TEXT" symbol-value="00AE"/>
En sortie, j'arrive au mieux à avoir &#x00AE; mais pas le caractère spécial ...
voici l'Xsl en question
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
	<xsl:template match="@symbol-value">
	  <xsl:param name="contents"/>	
			  	<xsl:variable name="rolo">
	  		<xsl:value-of select="."/>
	  	</xsl:variable>
 
 
 
	  	<xsl:variable name="rolo2">
		  	<xsl:value-of disable-output-escaping="yes" select="concat('&#x0026;#x',$rolo, ';' )"/>
	  	</xsl:variable>	  	
 
	  		<xsl:copy-of select="$rolo2"/>
<!-- <![CDATA[&#x]]>&#x0026;#x<xsl:value-of select="."/>; -->
	</xsl:template>
Que j'utilise le cdata ou les variable n'y change rien.

J'ai une solution de rechange, à savoir, faire un template par caractére spécial du genre <xsl:template match="@symbol-valuee[.='value']"> mais ce serait assez fastidieux à maintenir