From: Eric van der Vlist (vdv@dyomedea.com)
Date: 11/09/2001 - 09:31
Bonjour,
Jamal Arbib wrote:
> Bonjour a tous,
>
> J'ai besoin d'aide a propos du <br/>.
> A partir fichier xsp, je passe des requêtes a une BD et je récupere des
> données avec des <br/> transcrit en entités html (<br/>)
> ce qui fait que le xslt ne les considère pas comme des balises xml <br/>
> d'ou la transformation ne s'effectue pas.
> J'ai essayé dans mon xsl ceci :
> 1.
> <xsl:variable name="contenu"><xsl:value-of select="."/></xsl:variable>
> <xsl:variable name="br"><br/></xsl:variable>
Ici, votre variable est un fragment d'arbre contenant un élément vide
<br/> et non la chaine de caractères "<br/>"...
> <xsl:value-of select="translate($contenu, '<br/>' ,$br)"/>
Et ici, la fonction translate ne fait pas ce que vous attendez ;=) ...
>
> résulat de la variable : <br/>
>
> 2.
Cette deuxième piste est la bonne...
> <xsl:param name="contenu"/>
> <xsl:choose>
> <xsl:when test="contains($contenu, '<br/>')">
> <xsl:call-template name="2">
> <xsl:with-param name="contenu"
> select="$contenu"/>
> </xsl:call-template>
> </xsl:when>
> <xsl:otherwise>
> <xsl:value-of select="."/>
> </xsl:otherwise>
> </xsl:choose>
> </xsl:template>
>
> <xsl:template name="2">
Un nom de template est un "QNAME" et doit commencer par une lettre (pas
par un chiffre)...
A part cela (et les fragments de XSL que vous n'avez pas joint :)), vos
templates devraient fonctionner même si l'on peut en simplifier l'écriture.
Dans tous les cas, cela serait plus simple si vous donniez des exemples
complets avec les erreurs ou résultats obtenus!
Cordialement,
Eric van der Vlist
> <xsl:param name="contenu"/>
> <xsl:variable name="avantmot"><xsl:value-of
> select="substring-before($contenu , '<br/>')"/></xsl:variable>
> <xsl:variable name="apresmot"><xsl:value-of
> select="substring-after($contenu , '<br/>')"/></xsl:variable>
> <xsl:value-of select="$avantmot"/><br></br>
> <xsl:call-template name="1">
> <xsl:with-param name="contenu" select="$apresmot"/>
> </xsl:call-template>
> </xsl:template>
>
> En effet je n'arrive pas.
> Est ce que qlq pourra m'aider a trouver la solution.
> Je vous remercie .
>
> jamal arbib
>
> medisite.fr
>
--
Rendez-vous à Paris (XML pour l'e-business)
20010625T105500@xmlfr.org">http://xmlfr.org/actualites/agenda/#20010625T105500@xmlfr.org
------------------------------------------------------------------------
Eric van der Vlist http://xmlfr.org http://dyomedea.com
http://xsltunit.org http://4xt.org http://examplotron.org
------------------------------------------------------------------------
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|