Monty wrote:
Despite reading posts in Google, I don't understand XPATH. Can someone
help me write an XPATH. From Google I think my problem is that the
default namespace does not have a prefix. I can't change this as I have
received this XML and I didn't create it. All I want to is retrieve the
PROJECTNAME from the following XML. I am typing this XML and XPATH into
this site
http://www.activsoftware.com/xml/xpath/
The XPATH that does not work is /PROJECTS/PROJECTNAME.
Thank you
Monty
<PROJECTS xmlns="http://www.companyname .com/project"
xmlns:xsi="http ://www.w3.org/2001/XMLSchema-instance">
<PROJECTNAME>
Project A
</PROJECTNAME>
<PROJECTBUDGE T>
27000
</PROJECTBUDGET>
</PROJECTS>
You have to supply namespace prefixes in xsl/xpath for default
namespaces in xml. It took a bit of fussing, but here's a solution:
<?xml version="1.0"?>
<xsl:styleshe et version="1.0"
xmlns:xsl="http ://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml" >
<xsl:template xmlns:pn="http://www.companyname .com/project" match="/">
<xsl:apply-templates select="pn:PROJ ECTS/pn:PROJECTNAME" />
<xsl:apply-templates select="pn:PROJ ECTS/pn:PROJECTBUDGE T" />
</xsl:template>
<xsl:template xmlns:pn="http://www.companyname .com/project"
match="pn:PROJE CTNAME">
Project Name: <xsl:value-of select = "." /><br />
</xsl:template>
<xsl:template xmlns:pn="http://www.companyname .com/project"
match="pn:PROJE CTBUDGET">
Budget: <xsl:value-of select = "." />
</xsl:template>
</xsl:stylesheet>
--
_______________ ______
Myron Turner
http://www.room535.org http://www.bstatzero.org http://www.mturner.org/XML_PullParser/