Subject: Re: grouping based on string but with child nodes
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Mon, 13 Oct 2008 13:47:55 -0400
|
Hi,
At 11:48 AM 10/13/2008, David wrote:
plan a is to convert the whole lot into a string, either using a special
mode, or, say saxon:serialise. Then, once it's all a string you can use
analyze-string or tokenize() to split up on ||, thenyou can put the
markup back, again either with a special mode, or just use saxon:parse()
plan b is to first convert every || to an element say <split/> just
using an identity transfom plus a teplate matching "text()". Then once
it is all nodes, you can run a xsl;group-by with group-starting with
split, to split them up.
How hard the problem is depends to a great extent on whether the
delimiter (markup or pseudo-markup) can be buried deep in the node,
or whether it can split only children.
If the former, it can be necessary to flatten and then induce a new
hierarchy. (This is actually a special case of an overlap problem.)
But it appears that James only has to do the latter.
Cheers,
Wendell
======================================================================
Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
|