[Bug 3220] Terminology: "must"

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





------- Comment #3 from mike@saxonica.com  2007-10-17 09:06 -------
>I think the editors draft of 2.4 is fine as it is regarding schema document conformance, and I don't think we should say anything about "errors" there.

I think you are referring to 2.4 in Part 1 (the bug was raised against part 2).

What we established is that the three phrases:

* A schema document (or its author) MUST NOT do X
* A schema document is in error if it does X
* A schema document is not conformant if it does X

are all used in the specification, and are to be treated as synonymous. Are you
disagreeing with that?

I think it would be useful if we could say it the same way consistently, but
agreeing that the three formulations are synonymous is a good start.

(Actually I think there's a fourth usage that creeps in occasionally: there are
references to constructs in a schema document being "valid", particularly in
relation to the syntax of regular expressions.)

> Whether that's an error for one purpose or another is mostly beyond the scope of this Recommendation,

You seem to be overlooking that Part 2, in particular, makes frequent use of
language like: "It is an ·error· for ·minInclusive· to be greater than
·maxInclusive·."

>Regarding processors working on non-conforming schema documents: ... beyond the scope of this specification.

You seem to be suggesting that although the spec is littered with rules like
"It is an ·error· for ·minInclusive· to be greater than ·maxInclusive·.", it's
perfectly OK for a processor to ignore such rules and not enforce them. I find
it hard to believe you can really mean that. It throws interoperability out of
the window. We can chuck away half the test suite, which is written to verify
that processors reject erroneous schema documents.

But reading your comment more carefully, perhaps what you are suggesting is
that there is an animal called a "schema document processor", and that the
obligation to report errors in a schema document is placed on a schema document
processor, which is not the same thing as a schema processor? This would
suggest we need to identify a new entity that can be the subject of conformance
statements.

>Regarding errors in born-binary components: 

If we don't define an interface for constructing such beasts, then I think it's
meaningless to discuss what happens if the contract for such an interface is
broken.

Michael Kay

Received on Wednesday, 17 October 2007 09:06:41 UTC