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

RE: how to use // starting from the root, when i am few step

Subject: RE: how to use // starting from the root, when i am few steps und er the root,
From: Tony Graham <tgraham@xxxxxxxxxxxxxxxx>
Date: Tue, 22 Aug 2000 16:11:57 -0400 (EST)
descendant or self
At 22 Aug 2000 19:06 +0200, Spychalski, Frank wrote:
 > ->-----Original Message-----
 > ->From: David Allouche [mailto:david@xxxxxxxxxxxxxxxx]
 > ->Subject: RE: how to use // starting from the root, when i am few steps
 > ->und er the root, 
 > 
 > Hi,
 > 
 > ->PS: As far as I know, select="///element... is not legal.
 > 
 > I didn't find anything that said /// is illegal. It works fine with my
 > version of Xalan...
 > And I think it's more logical to write /// than to write //, because for me
 > the first slash represents the root element and the second and third are the
 > short version for descendant-or-self, if you look at // you don't know (ok

'//' is the abbreviated syntax for '/descendant-or-self::node()/'.
See how the expansion contains two '/' that are used to delimit
location path steps, and that there is both an axis specifier
('descendant-or-self::') and a node test ('node()') between the
delimiters.  You need both an axis specifier and a node test to make a
minimal location path step in XPath's full syntax.  (Location path
steps also include zero or more predicates.)

Expanding '///' gets you '/descendant-or-self::node()//' (or
'//descendant-or-self::node()/').  Maybe Xalan is recursively
expanding any '//' to get you
'/descendant-or-self::node()/descendant-or-self::node()/', which is
legal full syntax, but I don't know that it's proper to use the middle
'/' in '///' twice like that.  If Xalan does evaluate '///' as
'/descendant-or-self::node()/descendant-or-self::node()/', the
expression is going to slow down your processing even more than the
single '//' does.

 > YOU do know, but the average user doesn't) if it's starting at the root
 > element or if it has the meaning of .//
 > But thats just my 2c.

It makes sense to me that "//" starts at the root because of its
leading "/", and it makes sense to me that ".//something" or, for
example, "PLAY//TITLE" doesn't.

Of course, the average user can also download the XSLT and XPath Quick
Reference at http://www.mulberrytech.com/quickref/.

Regards,


Tony Graham
======================================================================
Tony Graham                            mailto:tgraham@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc.                http://www.mulberrytech.com
17 West Jefferson Street                    Direct Phone: 301/315-9632
Suite 207                                          Phone: 301/315-9631
Rockville, MD  20850                                 Fax: 301/315-8285
----------------------------------------------------------------------
  Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================



 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.