Bonjour,
J'ai une petite question concernant l'écritue d'un HTML via un XSL à partir de XML.
1. Le but:
créer un tableau html à partir de plusieurs XML pour ensuite importer le tableau dans Excel
2. Les données
Elles peuvent être sous la forme
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <Root> <blabla1></blabla1> <blabla2></blabla2> </Root>
Donc dans certains XML, il y a des données que l'on ne retrouve pas dans d'autres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 <Root> <blabla1></blabla1> <blabla2></blabla2> <blabla3></blabla3> <blabla4></blabla4> </Root>
3. Ce que j'ai fait
je construit le header, la première ligne du tableau et ensuite j'appelle
le template.
et mes templates sont de la forme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 <xsl:template match="Root"> <html> <head> <title>Review</title> </head> <body bgColor="#FFFFFF"> <table border="1"> <tr bgColor='#DDDDFF'> <td>Id</td> <xsl:for-each select="$TemplateFile/Titre"> <td><xsl:value-of select="@Name"/></td> </xsl:for-each> </tr> <xsl:apply-templates/> </table> </body> </html> </xsl:template>
idem avec blabla2, 3 et 4
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <xsl:template match="blabla1"> <td><xsl:value-of select="."/></td> </xsl:template>
4. Le problème
Ben si un XML ne contient pas blabla3 par exemple, dans ce cas, mon tableau est raccourci
et j'ai:
au lieu deId..........blabla1........blabla2........blabla3...........blabla4
id1...........bla1...........bla2............bla4
id2...........bla1...........bla2............bla3...............bla4
Quelqu'un aurait-il une idée à me proposer?Id..........blabla1........blabla2........blabla3...........blabla4
id1...........bla1...........bla2................................bla4
id2...........bla1...........bla2............bla3...............bla4
Merci beaucoup d'avance pour votre aide.
Amicalement.
Partager