the examples you provided will not run in the case of a function that
has 2 or more arguments that must be sequences.
yes you need to be able to model sequences of sequences to do that.
I started to do that (see:
<xsl:variable name="q" as="element()"><f:q/></xsl:variable>
which then isn't used, but I realised it was midnight and I ought to
stop playing and go to bed so posted what I had:-)
Note that that is a locally generated element (so with a distinct
identity) rather than the global variable with empty elements used
elsewhere.
If you model sequences of sequences by using XML element nesting then
you lose type information, another way is to model
[1,2,[3,4,5],[6,7,8]]
as something like
(<q'/>,1,2,<q''/>,3,4,5,<q''/>,<q'''/>,6,7,8,<q'''/>,<q'/>)
where q' q'' and q''' are three distinct element nodes with name q (each
appearing twice in the sequence, denoting the start and end of a
subsequence.
Given such a structure, with a bit of effort you can handle nested
sequences, as you look at the next item, if it's not the special quote
marker then you use the item, if it is a q then you grab the sequence up
to the next (only) other item that is "is" equal to that item.
David
--~------------------------------------------------------------------
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>
--~--