Subject: RE: XSLT Newbie - Need help with DOCTYPE, namespaces, and stuff
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 26 Apr 2007 12:40:23 +0100
|
Google for "XSLT default namespace" and you'll find lots of advice on this.
The short answer is: your elements are in a namespace, so to select them you
need to use prefixed names in your match patterns and path expressions, with
a prefix (any prefix will do) that's bound to that namespace.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Daniel Lo Nigro [mailto:dansoftaus@xxxxxxxxxxxx]
> Sent: 26 April 2007 12:27
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: XSLT Newbie - Need help with DOCTYPE,
> namespaces, and stuff
>
> Hi everyone,
> I'm making a XSLT stylesheet for XML files for SMF
> (simplemachines.org) modifications. Even though the XSLT
> stylesheet looks correct, it doesn't seem to work with the
> XML files. However, when I comment out the doctype (and
> remove the xmlns="" from the root element), the XSLT
> stylesheet works fine.
>
> Here's what the XML file looks like normally:
> ===
> <?xml version="1.0"?>
> <?xml-stylesheet href="package-info.xsl"
> type="text/xsl"?>
> <!DOCTYPE package-info SYSTEM
> "http://www.simplemachines.org/xml/package-info">
>
> <package-info
> xmlns="http://www.simplemachines.org/xml/package-info"
> xmlns:smf="http://www.simplemachines.org/">
> ...
> </package-info>
> ===
>
> And here's how I edited it to make it work:
> ===
> <?xml version="1.0"?>
> <?xml-stylesheet href="package-info.xsl"
> type="text/xsl"?>
>
> <package-info>
> ...
> </package-info>
> ===
>
> My question is, how do I make it work with XML files that
> have the doctype and xmlns defined?
>
> The XSLT stylesheet was originally made using Dreamweaver 8,
> but I eventually recoded most of it in a plain text editor.
>
> XSLT stylesheet:
> http://server.daniel15.com/smf/xml/xslt/package-info.xsl
> Working XML file:
> http://dev.dansoftaustralia.net/svn/modparser/trunk/xslt/packa
> ge-info.xml
> Non-working XML file:
> http://dev.dansoftaustralia.net/svn/modparser/trunk/xslt/packa
> ge-info2.xml
>
> Thanks :)
> -- Daniel15
>
> Send instant messages to your online friends
> http://au.messenger.yahoo.com
|