Re: Une histoire de styles ...

Jean-Luc Mathieu <[email protected]>
Newsgroups gmane.text.xml.french.tech
Organization Virtualys
Message-ID <[email protected]>
Effectivement, cette méthode n'est pas mal du tout ...
Sinon, j'ai trouvé un autre moyen basé sur la méthode str:tokenize de 
exslt (qui a la bonne idée de très bien fonctionner avec un simple 
import XSL 1.0) :

...
<xsl:import href="str.tokenize.xsl"/>

<xsl:template match="p">
  ...
  <xsl:apply-templates select="str:tokenize(normalize-space(@class))" 
mode="style"/>
  ...
</xsl:template>

<xsl:template mode="style" match="token['rouge']">
  ...
</xsl:template>

<xsl:template mode="style" match="token['gras']">
  ...
</xsl:template>
...

C'est plus simple à l'usage ...


Eric van der Vlist a écrit :
> Bonjour,
> Le vendredi 10 février 2006 à 16:28 +0100, Jean-Luc Mathieu a écrit :
>   
>> Ok, donc comme je suis restreint à du XSL 1.0 sans extensions possibles, 
>> je crois que je vais faire l'impasse là-dessus.
>>     
>
> Vous pouvez utiliser la fonction "contains" de manière un peu
> créative :-)  :
>
> <xsl:template match="p[contains(concat(' ', normalize-space(@class), ' '), ' rouge ')]">
>   <!-- template "rouge" -->
> </xsl:template>
>
> Dans cette clause, je normalise d'abord les espaces pour que les
> tabulations et retour chariots (improbables mais tout de même possibles
> dans un attribut) soient remplacées par des espaces simples, le rajoute
> un espace en début et en fin de chaîne et je recherche "rouge" précédé
> et suivi d'un espace... 
>
> Cordialement,
>
> Eric van der Vlist
>
>   

-- 
--
*Jean-Luc Mathieu*
Virtualys - BP 32013 - 29220 Brest CEDEX 2 - Tél. : +33 (0)2 98 05 29 71
Ligne directe (coût d'un appel local) : +33 (0)8 70 72 52 82
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.