From: christelle.gros@epfl.ch
Date: 10/05/2002 - 08:03
Bonjour,
j'aimerai générer quelque chose d'un peu tordu à partir d'un fichier xml avec
xslt et je n'y arrive pas pour le moment voici :
La portion de xml que je veux par exemple traiter
<HorizStruct total="6" prof="3">
<Cas ID="6" numScen="0">indic 0</Cas>
<Label valeur="Label 1" nbChild="4">
<Label valeur="Label 2" nbChild="2">
<Cas ID="1" numScen="1">indic 1</Cas>
<Cas ID="2" numScen="2">indic 2</Cas>
</Label>
<Cas ID="3" numScen="3">indic 3</Cas>
<Cas ID="4" numScen="4">indic 4</Cas>
</Label>
</HorizStruct>
Et en html j'aimerai obtenir une table comme suit :
------------------------------------------------------------------------
| | | Label 1 |
| | |---------------------------------------------------|
| | | Label 2 | | |
| | |------------------------| | |
| | Indic 0 | Indic 1 | Indic 2 | Indic 3 | Indic 4 |
------------------------------------------------------------------------
La première colonne vide est importante. La version que j'avais imaginé
nécessite la génération d'un document non valide au sens où les balises sont
réparties dans les tests
Algorithme imaginé :
déclare une variable prof qui contient la valeur de l'attribut prof de
HorizStruct
on applique le modèle sur HorizStruct
match Cas :
si c'est le premier fils et fils direct de HorizStruct
<tr>
<td rowspan=prof> nbsp; </td>
sinon si premier fils
<tr>
fin si
<td rowspan=(prof - #ancetres de type Label)> valeur du noeud </td>
si dernier fils
</tr>
fin si
match Label :
si c'est le premier fils et fils direct de HorizStruct
<tr>
<td rowspan=prof> nbsp; </td>
sinon si premier fils
<tr>
fin si
<td colspan = nbChild> valeur du noeud </td>
applique les modèles
si dernier fils
</tr>
fin si
Si quelqu'un a une idée ou peut simplement m'indiquer si c'est possible ou
non :)
merci
-------------------------------------------------
This mail sent through IMP: http://horde.org/imp/
--
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
|