xsl-list
[Top] [All Lists]

Re: [xsl] XPath 1.0 challenge: select all XML Schema element declarations with type string

2015-07-24 12:28:06
Thanks for the outstanding responses.

Let's summarize:

1. The problem cannot be solved in XPath 1.0. 

2. XPath 1.0 is not "relationally complete" in Codd's sense.

3. The following two XPath expressions come close to solving the problem. 
However, sometimes they return an element which should not be returned and 
sometimes they don't return an element which should be returned.

(a) //xs:element[(@type = 'string') or (substring-after(@type, ':') = 'string')]

(b) //xs:element[@type= concat(substring-before(name(),'element'),'string')]

I must use XPath 1.0.  So which of those two XPath expressions would you 
recommend I use? 

Michael says that (b) is a 99.9% solution. Is (a) less than, greater than, or 
equal to 99.9%? That is, which of (a) or (b) will work correctly most often?

/Roger
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>