[XML/XSL] Comment mettre du html dans un document xml ?

Comment mettre du html dans un document xml ? [XML/XSL] - XML/XSL - Programmation

Marsh Posté le 25-03-2004 à 10:21:49    

Salut,
voila mon index.xml
 
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="index.xsl"?>
 
<root>
 <toto>
 <![CDATA[
 <b>ok c'est bon</b>
 ]]>
 </toto>
</root>
 
ensuite exploité via xsl :
<xsl:value-of select="txt" disable-output-escaping="yes" />
 
et ça marche très bien uniquement sous IE. Seulement j'ai lu dans la documentation XSL du w3 que "disable-output-escaping" est deprecated, ils recommandent les character-map.
Est-ce que quelqu'un peut m'aider à faire l'équivalent du code ci-dessus en respectant les recommandations ?
J'ai essayé, alors déjà ça marchait pas, il mappait rien du tout, et de plus c'est quand même beaucoup moins pratique pour taper son code html que de mettre un simple <![CDATA[... des idées ?
 
Mais bon dans Firefox, il me traduit pas en html le contenu de la balise de mon fichier xml, il l'affiche, peut être qu'il n'est pas implémenté "disable-output-escaping" sous mozilla...
help!
 
merci
    ANT

Reply

Marsh Posté le 25-03-2004 à 10:21:49   

Reply

Marsh Posté le 26-03-2004 à 22:54:22    

up

Reply

Marsh Posté le 27-03-2004 à 11:30:44    

C'est un vieille propriete, disable-output-escaping. Ca m'etonnerait que Mozilla l'implemente pas. Si tu filais des fichiers tests complets (ie ton XSL), on pourrait peut etre avoir une idee du pb.
A+,

Reply

Marsh Posté le 29-03-2004 à 14:20:27    

index.xsl :
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
 
 <xsl:output method="xhtml" version="1.1" />
 
 <xsl:template match="root">
   
 <html>
 <head>
 <title>titre</title>
   
 <meta http-equiv="content-type" content="text/html; charset=unicode" />
 <link href="web/style.css" rel="stylesheet" type="text/css" />
 </head>
 
 <body>
 <xsl:value-of select="txt" />
 </body>
 </html>
 
 </xsl:template>
</xsl:stylesheet>
 
en gros voila, j'ai enlevé plein de code qui me semblait inutile de poster.
 
index-fr.xml :
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="index.xsl"?>
 
<root>
 <links>
  <home file="i-fr">l</home>
  <cv file="c-fr">C</cv>
  <proj file="p-fr">ts</proj>
 </links>
 
 <txt>
  <![CDATA[
  Hello<br />
  <br />
  <p>
   blabla
  </p>
  ]]>
  toto
 </txt>
</root>
 
c'est l'intégralité du fichier ici.
 
donc avec <xsl:value-of select="txt" disable-output-escaping="yes" /> sous IE ça marche,
mais pas sous mozilla. De plus je préfèrerais pas utiliser cet attribut deprecated...
merci

Reply

Marsh Posté le 30-03-2004 à 12:54:29    

personne n'a jamais fait un truc semblable, je m'y prends mal ?
C'est pour faire un site multilingue :
un seul fichier xsl de mise en page et plusieurs xml, un par langue...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed