xsl-list
[Top] [All Lists]

Re: Problem accessing child nodes of a variable nodeset

2003-09-16 09:52:43
Hi Dan,

At 12:37 PM 9/16/2003, you wrote:
Can anybody guess what I'm doing wrong? I suspect it may have something
to do with namespaces, as I'm having a few problems with these - I've
had to declare prefixes for all of my namespaces, so that the above
select, without variables, would look like:

        <xsl:value-of select="ws:webpage/title"/>

Ah -- is the title in the same namespace as its parent webpage? as in

<webpage xmlns="ws-namespace">
  <title>...</title>
  ...
</webpage>

If so, your supposition is correct.

I imagine that, with a variable giving a starting point in the node
tree, the namespace should be picked up automatically, but perhaps this
isn't the case for child elements?

No, it isn't picked up automatically. The name you give is the name it uses. The problem is, that given namespaces, the name you give may not be the name you want to give, even when it looks right. You need to say

<xsl:value-of select="$pageNode/ws:title"/>

The name of the variable does not need to be qualified in any way, but the name of its descendant includes its namespace, and this has to be accounted for in the stylesheet even if in the source, that namespace is given by default and no prefix used.

That's namespaces.

Cheers,
Wendell


======================================================================
Wendell Piez                            
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9635
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


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