H
Howard
Hi,
I am using a very simple xslt file to get info from an xml document.
The problem seems to me to be that the xml doc uses a namespace, and I don't
know how to set up my xslt to recognize it correctly. If I remove the
namespace specification from the xml, I can query the node I want perfectly.
But with that namespace in there, it fails. Can someone help?
Here's a simpilified version of the xml document, with that namespace stuff:
<?xml version="1.0" encoding="UTF-8"?>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
some stuff I don't care about
</SIgnedInfo>
<SignatureValue>
the stuff I want
</SignatureValue>
</Signature>
and here's my xslt file:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xslutput method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:element name="test1">
<xsl:value-of select="/Signature/SignatureValue"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
If I remove that xmlns part of the xml (which isn't really an option when
trying to use the real file), it works fine. But as it is above, it gives
me nothing. I'm pretty sure I have to specify the namespace somehow in the
xslt, but how, and where?
Thanks much,
Howard
I am using a very simple xslt file to get info from an xml document.
The problem seems to me to be that the xml doc uses a namespace, and I don't
know how to set up my xslt to recognize it correctly. If I remove the
namespace specification from the xml, I can query the node I want perfectly.
But with that namespace in there, it fails. Can someone help?
Here's a simpilified version of the xml document, with that namespace stuff:
<?xml version="1.0" encoding="UTF-8"?>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
some stuff I don't care about
</SIgnedInfo>
<SignatureValue>
the stuff I want
</SignatureValue>
</Signature>
and here's my xslt file:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xslutput method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<xsl:element name="test1">
<xsl:value-of select="/Signature/SignatureValue"/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
If I remove that xmlns part of the xml (which isn't really an option when
trying to use the real file), it works fine. But as it is above, it gives
me nothing. I'm pretty sure I have to specify the namespace somehow in the
xslt, but how, and where?
Thanks much,
Howard