W3C home > Mailing lists > Public > www-xml-schema-comments@w3.org > July to September 2008

[Bug 6015] New: [schema11] valid (and its derivations) vs assessment as used in text

From: <bugzilla@wiggum.w3.org>
Date: Tue, 02 Sep 2008 14:37:34 +0000
To: www-xml-schema-comments@w3.org
Message-ID: <bug-6015-703@http.www.w3.org/Bugs/Public/>


           Summary: [schema11] valid (and its derivations) vs assessment as
                    used in text
           Product: XML Schema
           Version: 1.1 only
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Structures: XSD Part 1
        AssignedTo: cmsmcq@w3.org
        ReportedBy: johnarwe@us.ibm.com
         QAContact: www-xml-schema-comments@w3.org

2.1 Overview of XSD says
As it is used in this specification, the term "schema-validity assessment" has
two aspects:
1 Determining local schema-validity, that is whether an element or attribute
information item satisfies the constraints embodied in the relevant components
of an XSD schema;
2 Synthesizing an overall validation outcome for the item, combining local
schema-validity with the results of schema-validity assessments of its
descendants, if any, and adding appropriate augmentations to the infoset to
record this outcome.
Throughout this specification, [Definition:]  the word valid and its
derivatives are used to refer to clause 1 above, the determination of local
Throughout this specification, [Definition:]  the word assessment is used to
refer to the overall process of local validation, schema-validity assessment
and infoset augmentation.

Comment 1: although it is in bold and called "the term", schema-validity 
           assessment is not rendered with the usual [Definition:] flag nor 
           does it appear in the glossary.

Comment 2: one might be tempted to think schema-validity assessment and 
           assessment are synonyms - I am keeping them separate, as I think you 

Comment 3: "validation" seems to me like a derivative of "valid".  According to 
           that reasoning, 'validation' should not be used in any context other 
           than local schema-validity.  This reasoning conflicts with its usage 
           in clause 2 (overall VALIDATION outcome).

Comment 4: If I try substituting definitions just within this excerpt above, it 
           becomes either circular or self-inconsistent.
> SVA = (LSV + OVO); OVO = LSV + SVA(desc) + InfosetAug; 
  assessment = L(S?)V + SVA(desc?) + InfosetAug
If I take it as written:
> SVA = (LSV + OVO); OVO = LSV + SVA(desc) + InfosetAug; 
  assessment = LV + SVA + InfosetAug
  - it's using a term (LV) that's not defined. 
