Concaténer les valeurs d'un même XPath
Bonsoir / Bonjour,
j'ai un fichier XML avec la structure suivante
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <Article>
<Id>4046</Id>
<name>Pop Up Petit prince - Nouvelle version</name>
<itemgroupid>01</itemgroupid>
<name>Livre</name>
<Auteur>
<AuteurId>2162</AuteurId>
<Prenom>Antoine</Prenom>
<Libelle>de Saint-Exupéry</Libelle>
<NumAuteur>1</NumAuteur>
</Auteur>
<Auteur>
<AuteurId>12878</AuteurId>
<Prenom>Levi</Prenom>
<Libelle>Henriksen</Libelle>
<NumAuteur>1</NumAuteur>
</Auteur>
</Article> |
Le but est de concaténer les prénom / noms des différent auteur en les séparant d'un " - ".
J'ai une solution, mais je donc prévoir le nombre maximum de cas.
Existe-t-il une structure de boucle pour faire la meme chose ?
mon code actuel :
Code:
1 2 3 4 5 6 7 8 9
| <COL><DATA><xsl:value-of select="concat(./Auteur[1]/Prenom,' ',./Auteur[1]/Libelle)" />
<xsl:if test="./Auteur[2]/NumAuteur > 0 ">
<xsl:value-of select="concat(' - ',./Auteur[2]/Prenom,' ',./Auteur[2]/Libelle)" />
</xsl:if>
<xsl:if test="./Auteur[3]/NumAuteur > 0 ">
<xsl:value-of select="concat(' - ',./Auteur[3]/Prenom,' ',./Auteur[3]/Libelle)" />
</xsl:if>
<xsl:if test="./Auteur[4]/NumAuteur > 0 ">
<xsl:value-of select="concat(' - ',./Auteur[4]/Prenom,' </xsl:if></DATA></COL> |
Merci par avance pour votre aide !