[xsl] Re: Output validation with XSLT 2.0

Subject: [xsl] Re: Output validation with XSLT 2.0
From: "Mukul Gandhi" <gandhi.mukul@xxxxxxxxx>
Date: Sat, 3 May 2008 21:06:57 +0530
If I modify the example (as given in my blog post) as follows (with
rest of the things remaining same), which seems more logical to me:

  <xsl:template match="/">
    <xsl:variable name="temp1">
      <x>
        <y />
      </x>
    </xsl:variable>
    <xsl:variable name="temp2">
      <p>
        <q />
      </p>
    </xsl:variable>
    <result>
      <xsl:copy-of select="$temp1" validation="strict" />
      <xsl:copy-of select="$temp2" validation="strict" />
    </result>
  </xsl:template>

Now I specify validation="strict" on xsl:copy-of instruction.

The output produced is (with Saxon-SA 9):

<?xml version="1.0" encoding="UTF-8"?>
<result xmlns:xs="http://www.w3.org/2001/XMLSchema";>
   <x>
      <y/>
   </x>
   <p>
      <q/>
   </p>
</result>

Why does the processor generate the namespace declaration,
xmlns:xs="http://www.w3.org/2001/XMLSchema"; on the <result tag ?

To avoid this I have to do, exclude-result-prefixes="xs" on the
xsl:stylesheet element.

On 5/3/08, Mukul Gandhi <gandhi.mukul@xxxxxxxxx> wrote:
> Hi all,
>  I posted my thoughts about this topic on my blog
> (http://mukulgandhi.blogspot.com/2008/05/output-validation-with-xslt-20.html).
>
> I would like to hear the list member's opinion about this example, and
> to know the best practices to import schemas, use namespaces etc. for
> this particular scenario.


-- 
Regards,
Mukul Gandhi

Current Thread