If I take it as written and make the (small, likely) leap that LV should have
been LSV
> SVA = (LSV + OVO); OVO = LSV + SVA(desc) + InfosetAug; 
  assessment = LSV + SVA + InfosetAug
  - Solving for SVA, since it is used in two places
    (LSV + (LSV+SVA(desc)+ InfosetAug) = LSV + InfosetAug - assessment
  - further assuming the two LSV l-values collapse into one, and cancelling 
    like terms
    SVA(desc) = (-) assessment
    If it weren't for (desc) on one side only, I'd call it close enough.
If instead I take it as I think you probably meant it:
> SVA(x) = (LSV(x) + OVO); OVO = LSV(x) + SVA(desc) + InfosetAug(x+desc); 
> assessment(x) = LSV(x) + SVA(desc) + InfosetAug(x+desc)
  - This leads to 
    SVA(x) = assessment(x) = LSV(x) + SVA(desc(x)) + InfosetAug(x+desc(x))
    - I think it functions, but it's just my best guess at what I think you 
      meant (and fwiw, doing it this way was the only thing that led me to see 
      the descendants qualifier in the OVO text)
  - Of course, SVA as a term sounds a lot like a derivation of validity to me, 
    which would be a contradiction.
  - Since you did not say what you meant by derivation, no way to know if we 
    are interpreting that word similarly.

1.5 Documentation Conventions and Terminology - error entry
note 1: "Failure of an XML document to be valid against a particular schema..."
By your own definitions in 2.1, I should interpret this to mean local schema
validity of the document element, not the more conventional interpretation of
assessment of the document element?

1.5 Documentation Conventions and Terminology - error entry
note 2: Notwithstanding the fact that (as just noted) failure to be
Same question.  Since term is not defined (here, or in - non-normative, why? -
Glossary), I assume it is a derivation of valid.

2.2 XSD Abstract Data Model - last paragraph of section before 2.2.1
"ˇValidationˇ, defined in detail in Schema Component Details (§3), is a
relation between information items and schema components. For example, an
attribute information item is ˇvalidatedˇ  with respect to an attribute
declaration, a list of element information items with respect to a content
model, and so on. The following sections briefly introduce the kinds of
components in the schema abstract data model, other major features of the
abstract model, and how they contribute to ˇvalidationˇ."
So this is all about local schema-validity too?  Sounds like assessment to my
unwashed ears. Type Definition Hierarchy
"[Definition:]  A type defined with the same constraints as its ˇbase type
definitionˇ, or with more, is said to be a restriction.  The added constraints
might include narrowed ranges or reduced alternatives. Given two types A and B,
if the definition of A is a ˇrestrictionˇ of the definition of B, then members
of type A are always locally valid against type B as well."
By your own definitions in 2.1, I should interpret this to mean local schema
validity of the element, not the more conventional interpretation of assessment
of the document element?  I'm pretty sure this is your intent here, since you 
use a (new!) term: LOCALLY valid.  Seems like a pretty good one to use
throughout where local validity is the intent, IMO.
Strictly speaking though, as narrowly defined today, I should be saying
"locally valid" is definitionally redundant. Element Declaration
"Element declarations contribute to ˇvalidationˇ as part of model group
ˇvalidationˇ, when their defaults and type components are checked against an
element information item with a matching name and namespace, and by triggering
identity-constraint definition ˇvalidationˇ."
ˇvalidationˇ does link back to 2.1 clause 1, fwiw.
The contextual use often makes me think you are trying to define a new term,
for which the (lack of) [Definition:] rendering signals your presumed intent
NOT to do so. Particle
"Their validity does affect whether their parent is (recursively) valid as well
as locally valid."
Local schema-validity is probably your intent here, but "(recursively) valid"
leads to questions.

2.3 Constraints and Validation Rules
Schema Information Set Contribution
"[Definition:]  Augmentations to ˇpost-schema-validation infosetˇs expressed by
schema components, which follow as a consequence of ˇvalidationˇ and/or
In contrast to 2.1's definitions, this indicates that validation (local
schema-validity _?_something but no not assessment____) also augments the
2.1 and 2.3 need to be consistent about it, and 2.1 usage of augmentation
should likely link here.

3.1.3 The Mapping between XML Representations and Components
"items in a document being ˇvalidatedˇ."
Seems like this wants to be different: document element (if local is intended),
being assessed (if assessment), document element being validated or assessed
(if either, as I might imagine) Element Sequence Locally Valid (Complex Content)
"[Definition:]    A sequence of element information items is locally valid with
respect to a Content Type if and only if ..."
Here you define (on page 94 printed, when it was first used in the 20s)
"locally valid", then do so in an element-specific way.
You actually define it again later (two Glossary entries), and use the same
term in other places (with varying definitions, e.g. for attributes) without
ever defining it.  Unless this document is intended only for wg participants,
this does make it harder to read and understand unambiguously. Language Recognition by Groups
"By contrast, V(M) takes account of those constraints and includes only the
sequences which are ˇlocally validˇ against M."
-This- "locally valid" links to Principles of Validation against Groups
(so the link is 'as intended' I think).

3.10.1 The Wildcard Schema Component - {process contents} strict + lax
"There must be a top-level declaration for the item available, or the item must
have an xsi:type, and the item must be ˇvalidˇ as appropriate."
Both link to local schema-validity, hope that's your intent here. Assertion Satisfied clause 1.1
"Note: It is a consequence of this rule that the [attributes] and [children] of
E will be validated in the usual way."
Descendants sure makes it sounds like assessment.  No mention of descendants in
the definition of valid (or its derivations).

Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
Received on Tuesday, 2 September 2008 14:38:09 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:50:08 UTC