- From: <bugzilla@farnsworth.w3.org>
- Date: Fri, 09 May 2008 04:04:43 +0000
- To: www-xml-schema-comments@w3.org
- CC:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=5151 ------- Comment #3 from cmsmcq@w3.org 2008-05-09 04:04 ------- Some notes on these change proposals may be in order. 1 names are unique 2.5 "Within a given symbol space, names are unique," are -> MUST be (this is covered with a MUST in 3.1.1) Thanks. 2 all processors have 2.6 "All schema processors have appropriate attribute declarations" MUST have Thanks. 3 Propertis in the PSVI 3.1.1 "Any property not defined as optional is always present" MUST be 3.1.1 "not present are taken to have ·absent· as their value" MUST have These passages are describing the PSVI, not the API or data structure through which a (conforming) procesor exposes the PSVI. Although in 1.0 the PSVI is sometimes treated as an abstraction and sometimes as shorthand for the API or data structure that exposes that abstraction, we are trying to be more consistent in 1.1. The PSVI is information which arises during assessment, and to which we give names. The description of the PSVI does have normative force because processors are required to expose it accurately if they expose it at all, but these sentences are speaking not of the normative requirement on processors but on the nature of the abstraction which they may represent. The use of MUST seems wrong here, so I am not making any changes to these sentences. 4 "One of the following" 3.2.2 "and one of the following is true" one ?== exactly one, at least one, at most one? global comment, many instances of this case exist 3.4.2 CTD w/ complex content {content type} 2.1 "if one of the following is true" ... at least? exactly? 3.4.2 CTD w/ complex content item 5 [Def:] wildcard element "and one of the following" >=1? 3.4.3 item 2.1 "is one of the following" exactly one? 3.4.4 "E and T satisfy this constraint if and only if one of the following is true" 3.4.6 Schema Component Constraint: Derivation Valid (Extension) item 1.4, 3.4.6 Schema Component Constraint: Derivation Valid (Extension) item 1.4.3.2 3.4.6 Schema Component Constraint: Derivation Valid (Extension) item 1.4.3.2.2.3 3.4.6 Schema Component Constraint: Derivation Valid (Restriction, Complex) item 2, 3.4.6 Schema Component Constraint: Derivation Valid (Restriction, Complex) item 2.2.2, 3.4.6 Schema Component Constraint: Derivation Valid (Restriction, Complex) item 2.3.2, 3.4.6 Schema Component Constraint: Derivation Valid (Restriction, Complex) item 2.4.1 3.4.6 Schema Component Constraint: Type Derivation OK (Complex) item 2 3.9.4.2 Validation Rule: Element Sequence Accepted (Particle) items 2.3, 3 3.10.4 Wildcard allows Namespace Name "one of the following must be true:" This question has arisen elsewhere; clearly the current boilerplate wording is problematic. In many cases, the items in the following list are mutually exclusive, so that it doesn't really matter whether "one" means "at least one" or "exactly one" (it can't really mean "at most one", can it?). I would be happy to change the words to try to avoid having the question arise for attentive readers, but saying "at least one" or "exactly one" suggests that more than one of the items in the following list might be true. When that is not the case, the extra words would be misleading or confusing. At least one of the following MUST be true: 1 x < 1. 2 x > 10. In the wording proposal I am preparing, I have left alone those lists where it is fairly obvious that the items are mutually exclusive, and changed the wording where "at least one" or "one or more" is meant. I hope that suffices. 3.3.2, {target ns}, Element Decl "and one of the following" at least one This is one of those case where they can't both be true. 3.7.2 {model group} "among the [children] (there must be one)." exactly one Thanks. 5 MUST vs "is" or "apply" ... 3.2.3 "all of the following also apply" apply -> MUST be true (global) 3.2.6 "all of the following are true" MUST be (global) 3.4.3 "also apply" MUST be true 4.2.2 Schema Representation Constraint: Inclusion Constraints and Semantics "also apply" MUST be true 4.2.3 Schema Representation Constraint: Redefinition Constraints and Semantics "also apply" MUST be true 4.2.4.2 Schema Representation Constraint: Import Constraints and Semantics "also apply" MUST be true 3.6.3 Constraints on XML Representations of Attribute Group Definitions, Schema Representation Constraint: Attribute Group Definition Representation OK, "also apply" MUST be true XSD 1.0 had a number of lists of the form All of the following MUST be true: 1 The blort MUST be green. 2 The granfalloon MUST be blue. It is clear (on reflection) that in such cases the requirement is that the following propositions be true: (P1) The blort is green. (P2) The granfalloon is blue. But the wording of 1.0 (and the wording you suggest) says something slightly different: it MUST be the case that P1 and P2 MUST be true. This seems to be a statement in modal logic, making it the responsibility of the schema procesor to ensure that P1 and P2 are logically necessary, rather than contingent. But processors can seldom control which possible worlds they are run in; perhaps the conformance requirement is on the possible world, that it be one in which P1 and P2 are logically necessary rather than contingent. To avoid this, the spec has been systematically revised to ensure (modulo failures of consistency) that all lists of conformance requirements take either the form It MUST be the case that all of the following are true: 1 The blort is green. 2 The granfalloon is blue. or the form It is the case that all of the following are true: 1 The blort MUST be green. 2 The granfalloon MUST be blue. The change you suggest would put us back in the modal logic business, and as an editor of the spec I respectfully decline to go back there. 6 is performed / MUST be performed 4.2.2 "in which case no corresponding inclusion is performed." -> "in which case the corresponding inclusion MUST NOT be performed. Thank you. 7 The approriate case 3.3.2, {target ns}, Element Decl "appropriate case" ...do not remember the semantic for "case" being defined, but given that different languages have this keyword with subtly different semantics (does one bail after satisfying one of the conditions or continue to evaluate the rest), probably one you need to define in 1.5 etc. I took it to me stop after first true. In this case, it's clear on examination that only one of the items can be true at a time. 8 One or two components 4.2.3 Schema Representation Constraint: Individual Component Redefinition "Corresponding to each non-<annotation> member of the [children] of a <redefine> there are one or two schema components in the <redefine>ing schema:" needs to be re-cast into RFC2119 style. It seems like it wants the appropriate CASE amongst the following. You may be right. But the XSD 1.0 component story so thoroughly confuses me that I am loath to try to revise this passage.
Received on Friday, 9 May 2008 04:05:16 UTC