Subject: Namespace issues
From: "Joel Håkansson" <joel.hakansson@xxxxxx>
Date: Thu, 19 May 2005 16:54:00 +0200
|
I have two different versions of an XML-format. The first one contains
no namespace declaration and the second (newer) contains a value for the
default namespace in the root-element.
Thus to match elements in the newer spec. I have to write for example
match="myns:root" while in to match elements in the older spec. I can
use match="root".
If I already have an XSLT that transforms the older version and would
like to apply that to a document following the newer specs, I have two
options:
1) Remove the xmlns declaration from the source document before
applying the transformation
2) Rewrite the xslt, like
<xsl:stylesheet xmlns:myns="..."...
<xsl:template match="myns:root"...
Consequently, if I want a single stylesheet transforming both versions,
I have to use:
<xsl:template match="root|myns:root"> and so on
Have I got it right?
Joel
|