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

RE: node selection problem

Subject: RE: node selection problem
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Wed, 10 Mar 2004 11:06:52 -0000
xsl node select
If you want to do this efficiently I would recommend using a processor that
offers "intersect", which is a built-in operator in XSLT 2.0 and available
as an extension in EXSLT for 1.0 processors.

Michael Kay

# -----Original Message-----
# From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx [mailto:owner-xsl-
# list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Jakob
# Sent: 10 March 2004 08:16
# To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
# Subject:  node selection problem
# 
# Hi,
# 
# I would like to retrieve all the nodes "X" inside one
# node, but before another node.  The second node is always
# a descendant of the first node.
# 
# book
# +-- chap
# +-- chap            <== inside this node
#     +-- X           <== select this node
#     +-- sect
#         +-- X       <== select this node
#         +-- sub     <== but before this node
#             +-- X   <== i.e. do not select this X node
#         +-- sub
#         ...
#     +-- sect
#     +-- sect
#     ...
# +-- chap
# ...
# 
# 
# This example is somewhat simplified, of course.
# Currently, my best bet is this:
# 
# <xsl:variable name="inside.this.node"
# select="/book/chap[2]"/>
# <xsl:variable name="before.this.node"
# select="$inside.this.node/sect[1]/sub[1]"/
# 
# <xsl:variable name="the.X.nodes"
#   select="$before.this.node/preceding::X[
#     ancestor::*[@ID=$inside.this.node/@ID]
#   ]"
# />
# 
# This method doesn't seem very efficient given that it must
# first select all preceding X nodes, and then filters this
# nodeset using the predicate that matches ID values.
# 
# As I have to do this many times over a big document, I
# would be interested in better ways.
# 
# Thank you,
# --
# Jakob.
# 
# PS: I am subscribed to the list digest, please cc: me.
# 
# 
# 
# 
#  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


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.