[Bug 5063] Inheritance of some SML reference constraints

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





------- Comment #17 from sandygao@ca.ibm.com  2008-02-14 15:05 -------
This is significant improvement. A few additional comments:

1. Nested MUST. In 5.3, "... MUST be true: 1. ... MUST be true".

Schema 1.0 had similar problems and 1.1 only uses MUST at the top level and use
is/are in the sub-bullets.

2. The new section 5.3, bullet 1 has "one of the following MUST be true". This
is not correct: bullet (b) is always true, then (1) is always true. There are 2
ways to fix it.

The easy fix is to replace "one of the following" with "the appropriate case
among the following" (this is how the schema spec handles similar rules).

Alternatively (which I prefer) is to use words that were in 5.1.2.2. That is

   1. For {target required}, if BV is true, RV is true.

I would also prefer to collapse (a) and (b) in (2) and (3) to use the original
5.1.2.2 wording, but can live with the current formulation.

Note that 2.a is redundant, because it's covered by 2.b. (Global elements are
in their own substitution groups.)

3. The new section 5.4.2.3 refers to 5.1.2.3 and 5.2.1.3 for validation rules.
Those sections expect {target*} on element declaration, but here we are getting
values from the complex types.

Maybe we can add in 5.4.2.3 "as if the matching element declaration has the
corresponding constraint with that vaue", to fix this disconnection.

Received on Thursday, 14 February 2008 15:05:27 UTC