From: Cyril Jandia (cjandia@logfi.fr)
Date: 29/10/2002 - 09:25
Bonjour Laurent,
> -----Message d'origine-----
> De : xml-tech-bounce@xmlfr.org [mailto:xml-tech-bounce@xmlfr.org]De la
> part de THIBAULT Laurent
> Envoyé : mardi 29 octobre 2002 09:22
> À : xml-tech@xmlfr.org
> Objet : [xml-tech] Re: XSL-T
>
> Mon problème n'inspire personne ?!
Si, en fait; désolé pour la réponse tardive (hélas très occupé ;=) je viens
seulement de lire les messages de la liste depuis deux semaines... ceci peut
vous aider j'espère :
> > -----Message d'origine-----
> [...]En XSL-T, est-il possible de réaliser un traitement spécifique sur la
> > première occurrence d'une balise XML,
> > qui peut se retrouver à n'importe quel niveau dans l'arborescence source ?
> [...]
-- data.xml
<?xml version="1.0" encoding="iso-8859-1" ?>
<a>
...
<b>
<c>patata<X>tata</X>et patata</c>
</b>
...
<d> patata<X>tata</X>et patata</d>
...
<e>
<f>
<g>patata<X>tata</X>et patata</g>
</f>
</e>
...
</a>
-- test.xsl
<?xml version="1.0" encoding="iso-8859-1" ?>
<xsl:transform
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="xml" version="1.0" encoding="iso-8859-1" />
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="//X[generate-id()=generate-id(//X)]">
<xsl:copy><xsl:attribute name="premier">true</xsl:attribute>
<xsl:for-each select="@*">
<xsl:copy-of select="." />
</xsl:for-each>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
</xsl:transform>
-- result.xsl
<?xml version="1.0" encoding="iso-8859-1"?>
<a>
...
<b>
<c>patata<X premier="true">tata</X>et patata</c>
</b>
...
<d> patata<X>tata</X>et patata</d>
...
<e>
<f>
<g>patata<X>tata</X>et patata</g>
</f>
</e>
...
</a>
Cordialement,
--CJ
--
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
|