Bonjour,
J'effectue une tranformation xml/xsl avec le parser msxml en asp.
J'ai ajouté un espace de nommage implicite à mon document xml, et la
transformation ne s'effectue plus correctement...
J'ai beau cherché des explications concernant les namespace, je ne vois pas
pourquoi ça ne marche pas, j'ai essayé plusieurs choses, mais en vain.
xml.xml
<?xml version="1.0"?>
<root xmlns="http://matthieu.ricaud.free.fr">
<foo id="12">
test
</foo>
</root>
xsl.xsl
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" encoding="UTF-8"
omit-xml-declaration="yes"/>
<xsl:template match="root">
@id : <xsl:value-of select="@id"/><br/>
node() : <xsl:value-of select="."/>
</xsl:template>
</xsl:stylesheet>
transform.asp
<%@ Language=VBScript %>
<%Response.Buffer=true%>
<%Response.contentType = "text/html"%>
<%
Dim objXML, objXSL
set objXML= Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
objXML.async = false
objXML.load server.MapPath("xml.xml")
set objXSL= Server.CreateObject("MSXML2.FreeThreadedDOMDocument")
objXSL.async = false
objXSL.load server.MapPath("xsl.xsl")
Response.write "<textarea rows=50 cols=150>" & objXML.transformNode(objXSL)
&" </textarea><br/><br/>"
Set objXML=Nothing
Set objXSL=Nothing
%>
Le résultat attentu est :
@id : 12 <br/>
node() : test
J'obtiens :
test
Quelques précisions :
- l'espace de nommage implicite http://matthieu.ricaud.free.fr est "fictif",
disons que c'est une uri et que ce n'est pas ça qui doit poser problème
- le résultat de la transformation HTML n'est pas affichée directement mais
dans un textarea, histoire d'accèder au résultat réél de la transfo.
avez vous des idées ?
Merci,
Matthieu.
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Received on Fri Oct 21 12:51:25 2005