RE: [xsl] How to process elements with and without namespaces

Subject: RE: [xsl] How to process elements with and without namespaces
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Sat, 31 Jul 2004 14:51:30 +0100
The best way is probably:

if (document has no namespace) {
  make a copy adding a namespace
}
do transform

You can make a copy, adding the namespace, with a variant of the identity
transform:

<xsl:template match="*">
  <xsl:element name="{local-name()}" namespace="xxx">
    <xsl:copy-of select="@*"/>
    <xsl:apply-templates/>
  </
</

Michael Kay


> -----Original Message-----
> From: Nestor Boscan [mailto:nestor.boscan@xxxxxxxxxx]
> Sent: 31 July 2004 13:52
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] How to process elements with and without namespaces
>
> Hi
>
> I would like to process XML files that it's document root
> element can have
> or not have namespaces:
>
> For example:
>
> XML 1:
>
> <root>
>   ...
> </root>
>
> XML 2:
>
> <root xml:ns="http://whatever.com.ve";>
>   ...
> </root>
>
> How can I write my XSL document to process both?
>
> Thanks in advance
>
> Regards,
>
> Nistor Boscan

Current Thread