XLS de débutant - XML/XSL - Programmation
Marsh Posté le 08-10-2007 à 22:07:23
Salut, il faut que tu comprennes que tu peux voir ton XSL (pas XLS au passage) comme une sorte de template à quoi ressemblera le XML final. La différence avec d'autres templates tient du fait que les différentes parties du template sont découpées et stockées à la suite les unes des autres dans le fichier. Concrètement, ça veut dire que si pour chaque <node> du XML d'origine, tu veux traiter les deux éléments fils, il faudra le faire en même temps dans le for-each car ton XSL doit déjà être structuré comme la structure du XML final. Voilà ce qui devrait fonctionner (j'ai pas testé et j'ai ajouté une variable XSL pour gérer l'indexation) :
Code :
|
Marsh Posté le 08-10-2007 à 22:26:52
Merci TheRom !!!
Je comprends beaucoup mieux, mille merci !
Il semblerait que la ligne ajoutant 1 à la variable id ne fonctionne pas, voici ce que me dit le débuggeur :
"Description: xsl: param must be immediately within a template, function or stylesheet
Description: xsl: param must be the first element within a template"
Marsh Posté le 08-10-2007 à 23:36:27
oui en fait on peut pas utiliser les params comme ça, c'est fait pour autre chose
ceci devrait marcher :
Code :
|
Je suis pas tellement sûr de la syntaxe et si j'ai mal compris la notion d'axz de recherche, il se pourrait que ça compte à l'envers ... Bref essaie de te documenter sur XPath, c'est ce qui t'aidera à faire ce genre de choses dans beaucoup de cas
Marsh Posté le 09-10-2007 à 00:08:44
Hmmm, ça fonctionne super bien quand je l'utilise dans <xsl:value-of select="position()"/> mais pas directement après id=...
Je vais essayer de voir ça demain.
Merci beaucoup !!!
Marsh Posté le 09-10-2007 à 10:43:06
oui alors à la place de <node id=...>...</node>, essaie ceci :
Code :
|
en fait je crois aussi que <node id="{../position()}"> devrait fonctionner (avec les accolades)
Marsh Posté le 09-10-2007 à 15:25:19
C'est parfait !!! Vraiment, merci beaucoup. J'ai plus appris avec ton aide qu'en lisant trois tutoriels
Marsh Posté le 08-10-2007 à 21:28:44
Bonjour à tous,
J'ai trouvé votre forum en cherchant de l'aide pour l'élaboration de XLS.
J'ai une petite qui ne devrait pas être trop compliquée, mais qui me pose des problèmes.
Je voudrais transformer un xml de cette sorte :
En ceci :
Voilà ce que j'ai fait et qui n'a pas l'air de fonctionner (pas d'incrémentation d'id, pour commencer)...
Est-ce que quelqu'un a une idée de la manière de gérer ça ? Si oui, je suis preneur (merci !!!)