Re: [xsl] Generating schema target namespaces from XSLT

Subject: Re: [xsl] Generating schema target namespaces from XSLT
From: Dan Vint <dvint@xxxxxxxxxxxxxx>
Date: Sat, 09 Nov 2002 10:50:34 -0800
This did the trick as well as a need to upgrade from saxon 5.4 to 6.4.1

thanks
..dan

At 11:00 AM 11/9/2002 +0000, you wrote:
On Fri, 08 Nov 2002 15:31:57 -0800, Dan Vint wrote:

>I was just now able to give this a try, but unfortunately it doesn't work.
>I wasn't exactly sure of all the changes that might have been needed so I
>tried the following for the first solution offered:
>
Sorry, there is a mistake in my post:

I wrote:
>> <xsl:variable name="ns-node">
>> <xsl:element name="ns-element" namespace="{$target}"/>
>> </xsl:variable>
>>
>> <xsd:schema>
>> <xsl:copy-of
>>select="saxon:node-set($ns-node)/ns-element/namespace::*[local-name()='' ]"/>


I put 'ns-element' so that you could follow the logic.  Big mistake,
because 'ns-element' only matches elements in no namespace.
ns-element *is* in a namespace, so nothing gets copied.  When I tested
it I saw the namespace declaration copied from the stylesheet...

Instead, write
select="saxon:node-set($ns-node)/*/namespace::*[local-name()='']"/>

Tested using Saxon 6.5.1. Properly this time!

Watch out for one extra wrinkle though: things get complicated again
if you declare a namespace with an empty prefix on the stylesheet:
Saxon tries to copy the node twice, and objects.  You might want to
use a prefix because of this.

Regards,
Trevor Nash

--
Traditional training & distance learning,
Consultancy by email

Melvaig Software Engineering Limited
voice:     +44 (0) 1445 771 271
email:     tcn@xxxxxxxxxxxxx

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


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


Current Thread