[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Identity Transform Grouping Question

Subject: Re: Identity Transform Grouping Question
From: <ethan.kalfus@xxxxxxx>
Date: Thu, 14 Oct 2004 12:08:47 -0400
identity transform
<<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.
The way to put a group of nodes as child elements of another node is to first
create the wrapper node <foo> then inside that select all the elements that
should go in the group </foo>
>>
Perhaps my comments are misleading.  My intent _is_ to explicitly wrap each
unique group of <location> nodes -- that is, <location> nodes belonging to a
unique <office> node -- with a surrounding <office></office> node (I said
"tags" because my result tree is saved as an new xml file as input to another
process -- so I am conceptualizing what that resulting xml file will look
like, markup and all).  My comments include complete markup (opening and
closing tags) for this wrapper node; it is commented out because I could not
successfully generate the wrapper node for each unique group, but wanted to
show where the wrapper node should exist within the result tree.
<<actually I'm not sure _why_ you are using msxsl:node-set() >>
Some of the XSLT, including this technique, was provided to me by another
person on another site in order to assist me with using the Muenchian method
for grouping  <office> nodes within unique <city> nodes.  A somewhat general
explanation of my goal is that I want to sort the source tree according to
several sort levels, then perform an identity transform that would reverse the
parent-child relationship between the <city> and <office> nodes, and, finally,
group <office> nodes according to their English name
(office/names/name[@lang='en']), with each <office> node having one or more
new <location> nodes to wrap the location-specific information, thus
eliminating duplicate office/names nodes with the same name child. (I hope
this is somewhat helpful!)
As I said, the current XSLT works wonderfully (transforming a 3MB file in 2
seconds) until the point of detail where I need to eliminate the duplicate
office/names nodes.  My XSLT seems to fail based on the mistaken idea that the
use of preceding-sibling  works with sorted nodes, which I now know it does
not.  So, the question is...once I have a sorted node set, what technique can
I use to group those nodes according to a specific node value?  Specifically,
how do I ensure that the result tree contains office/names nodes with a unique
name child (determined by the 'lang' attribute value = 'en')?



Visit our website at http://www.ubs.com

This message contains confidential information and is intended only
for the individual named.  If you are not the named addressee you
should not disseminate, distribute or copy this e-mail.  Please
notify the sender immediately by e-mail if you have received this
e-mail by mistake and delete this e-mail from your system.

E-mail transmission cannot be guaranteed to be secure or error-free
as information could be intercepted, corrupted, lost, destroyed,
arrive late or incomplete, or contain viruses.  The sender therefore
does not accept liability for any errors or omissions in the contents
of this message which arise as a result of e-mail transmission.  If
verification is required please request a hard-copy version.  This
message is provided for informational purposes and should not be
construed as a solicitation or offer to buy or sell any securities or
related financial instruments.

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.