xsl-list
[Top] [All Lists]

Re: [xsl] Value of variable not appearing in the <xsl:otherwise> of xml:choose

2021-09-22 13:28:50
On Wed, Sep 22, 2021 at 05:46:12PM -0000, Michael Kay 
mike(_at_)saxonica(_dot_)com
scripsit:
Especially if you find Wendell's observation above covers your use
cases, it won't apply this time, but in general, I find that if I'm
struggling with xsl:for-each-group, I should -- and sometimes I even
do!  -- remember that xsl:for-each-group is not fully general. There
comes a time to write one's own recursive grouping function for this
particular case.

I've found very few use cases that it doesn't cover, 

I have only really found one; flattening block container elements which
allow mixed content directly in the block container and where the child
blocks may or may not be grouped with each other depending on which
child block it is and what siblings it has.

As I need to deal with this case fairly often, it gets more mental
prominence than perhaps it should.

though XQuery windowing offers a lot of options that
xsl:for-each-group doesn't, and perhaps they're useful to someone...
Such as starting a new group whenever @x on the current item is less
than @x on the previous item. Sometimes you can handle these by
binding a variable to the items that match the condition, and then
using this variable in your group-starting pattern.

Permit me to be thankful that I haven't had to deal with that one!

-- 
Graydon Saunders  | graydonish(_at_)gmail(_dot_)com
Þæs oferéode, ðisses swá mæg.
-- Deor  ("That passed, so may this.")
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

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