Re: [xsl] xsl:element name AVT

Subject: Re: [xsl] xsl:element name AVT
From: Jack Matheson <jack@xxxxxxxxxxxxxx>
Date: Wed, 02 Feb 2005 09:47:28 -0600
Ahh great, thanks for the speedy fix.

An embarassing bug, which happens only when the value of the name attribute
uses curly braces but is nevertheless a compile-time string literal. Having
established that the value is known at compile time, it then goes on to test
that the value as written (that is, "{'b:blah'}") is a valid QName.

A fix is at:

Michael Kay

-----Original Message-----
From: Jack Matheson [mailto:jack@xxxxxxxxxxxxxx] Sent: 01 February 2005 19:05
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] xsl:element name AVT

I'm getting some unexpected results in the following stylesheet, and was wondering if anyone could lend some insight:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl=""; xmlns:a="aa" xmlns:b="bb">
<xsl:template match="/">
<xsl:element name="{'b:blah'}"/>

When the name AVT gets expanded, I expect the prefix 'b' to be in scope at this point in the stylesheet.
Saxon 8.2 gives this error:

Error at xsl:element on line 4 of file:elem_avt_ns.xsl:
 Element name is not a valid QName

Xalan appears to give the result I this another case of "assuming XSLT 1.0 semantics in an XSLT 2.0 environment" ?

Current Thread