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

Re: Venetian Blinds vs Garden of Eden patterns for industry

  • From: "Pete Cordell" <petexmldev@codalogic.com>
  • To: "XML-Dev Mailing list" <xml-dev@lists.xml.org>,"G. Ken Holman" <gkholman@C...>
  • Date: Thu, 28 Oct 2010 20:48:01 +0100

Re:  Venetian Blinds vs Garden of Eden patterns for   industry
Original Message From: "G. Ken Holman"

>>My XPath knowledge is very weak, but does that allow for matching 'b' in 
>>the 'tree' of:
>>
>>ns1:root/a/b  ?
>
> No, you only asked "b whose qualified parent is in namespace ns1"

Ah sorry.  Instead of 'parent' I should have used the word 'ancestor'.

More precisely what I should have said is that XPath can't express "b whose 
nearest qualified ancestor is in namespace ns1".  Sort of 
b[qualified-ancestor::ns1]!

I will only be too pleased if my statement turns out to be false.

Thanks,

Pete Cordell
Codalogic Ltd
Interface XML to C++ the easy way using C++ XML
data binding to convert XSD schemas to C++ classes.
Visit http://codalogic.com/lmx/ or http://www.xml2cpp.com
for more info

----- Original Message ----- 
From: "G. Ken Holman" <gkholman@CraneSoftwrights.com>
To: "XML-Dev Mailing list" <xml-dev@lists.xml.org>
Sent: Thursday, October 28, 2010 6:40 PM
Subject: Re:  Venetian Blinds vs Garden of Eden patterns for 
industry standards XML Schemas


>
> At 2010-10-28 18:13 +0100, Pete Cordell wrote:
>>Original Message From: "G. Ken Holman"
>>>At 2010-10-28 14:32 +0100, Pete Cordell wrote:
>>>>Hi David,
>>>>
>>>>It should be ns1:root/a/b/ns2:root/b as Philip says because in the 
>>>>scheme I described a and b were unqualified.  As such there's no 
>>>>difference in name between b in ns1 and b in ns2 as there would be if 
>>>>they were qualified.
>>>>
>>>>I think Philip is right about the issues.  It's down to the limitations 
>>>>in XPath expressibility.  You need to say something like: b whose 
>>>>qualified parent is in namespace ns1.  Sort of 
>>>>b[qualified-parent-ns()=ns1]!
>>>
>>>b[parent::ns1:*]
>>>
>>>... or if you are matching nodes:
>>>
>>>  ns1:*/b
>>
>>My XPath knowledge is very weak, but does that allow for matching 'b' in 
>>the 'tree' of:
>>
>>ns1:root/a/b  ?
>
> No, you only asked "b whose qualified parent is in namespace ns1"
>
>>I had guessed that ns1:*//b might be better, but I think that expression 
>>would match both 'b's in the Philip's 'tree' of:
>>
>>ns1:root/a/b/ns2:root/b
>>
>>Yours confused,
>
> I'm confused what you are looking for.
>
> Given the tree:   ns1:root/a/b/ns2:root/b
>
> ns1:*/b selects nothing
> ns1:*//b selects both b's
> b[parent::ns1] selects nothing
> b[parent::ns2] selects the lowest b only
>
> What *exactly* do you want to address, and from where will you be 
> addressing it?  In a select="" using an expression (and if so from which 
> context node)?  In a match="" using a pattern (which is a subset of XPath 
> expressions)?
>
> I haven't been following the entire thread ... I just bristle when I read 
> statements like "It's down to the limitations in XPath expressibility" and 
> writing such is like waving a red cape in front of me.  I know XPath is 
> *incredibly* expressive and in the classroom I try and teach students how 
> to understand the node tree intimately in order to compose the most 
> appropriate and least wasteful XPath expressions.  The XPath exercise is 
> most often the favourite exercise of the entire week in the class.
>
> I've not been following the discussion but that statement of yours jumped 
> out at me and quickly got my attention.
>
> I hope this helps.
>
> . . . . . . . . . . Ken
>
> --
> Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/x/
> G. Ken Holman                 mailto:gkholman@CraneSoftwrights.com
> Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/x/bc
> Legal business disclaimers:  http://www.CraneSoftwrights.com/legal
>
>
> _______________________________________________________________________
>
> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
> to support XML implementation and development. To minimize
> spam in the archives, you must subscribe before posting.
>
> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
> subscribe: xml-dev-subscribe@lists.xml.org
> List archive: http://lists.xml.org/archives/xml-dev/
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>
> 





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


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
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

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.