xsl-list
[Top] [All Lists]

RE: Matching all elements in a namespace

2004-02-07 14:42:11

So, the obvious thing felt like something like...: 
<xsl:template match="namespace-uri() = 
'http://www.w3.org/TR/xhtml1/strict'">
            <xsl:copy-of select="."/>
</xsl:template>

...and I've tried numerous variations over this theme over the past 
couple of weeks, but it doesn't "work". 

When the obvious thing doesn't work, the time has come to read the spec.

You can match all elements in a namespace by writing

<xsl:template
match="*[namespace-uri()='http://www.w3.org/TR/xhtml1/strict']"

or by

<xsl:template match="xhtml:*"
xmlns:xhtml="http://www.w3.org/TR/xhtml1/strict";>

Note that this doesn't require the elements in the source document to
use the same prefix.

Whether <xsl:copy-of> is really what you want to do inside the template
rather depends on details of the requirement, which you haven't
explained very fully.

Michael Kay


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



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