Le Jeudi 17 Avril 2003 10:58, Anonyme a écrit :
> Je débute en XSL et je suis entrain de tester la fonction copy.
> D'après la documentation, cette fonction permet de faire une copie du
> node courant.
Je ne sais pas quelle est votre documentation, en tous cas la recommendation
explique bien que xsl:copy NE recopie PAS le noeud à copier (il semble
necessaire de l'expliquer, effectivement ! ). En fait, elle ne recopie que les
noeuds indiqués dans un modèle à préciser.
Sur xmlfr vous trouverez une très bonne traduction de cette recommendation :
http://xmlfr.org/w3c/TR/xslt/
Et si vous voulez aller à la source :
http://www.w3.org/TR/1999/REC-xslt-19991116
>
> Je veux faire une copie du node commentaire et j'obtiens sur IE 6
> tous le contenu des autres nodes sauf celui là !
>
Les noeuds que vous voyez copiés sont dus aux traitements implicites du
processeur xslt.
>
> copy.xsl
> ---------
> <?xml version="1.0" encoding="iso-8859-1"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
> <xsl:template match="commentaire ">
> <xsl:copy>
> <xsl:apply-templates select="commentaire"/>
Ici, votre noeud courant étant déjà commentaire, cette selection par
"commentaire" ne veut plus rien dire. Il faudrait que vous ayez un noeud
"commentaire/commentaire".
A priori vous voulez recopier votre noeud à l'identique. Pour cela, cela ne
s'invente pas, il faut mettre :
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
L'expression sélectionne les attributs et les enfants du noeud courant.
>
> Sur IE 6
> ----------
> BIP (Version publications illimitée)Esteam SoftwareFRWin5 985,00BIP EDU
> (Version publications illimitée)Esteam SoftwareFRWin3 826,92
Et cela fonctionne même sur Mozilla / Linux ! La technologie XML avance sur
les postes clients, tant mieux !
--
SARL diaam informatique - 04 50 44 26 54
Ingenierie, développements de systèmes d'information
http://www.diaam-informatique.com
--
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)
Received on Thu Apr 17 15:46:05 2003