Transformer des requêtes SOAP avec XSL
Bonjour, j'aimerais avec une feuille de style XSL pouvoir parser une requête SOAP.
Mais les préfixes de namespaces me dérangent.
Par exemple voici une requête
Code:
1 2 3 4 5 6 7 8
| <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://localhost/wsdl/orange.xsd">
<soapenv:Header/>
<soapenv:Body>
<tag1>
</tag1>
</soapenv:Body>
</soapenv:Envelope> |
J'aimerais dans mon template faire un match directement sur la balise tag1.
Merci pour votre aide
J'y arrive en faisant ceci
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://localhost/wsdl/orange.xsd"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="soapenv:Envelope/soapenv:Body/tag1/">
<request>
<customerId>
<xsl:if test="soapenv:Envelope/soapenv:Body/tag1/@ParameterName='FILTERVALUE'">
<xsl:value-of select="soapenv:Envelope/soapenv:Body/tag1"/>
</xsl:if>
</customerId>
</request>
</xsl:template>
</xsl:stylesheet> |
Par contre tous les balises que je souhaite créer n'apparaissent pas dans le fichier de sortie, ce qui me donne le fichier suivant.
Code:
1 2
| <?xml version="1.0" encoding="UTF-8"?>
1234 |
Alors qje je devrais avoir ceci :
Code:
1 2 3 4 5 6
| <?xml version="1.0"?>
<request>
<customerId>1234</customerId>
</request> |
Merci pour votre aide