xml.xlst for each selectionner que les enfants
Bonjour,
Je cherche depuis un petit moment comment corrigé mon fichier xml.xlst afin de lire les enfants uniquement de ma liste dans mon for each mais je n'ai arrive pas, j'ai a chaque l'ensemble de mes données et je ne comprend pas pourquoi ?
J'ai par exemple un fichier xml avec une liste de client et pour chaque client sa liste de course. Je voudrais obtenir un autre fichier xml qui respecte le format que je cherche avec mes informations sauf que ma liste de course et cumulé pour chacun de mes clients.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| Ex XML
<Client>
<Id>1234</Id>
<Adresse>Ma petite rue de campagne</Adresse>
<Nom>Dupond</Nom>
<Prenom>Martial</Prenom>
<Courses>
<Produit>
<Article>REF1452</Article>
<Couleur>Rouge</Couleur>
<Quantite>1</Quantite>
<Prix>40</Prix>
</Produit>
<Produit>
<Article>REF123</Article>
<Couleur>Bleu</Couleur>
<Quantite>2</Quantite>
<Prix>20</Prix>
</Produit>
</Courses>
</Client>
<Client>
<Id>4710</Id>
<Adresse>Mon adresse a moi</Adresse>
<Nom>Durant</Nom>
<Prenom>Charle</Prenom>
<Courses>
<Produit>
<Article>REF789</Article>
<Couleur>Jaune</Couleur>
<Quantite>3</Quantite>
<Prix>150</Prix>
</Produit>
<Produit>
<Article>REF150</Article>
<Couleur>Gris</Couleur>
<Quantite>5</Quantite>
<Prix>10</Prix>
</Produit>
</Courses>
</Client> |
Mon fichier xml.xsld me renvoi les informations suites
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
<?xml version="1.0" encoding="utf-8"?>
<RecapCommande>
<Commande>
<Nom>Dupond</Nom>
<Prenom>Martial</Prenom>
<Adresse>Ma petite rue de campagne</Adresse>
<Articles>
<Produit>
<Article>REF1452</Article>
<Couleur>Rouge</Couleur>
<Quantite>1</Quantite>
<Prix>40</Prix>
</Produit>
<Produit>
<Article>REF123</Article>
<Couleur>Bleu</Couleur>
<Quantite>2</Quantite>
<Prix>20</Prix>
</Produit>
<Produit>
<Article>REF789</Article>
<Couleur>Jaune</Couleur>
<Quantite>3</Quantite>
<Prix>150</Prix>
</Produit>
<Produit>
<Article>REF150</Article>
<Couleur>Gris</Couleur>
<Quantite>5</Quantite>
<Prix>10</Prix>
</Produit>
</Articles>
</Commande>
<Commande>
<Nom>Durant</Nom>
<Prenom>Charle</Prenom>
<Adresse>Mon adresse a moi</Adresse>
<Articles>
<Produit>
<Article>REF1452</Article>
<Couleur>Rouge</Couleur>
<Quantite>1</Quantite>
<Prix>40</Prix>
</Produit>
<Produit>
<Article>REF123</Article>
<Couleur>Bleu</Couleur>
<Quantite>2</Quantite>
<Prix>20</Prix>
</Produit>
<Produit>
<Article>REF789</Article>
<Couleur>Jaune</Couleur>
<Quantite>3</Quantite>
<Prix>150</Prix>
</Produit>
<Produit>
<Article>REF150</Article>
<Couleur>Gris</Couleur>
<Quantite>5</Quantite>
<Prix>10</Prix>
</Produit>
</Articles>
</Commande>
</RecapCommande> |
Tous mes articles sont présent a chaque client au lieu d'avoir les articles propres a me client
Pour ma transformation j'ai mi le for each de cette façon : <xsl:for-each select="/Client/Courses/Produit"> j'ai essayé de compléter avec une * mais visible la syntaxe est mauvaise.
Auriez vous une idée du problème si vous plais ?