[Bug 5291] Add 'Consistent Reference Schemes' section under 4.2 Reference Semantics

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





------- Comment #3 from popescu@ca.ibm.com  2007-11-28 17:19 -------
Re comment #2

The actual problem is that section ‘4.2.5 Resolving an SML reference’
duplicates other section in the spec, such as :

- section 4.1.3 Unresolved SML Reference 
Bullet 2.a in 4.2.5 is covered under 4.1.3  >>If none of the recognized schemes
resolves, then R is unresolved.
- section 4.2.1 At Most One Target
Bullet 2.b in 4.2.5 is covered under 4.2.1 >>> When one or multiple recognized
schemes in a reference resolve to more than one target then the model is
declared invalid.

The new section, 4.2.2 Consistent Reference Schemes, introduced under this
defect is adding the two cases ( v2.3, v2.4 ) covered under the reference
proposal. These two cases are also covered under the ‘4.2.5 Resolving an SML
reference’ which makes 4.2.5 duplicate of this new section as well.

There are two options to solve this duplicate information:

Option 1:

Remove section 4.2.5 Resolving an SML reference 
    a.Keep 4.1.3 Unresolved SML Reference, 4.2.1 At Most One Target and 4.2.2
Consistent Reference Schemes the way they are now
    b. The only thing covered by 4.2.5 which is not described anywhere else is
bullet “2. If it recognizes R as using N > 0 schemes it supports, then it MUST
attempt to resolve R using all N schemes” 

Add this sentence at the beginning of 4.2 : “A model validator MUST attempt to
resolve an SML reference using all reference schemes of which the reference is
recognized as an instance. “


Option 2:

Remove sections duplicated by 4.2.5; which means remove 4.1.3 Unresolved SML
Reference, 4.2.1 At Most One Target and 4.2.2 Consistent Reference Schemes


Proposal :

Apply Option 1 above ( remove section 4.2.5 and add a new sentence to 4.2 )
If this change is applied the spec will look like this ( see also attached
doc):

4.2 Reference Semantics

A model validator MUST attempt to resolve an SML reference using all reference
schemes of which the reference is recognized as an instance. 

4.2.1 At Most One Target

Every non-null reference MUST target at most one element in a model. When one
or multiple recognized schemes in a reference resolve to more than one target
then the model is declared invalid. 

4.2.2 Consistent Reference Schemes

The model is declared invalid when a recognized scheme resolves to a target
that's different from the target resolved by another recognized scheme or when
a recognized scheme resolves and another doesn't. 

…
[Section 4.2.5 Resolving an SML reference - removed]

Received on Wednesday, 28 November 2007 17:19:15 UTC