RE: [xsl] Best default value for a result tree fragment?

Subject: RE: [xsl] Best default value for a result tree fragment?
From: "Nick Fitzsimons" <nick@xxxxxxxxxxxxxx>
Date: Wed, 28 Sep 2005 13:49:49 +0100 (BST)
I stand corrected on several counts :-)

Thanks Michael,

Nick.


>> What do people think is the "best" way of specifying the
>> default value for
>> the parameters:
>>
>> <xsl:param name="contentRTF"></xsl:param>
>>
>> which gives a RTF containing nothing
>
> No: if there is no content and no select attribute, the value is a
> zero-length string. You can get an RTF consisting of a document node with
> no
> children by writing, for example
>
> <xsl:param name="contentRTF"><xsl:fallback/></xsl:param>
>
>>
>> <xsl:param name="contentRTF" select="" />
>>
>> which gives an empty nodeset (or something),
>
> No, that's an error: the select attribute must be an XPath expression, and
> this isn't
>
> or even
>>
>> <xsl:param name="contentRTF select="''" />
>>
>> which gives an empty string.
>>
>> I appreciate that, for all practical purposes, I should get the same
>> output from all of them, but was wondering which might be seen as the
>> canonical way of doing it, given that any *passed* value will
>> always be a
>> result tree fragment. Must have my strong-typing head on today :-)
>>
>
> I agree that logically, a document node with no children makes the most
> sense. In 2.0, the cleanest way of constructing this is
>
> <xsl:param name="x" as="document-node()">
>   <xsl:document/>
> </xsl:param>
>
> Michael Kay
> http://www.saxonica.com/

Current Thread