Highly unfortunate notation

One large source of confusion over the XPath spec is that the data model's 

pseudo-code syntax, due to its use of prefixed function names, looks  like 

it's something that ought to be callable from an XPath expression. In 
particular, if you don't take time to read and understand Section 2, it 
looks like the constructors ought to be invokable from within an XPath 
expression.

This has caused at least two quite sophisticated W3C participants that I 
know of  to believe that XPath can produce new document fragments all by 
itself, rather than simply providing a base for XQuery/XSLT. I really 
can't blame them for the misunderstanding. The similarity between the 
syntax of the pseduocode and XPath itself really is *extremely* confusing; 

I misread it myself earlier today.

STRONG SUGGESTION: At the very least, replace the "dm:" prefix on the 
pseudocode with "DM-" -- or, better yet "PSEUDO-", to make very clear that 

these operations are *not* intended/promised to be directly invocable, or 
even necessarily directly coded at the implementation level. Yes, I know, 
section 2 states explicitly that this is all pseudocode descriptions of 
behavior. But when flipping between the Data Model/Functions and 
Operators/XPath/XSLT/XQuery documents, it is simply too easy to get 
confused about where you are and thus whether a given name is invocable 
syntax or pseudocode semantics.

(Ideally, I would suggest that -- given this problem of context -- a less 
code-like pseudocode be adopted, so the distinction is obvious at a 
glance. But changing the names to add a PSEUDO- flag would help 
tremendously!)

______________________________________
Joe Kesselman  / IBM Research



______________________________________
Joe Kesselman  / IBM Research

Received on Friday, 18 October 2002 12:32:30 UTC