Avec fonction XSLT, Remplacer 1 caractère par plusieurs
Bonjour
Je souhaite à partir d'un fichier XML envoyer vers ma page la transformation avec XSLT
Mon fichier XML contient un objet de type texte.
Comme je ne peux y mettre directement de balise , je les remplace par un pipe (|)
Code:
1 2 3 4 5 6 7 8
|
<presta>
<code>RR</code>
<libelle>Repas Rotonde</libelle>
<descriptif>La Brasserie est ouverte du lundi au vendredi de 12h00 à 14h00|La réservation s'effectue au moins 48h ouvrées avant la prestation|Les repas non annulés avant le délai de prévenance de 48 heures ouvrées, sont facturés à l'Unité organisatrice.|Le choix de l'entrée, du plat et du dessert est individuel et se fait sur place|Les réservations sont limitées à 15 personnes : au-delà, les convives sont orientés vers une prestation en salon|</descriptif>
<actif>O</actif>
<lien/>
</presta> |
code de mon fichier xsl :
Code:
1 2
|
<xsl:variable name="Descriptif"><xsl:value-of select="LesChoix/presta/descriptif" /></xsl:variable> |
Mes pipes sont visibles, ne manque plus que leurs remplacements
La Brasserie est ouverte du lundi au vendredi de 12h00 à 14h00|La réservation s'effectue au moins 48h ouvrées avant la prestation|Les repas non annulés avant le délai de prévenance de 48 heures ouvrées, sont facturés à l'Unité organisatrice.|Le choix de l'entrée, du plat et du dessert est individuel et se fait sur place|Les réservations sont limitées à 15 personnes : au-delà, les convives sont orientés vers une prestation en salon|
code de mon fichier xsl.
J'ai tenté un remplacement direct, mais le translate ne remplace qu' 1 caractère pour 1 caractère; donc il doit remplacer pipe par <
Ce qui génère une erreur : error on line 62 at column 55: Unescaped '<' not allowed in attributes values
Code:
1 2
|
<xsl:value-of select="translate($Descriptif, '|', '<br/>')"/> |
Comment faire ?
Existe-t-il une autre fonction ?
Cordialement