- From: Ian Davis <iand@internetalchemy.org>
- Date: Sat, 17 Jun 2006 11:08:46 +0100
- To: mark.birbeck@x-port.net
- CC: public-rdf-in-xhtml-tf@w3.org
On 17/06/2006 00:06, Mark Birbeck wrote: > Firstly, this is not how XSLT behaves, Ian. XSLT doesn't actually know > anything about namespace *declarations*--what it deals with are > namespace nodes. If you declare CC on the <html> element, then you > will have a namespace node for CC on *every* element in the document. > At any point in the tree you can copy all of the current in-scope > namespaces. That's what you did when you used xsl:copy-of, and that's > why you *should* get CC and FOAF namespaces copied through onto <head> > and <body>. That's what I get in all of the XSLT processors I have > tried. This is missing the original point of this thread. It's not the namespace nodes that I'm interested in, but the specific prefixes that are used in the resulting XML serialization and their binding to the CURIEs/qnames in attribute values. Can you reference the part of the XSLT specification that requires processors to preserve the prefixes of namespaces in the serialization? There's no mandate to do so for xsl:element or xsl:attribute. For example section 7.1.2 of XSLT1 [1] says: "XSLT processors may make use of the prefix of the QName specified in the name attribute when selecting the prefix used for outputting the created element as XML; however, they are not required to do so." Perhaps I'm missing something? Ian [1] http://www.w3.org/TR/xslt#section-Creating-Elements-with-xsl:element -- http://purl.org/NET/iand Blogging at... http://iandavis.com/blog Working on... http://directory.talis.com/
Received on Saturday, 17 June 2006 10:08:59 UTC