- From: <bugzilla@jessica.w3.org>
- Date: Tue, 13 Oct 2015 16:35:09 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29193 --- Comment #7 from Michael Kay <mike@saxonica.com> --- I would argue for the widest possible interpretation of the rules here. If a user writes the query processing=instruction() there are two possible interpretations: (a) they are doing a comparison between an element called "processing" and the result of a non-existent function called "instruction" (b) they have mistyped "-" as "=" A processor that reports (b) has probably guessed correctly what the real problem is, and we should certainly not require it to report the error as (a). A well-designed processor reports static errors that correctly guess what the user did wrong. If we encountered namespace-node(1) in a real query, my guess would be that the user has made two errors: they have used namespace-node in a dialect of the language where it isn't allowed, and they have given it a parameter that it doesn't accept. In an ideal world I would want to report both of those errors. The first one is more useful to report, because if they correct the second they still won't have a valid query. The spec allows me, however, to report any subset. I don't think we should be making a hard-and-fast distinction here between syntax errors and semantic errors. From a user perspective, the fact that text(3) is a syntax error while position(3) is a semantic error is not a meaningful distinction: we drew the boundary for our convenience, not for the user's benefit. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Tuesday, 13 October 2015 16:35:12 UTC