xsl-list
[Top] [All Lists]

RE: RE: Unwanted namespace declaration in output

2006-03-01 11:32:14
First point is that a parameter becomes mandatory if you specify
as="xs:integer" with no default value. That's because the "default default"
value of "" is not a valid instance of this type, so there is effectively no
default, which is the same as specifying required="yes"

Thanks for that clarification.

Running with -T reveals that the offending call (which doesn't supply a
value for the parameter) is at line 31:

             <xsl:apply-templates select="name" />

Ouch! I overlooked that one. Thanks.

In my tests with both Saxon 8.7 and Saxon 8.6.1, it fails on the long source
document with or without the exclude-result-prefixes, and it succeeds on the
short source document with or without the exclude-result-prefixes. 

I have version 8.6. Here's the output from a command-line invocation of Saxon:

X:\>java  net.sf.saxon.T
Saxon 8.6 from Saxonica

Apparently you made some change between 8.6 and 8.6.1 that changed the behavior 
I experienced. Try the transformation with the older version and you will get 
the behavior I saw, i.e., failure with exclude-result-prefixes, "success" 
without it. However, with the current version being 8.7, that may be of 
interest only for archaeological reasons.

Thanks.

-- 
Charles Knell
cknell(_at_)onebox(_dot_)com - email



-----Original Message-----
From:     Michael Kay <mike(_at_)saxonica(_dot_)com>
Sent:     Wed, 1 Mar 2006 18:03:19 -0000
To:       <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Subject:  RE: [xsl] Unwanted namespace declaration in output


First point is that a parameter becomes mandatory if you specify
as="xs:integer" with no default value. That's because the "default default"
value of "" is not a valid instance of this type, so there is effectively no
default, which is the same as specifying required="yes".

Running with -T reveals that the offending call (which doesn't supply a
value for the parameter) is at line 31:

             <xsl:apply-templates select="name" />

In my tests with both Saxon 8.7 and Saxon 8.6.1, it fails on the long source
document with or without the exclude-result-prefixes, and it succeeds on the
short source document with or without the exclude-result-prefixes. The
difference between the two cases is that the short one doesn't contain the
data that causes the apply-templates call on line 31 to be activated.

I couldn't work out from your post exactly how you are suggesting that
exclude-result-prefixes affects the outcome. (It would of course be possible
to construct a stylesheet where exclude-result-prefixes does affect the
outcome, but it would be rather artificial).

Michael Kay
http://www.saxonica.com/



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--




--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>