Re: [xml] XSLT question, regarding RSS

On Wed, Apr 28, 2004 at 09:30:47PM -0700, Colin Fox wrote:
It doesn't actually "successfully" execute, since the "item" node is

I meant that your XSLT script actually runs, and doesn't give an error.

I guess this is where I went wrong. I'm a little unclear on how the lack
of a namespace specifier works, then.

This default namespace doesn't have a name, so how am I supposed to
create an XSLT stanza that 'answers' to it, other than by not including
a namespace?

How do you specify an explicit namespace without a prefix? By explicit
prefix you mean:


where rss is the prefix, right? What is a prefix-less explicit namespace?

Namespace prefixes simply provide a way to associate a local name with a
namespace.  You can map any prefix you want to a particular namespace
and then use that prefix on elements, and the result will be equivalent
to any different possible prefix used.  For example:

<rss:item xmlns:rss=""/>

is exactly the same as

<item xmlns=""/>

is exactly the same as

<xyz:item xmlns:xyz=""/>

And so you could match the RSS item element with an XSLT template using
something like the following:

<xslt:template xmlns:xslt="";

or, equivalently:

<xsl:template xmlns:xsl="";

Both of which would match any of the three RSS items above.

The key point is that you must tell your XML what namespace things are
in using a prefix mapping (or the default namespace), else it will
presume that unprefixed elements are in the empty namespace (as in your
previous XSLT script).

Take care,


Attachment: pgpsSdUDplcBv.pgp
Description: PGP signature

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]