Bonjour à Tous,
je suis une réelle quiche en xml / xsl
et je dois créer un template.
le problème que je rencontre est le suivant,
toutes les balises qui se trouvent entre <![CDATA ]> se transforment en " < > ", j'ai fait des recherches, leurs traductions : less than & greater than.
OK.
d'après ce que j'ai compris,
en modifiant la ligne
en
les balises < & > retrouvent leur apparence.
ce qui est vrai, mais du coup, mon contenu n'est plus interprété comme étant du html.
Ensuite, j'ai cru comprendre qu'en insérant la ligne :
ça allait arranger les choses.
résultat : je crois ne pas avoir compris son utilisation.
Voila, c'est le 3ième jour que je me triture l'esprit avec ça,
c'est mon 3ième jour d'xml xsl et je crois que pour avancer, j'ai besoin qu'on m'indique la voie.
Voici mes codes :
Structure
Contenu
Template
Resultat :
je n'attends pas une réponse toute faite,
les conseils des profanes comme moi sont les bienvenus !
merci d'avance
Modifié par Guim (21 Oct 2008 - 15:03)
je suis une réelle quiche en xml / xsl
et je dois créer un template.
le problème que je rencontre est le suivant,
toutes les balises qui se trouvent entre <![CDATA ]> se transforment en " < > ", j'ai fait des recherches, leurs traductions : less than & greater than.
OK.
d'après ce que j'ai compris,
en modifiant la ligne
<xsl:output method="html" indent="yes"/>
en
<xsl:output method="text" indent="yes"/>
les balises < & > retrouvent leur apparence.
ce qui est vrai, mais du coup, mon contenu n'est plus interprété comme étant du html.
Ensuite, j'ai cru comprendre qu'en insérant la ligne :
disable-output-escaping="yes"
ça allait arranger les choses.
résultat : je crois ne pas avoir compris son utilisation.
Voila, c'est le 3ième jour que je me triture l'esprit avec ça,
c'est mon 3ième jour d'xml xsl et je crois que pour avancer, j'ai besoin qu'on m'indique la voie.
Voici mes codes :
Structure
<?xml version="1.0" encoding="UTF-8"?>
<structure name="content" mandatory="true">
<url name="UrlTitre" mandatory="true" options="false">
</url>
<text name="Titre" mandatory="true">
</text>
<url name="UrlContent" mandatory="true" options="false">
</url>
<image name="Image" mandatory="true">
<minwidth>75</minwidth>
<maxwidth>75</maxwidth>
<minheight>75</minheight>
<maxheight>75</maxheight>
</image>
<text name="Texte_gras" mandatory="true">
</text>
<text name="Texte" mandatory="true">
</text>
</structure>
Contenu
<?xml version='1.0' encoding='UTF-8'?>
<content>
<UrlTitre>
<href><![CDATA[http://www.saizenmedia.com/nightwish/]]></href>
<target><![CDATA[]]></target>
<javascript><![CDATA[]]></javascript>
</UrlTitre>
<Titre><![CDATA[Test]]></Titre>
<UrlContent>
<href><![CDATA[http://www.bouletcorp.com/blog/index.php?date=20070524]]></href>
<target><![CDATA[]]></target>
<javascript><![CDATA[]]></javascript>
</UrlContent>
<Image>
<src>72656</src>
<filename>test.jpg</filename>
<alt><![CDATA[alternative image]]></alt>
<size>3</size>
<width>75</width>
<height>75</height>
</Image>
<Texte_gras><![CDATA[oizeyfh ùprhfùsd pfhysd fùoshdfpO ]]></Texte_gras>
<Texte><![CDATA[dfg fd gdfg fdg sdfg dfg sdfg dfg ]]></Texte>
</content>
Template
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates select="//content" />
</xsl:template>
<xsl:template match="//content">
<xsl:text disable-output-escaping="yes"><</xsl:text>?xml version='1.0' encoding='utf-8'?<xsl:text disable-output-escaping="yes">></xsl:text>
<Module>
<ModulePrefs title="Titre" title_url="UrlTitre" ttl="3600" />
<Content type="html">
<![CDATA[
<UrlTitre>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="UrlTitre" disable-output-escaping="yes" /></xsl:attribute>
<xsl:value-of select="UrlTitre" disable-output-escaping="yes" />
</xsl:element>
</UrlTitre>
<UrlContent>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="UrlContent"/></xsl:attribute>
<xsl:value-of select="UrlContent" disable-output-escaping="yes" />
<Image><xsl:value-of select="Image/src" disable-output-escaping="yes" /></Image>
<Texte_gras><xsl:value-of select="Texte_gras" disable-output-escaping="yes" /></Texte_gras>
<Texte><xsl:value-of select="Texte" disable-output-escaping="yes" /></Texte>
</xsl:element>
</UrlContent>
]]>
</Content>
</Module>
</xsl:template>
</xsl:stylesheet>
Resultat :
<?xml version='1.0' encoding='utf-8'?><Module>
<ModulePrefs title="Titre" title_url="UrlTitre" ttl="3600"></ModulePrefs>
<Content type="html">
<UrlTitre>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="UrlTitre" disable-output-escaping="yes" /></xsl:attribute>
<xsl:value-of select="UrlTitre" disable-output-escaping="yes" />
</xsl:element>
</UrlTitre>
<UrlContent>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="UrlContent"/></xsl:attribute>
<xsl:value-of select="UrlContent" disable-output-escaping="yes" />
<Image><xsl:value-of select="Image/src" disable-output-escaping="yes" /></Image>
<Texte_gras><xsl:value-of select="Texte_gras" disable-output-escaping="yes" /></Texte_gras>
<Texte><xsl:value-of select="Texte" disable-output-escaping="yes" /></Texte>
</xsl:element>
</UrlContent>
</Content>
</Module>
je n'attends pas une réponse toute faite,
les conseils des profanes comme moi sont les bienvenus !
merci d'avance
Modifié par Guim (21 Oct 2008 - 15:03)