xsl-list
[Top] [All Lists]

Re: Using document() and XPath to extract data from multiple namespac es in multiple files

2003-08-14 00:27:36

--- "SORENS,MICHAEL (HP-Boise,ex1)"
<michael(_dot_)sorens(_at_)hp(_dot_)com> wrote:
I am attempting to use xsltproc to process try.xml
with test.xsl. The files
history.xml and motivation.xml are read by test.xsl.
The issue is this:
while I am able to extract data with explicit
namespaces (cc:title and
cc:version in this case), when I attempt to extract
data from the unadorned
"foo" element or an attribute of the unadorned
"meta" element, I get
nothing. Any thoughts appreciated...

The elements "foo" and "meta" are in the default
namespace, i.e. in the "http://www.w3.org/1999/xhtml";.
Therefore, you have to declare a namespace having that
URI in the test.xsl, say, like this:

...
<xsl:template match="/files">
        <cc:myDoc
                xmlns:cc="stuff.com"
                xmlns="http://www.w3.org/1999/xhtml";
        
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
                xmlns:xhtml="http://www.w3.org/1999/xhtml";
                        >
        <cc:indexList>

....

and then change the XPath expressions to extract the
values correctly:

...
  <display-title><xsl:value-of
select="$extNode/cc:head/xhtml:foo"/></display-title>
  <keywords><xsl:value-of
select="$extNode/cc:head/xhtml:meta[(_at_)name='keywords']/@content"/>
...

Regards,
Armen

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>