This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: submitting rtf contained within param
- To: "'xsl-list at mulberrytech dot com'" <xsl-list at mulberrytech dot com>
- Subject: RE: submitting rtf contained within param
- From: Joshua Allen <joshuaa at microsoft dot com>
- Date: Mon, 14 Aug 2000 22:18:38 -0700
- Cc: "'Matthew dot bentley at brookers dot co dot nz'" <Matthew dot bentley at brookers dot co dot nz>
- Reply-To: xsl-list at mulberrytech dot com
MSXML treats everything as a node-set, thus no extension function.
Most other processors have a node-set extension function (which is
how Saxon does things). My vote is "spec vagueries", and there
is talking of having the next XSLT spec formally require that
everything be a node set default. Now, since all processors
besides MSXML require you to explicitly convert the RTF to a
node-set first, and since MSXML doesn't have a node-set function
(node-set isn't in the spec) you need to be careful writing
portable XSLT. Unfortunately the relevant articles I do not see
in the archive yet, but Steve Muench gave an example that checks
contains(system-property('xsl:vendor'),'Microsoft') and
Evan Lenz pointed out that function-available('ms:node-set')
would also work (as used on page 462 of Michael Kay's book).
The second option may be preferred, because there is a possibility
that the next MSXML will just have a do-nothing node-set() extension
function for situations just as this..
I need to get this added to the FAQ..
Thanks,
Joshua
> -----Original Message-----
> From: Matthew Bentley [mailto:Matthew.bentley@brookers.co.nz]
> Sent: Monday, August 14, 2000 8:18 PM
> To: xsl-list@mulberrytech.com
> Subject: submitting rtf contained within param
>
>
> Okie dokie:
>
> I have a template call:
>
> <xsl:call-template name="main">
> <xsl:with-param name="gentext">
> <gentext>Data data data</gentext>
> </xsl:with-param>
> </xsl:call-template>
>
> And a called template!
>
> <xsl:template name="main">
> <xsl:param name="gentext" />
> <xsl:apply-templates select="$gentext" />
> </xsl:template>
>
> <xsl:template match="gentext" ... etc
>
> MSXML (3) doesn't fault this, submits the param to be matched -
> Saxon complains that this is a rtf not a node-set.
> Who's right? Or is it one of those terrible spec vagueries again?
>
> Thanks<
> matt
> ******************************************************************
> Warning: This email, including any attachments,
> is for the use of the intended recipient(s) only.
> Republication and redissemination,
> including posting to news groups or web pages,
> is strictly prohibited without the express prior consent of
> Brooker's Limited.
> ******************************************************************
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list