|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Identity Transform Grouping Question
Ethan,
You've found that preceding::, or any axis, refers to nodes' placement in the original hierarchy, and not to a sorted order. When we absolutely have to do this, we do it in two passes: first sort, then transform our results, where the sorted order is now the "original" order of the input. Such kinds of processing-the-results can actually be achieved in a single run of a stylesheet if a node-set() extension is used -- which is one reason why this is a confusing issue. Being able to turn a result tree into a node set for further processing is both really powerful, and liable to make people's brains spin off their bearings. Caution is warranted. Because this is so inconvenient, however, we also often use various tricks and methods to avoid having to do it. In your case, this might be achieved by doing the grouping *before* you do the sorting (though I haven't worked it out well enough to be certain of this). Select a representative node from each set you want to group (this is the essence of the Muenchian method); for each one, create a wrapper and inside it, pull the entire group -- only sorting at that point. This approach is more XSLT-friendly than processing them sorted and then trying to group them as you go by checking the preceding:: axis (which won't see which nodes have "already been hit"). This stuff is hard in XSLT 1.0 because it goes beyond the bounds of what the language was originally designed for, though not beyond what it is commonly used for. Cheers, Wendell At 12:08 PM 10/14/2004, you wrote: <<Node trees don't contain markup, so don't have tags, and you can't have half a node, so you can never insert a closing tag anywhere, in particular you can't insert one at the location of this comment. ====================================================================== 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 ======================================================================
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








