From: Baruk Toledano (Baruk.Toledano@dess-ia.infop6.jussieu.fr)
Date: 14/06/2002 - 12:42
je passe d'un fichier xml (qui peut contenir des elements vides ) à un
autre fichier xml (qui peut contenir egalement des elements vides) (à
savoir de upcast à DocBook).
je voudrais ne pas utiliser une autre XSL pour filtrer les elements
vides !
Je voudrais aussi enlever les elements vides qui sont du style
<a>
<b\>
</a>
ou encore
<a>
<b>
<c\>
</b>
</a>
ces elements ne m'interessent !
Herve AGNOUX a écrit :
>
> Le 14 Jun 2002 Baruk Toledano a écrit :
>
> >
> > De façon général, comment empecher la génération d'élements vides ou
> > d'éléments ne contenant que des fils vides ?
> >
>
> Je vous propose le modèle suivant.
>
> A partir de ce document XML :
>
> <?xml version="1.0"?>
> <d>
> <i>zozo</i>
> <i/>
> <i>zuzu</i>
> </d>
>
> ... dans lequel vous observerez qu'il y a des balises "i" vides et
> d'autres non, utiliser le template XSL suivant pour faire quelque
> chose qui ressemble à ce que vous voulez :
>
> <xsl:template match="d">
> <xsl:for-each select="i">
> <xsl:variable name="txtelem"><xsl:value-of
> select="."/></xsl:variable>
> <xsl:if test="string-length($txtelem) > 0">
> -+<xsl:value-of select="$txtelem"/>+-
> </xsl:if>
> </xsl:for-each>
> </xsl:template>
>
> J'obtiens :
> -+zozo+- -+zuzu-+
>
> donc j'ai pas de "-++-" si l'élément est vide, Ce Qu'il Fallait
> Réaliser.
>
> J'imagine que votre document XML n'a pas de balise <i> ou <d>, et
> qu'il faudra que vous adaptiez cette idée à vos contraintes propres.
> N'hésitez pas à nous resoliciter si vous n'y arrivez pas. (plusieurs
> fois si nécessaire :-)
>
> --
> Sur le Web, tout de suite.
> Herve AGNOUX - diaam informatique
> 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)
--
Cordialement,
Baruk Tolédano.
In theory, there is no difference between theory and practice.
But, in practice,there is
--
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
|