Bonjour,
J'ai le XML suivant :
Si client.email est égal à "testeur@hotmail.com", je voudrais en XSLT :
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
19
20 <?xml version="1.0"?> <data> <order> <livraison> <pays>FR</pays> <lastname>Michel</lastname> <firstname>christophe</firstname> <address1>route de troubadour</address1> <postcode>84110</postcode> <city>Vaison</city> <phone>0613157443</phone> </livraison> <client> <lastname>Michel</lastname> <firstname>christophe</firstname> <email>testeur@hotmail.com</email> </client> </order> </data>
- vider le node livraison (ou remplir les sous nodes par "")
- modifier client.lastname par "Dupont"
Peut être ai-je un problème de logique
Je parviens bien à identifier si mon email matche ou pas, mais comme à cet endroit, je ne peux pas définir de variable globale, je sèche.
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
19
20 <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output omit-xml-declaration="yes" indent="yes"/> <xsl:strip-space elements="*"/> <xsl:include href="liste_email.xsl" /> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> <xsl:if test="contains(email, '@')"> <xsl:if test="contains($mesemails, email)"> <!-- quoi faire .... --> </xsl:if> </xsl:if> </xsl:template> </xsl:stylesheet>
Avez vous une solution ?
Merci.
Partager