Cornelia's Weblog

my sporadically shared thoughts on, well, whatever is capturing my attention at the moment.

Archive for September, 2006

XML Spy bug: predicate evaluation order

The Xpath 2.0 specification describes predicates and specifically predicate ordering with

“In the case of multiple adjacent predicates, the predicates are applied from left to right, and the result of applying each predicate serves as the input sequence for the following predicate.”

Unfortunately XML Spy seems to have a bug. Given the following example, again taken from the Xpath 2.0 spec:

<bib><book><title>TCP/IP Illustrated</title><author>Stevens</author><publisher>Addison-Wesley</publisher></book><book><title>Advanced Programming in the Unix Environment</title><author>Stevens</author><publisher>Addison-Wesley</publisher></book><book><title>Data on the Web</title><author>Abiteboul</author><author>Buneman</author><author>Suciu</author></book></bib>

The Xpath expression (evaluated from the root) of bib/book/author[. = "Stevens"][1] should evaluate to a single author element with the value “Stevens” – that is, it should, by the definition cited above, evaluate to the same thing as (bib/book/author[. = "Stevens"])[1]. Unfortunately it does not – the former evaluates to two author elements with the value “Stevens”, the latter evaluates to a single author element with the value “Stevens”.Bummer.I am running XML Spy version 2006, sp2 – Enterprise Edition.

WS-Count

I’ve been spending a fair bit of my morning reading posts in “complexity of SOA” fray and it caused me to wonder, really, how many WS-* standards (approved or in the works) are there? First place I thought to look turned out to be the winner: Wikipedia has what is presumably a current list of web services specifications (which I originally got to through the redirected WS-* address). Wow – even more than I expected. To save you the trouble of counting, here are my stats:

  • Total: 61 (!!!)
  • WS-*: 36 (6 of which are draft specifications)
  • Categories: 12 *

* Directory Access, Service Description, Messaging and Function Calls, Basic Profile Specifications, Business Process Specifications, Security Specifications, Reliable Messaging Specifications, Transaction Specifications, Publish-subscribe Messaging Specifications, Basic XML Specifications, Other.Okay, I knew it was bad but this is utter ludicracy!