[Bug 5332] [UPD] Parentheses around () or fn:error()

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5332





------- Comment #3 from john.snelson@oracle.com  2008-01-07 12:17 -------
"My eyes! The goggles, they do nothing!" etc, etc.

I'm sure this is the tip of the iceberg, and many more horrible examples could
be derived. I agree with Michael that this is a horrible rule to understand as
a user, and nigh-on impossible to implement. I know for a fact that XQilla
can't tell the difference between () and (()) when checking this rule.

I think there are only two viable solutions to this problem:

1) Michael's updating / non-updating / neutral classification, along with a
firming up of the rules for how these properties are derived.

2) Adopt the Scripting Extensions approach to updating expressions, and allow
any non-updating expression to exist where an updating one is expected. This
requires a definition of how certain expressions handle mixed updating /
non-updating results, which we already understand reasonably well from SE.

I'm pretty sure that the rules for (1) will be hard to describe, and I consider
(2) to be the only philosophically sound solution, although it's obviously more
disruptive.

Received on Monday, 7 January 2008 12:17:30 UTC