From: JM Destabeaux (hacjmd@worldnet.fr)
Date: 21/09/2000 - 14:56
Bonjour à tous,
Qui pourrait proposer un exemple de solution "purement" XSLT
(sans fonctions d'extension) au problème particulier suivant?
NB - après épluchage de la FAQ Pawson, des archives XSL-List, de
la bible de M. Kay, j'ai tout essayé (euh, peut-être pas *tout*,
justement): grouper par xsl:key, tester les following-siblings
avec generate-id(), faire des call-templates... je me retrouve
toujours confronté au même problème de la sélection logique des
éléments pertinents pour un "niveau" donné, et d'eux seuls. Et je
me rends bien compte que ce doit être la 10 000e question sur ce
sujet, mais là, je sèche vraiment.
EXEMPLE XML
--------------
<doc>
<p n="1">A</p>
<p n="Normal">B</p>
<p n="2">C</p>
<p n="Normal">D</p>
<p n="3">E</p>
<p n="Normal">F</p>
<p n="Normal">G</p>
<p n="3">H</p>
<p n="Normal">I</p>
<p n="2">J</p>
<p n="Normal">K</p>
<p n="1">L</p>
<p n="Normal">M</p>
<p n="2">N</p>
<p n="Normal">O</p>
</doc>
RESULTAT ATTENDU
--------------------
<doc>
<p1>
<p>A</p>
<p>B</p>
<p2>
<p>C</p>
<p>D</p>
<p3>
<p>E</p>
<p>F</p>
<p>G</p>
</p3>
<p3>
<p>H</p>
<p>I</p>
</p3>
</p2>
<p2>
<p>J</p>
<p>K</p>
</p2>
</p1>
<p1>
<p>M</p>
<p2>
<p>N</p>
<p>O</p>
</p2>
</p1>
</doc>
---------------------
Le nombre de niveaux, le nombre d'éléments de même "niveau"
en séquence, et le nombre de <p n="0"> sont quelconques.
Je SAIS qu'on doit y arriver, je suis même avide de "penser
différemment" ;+) mais je suis incrusté dans le mur.
Merci d'avance pour toute suggestion, surtout d'ordre
méthodologique !
-Jean-Marc Destabeaux
hacjmd@worldnet.fr
--
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:05 UTC
webmaster@xmlfr.org
|