- From: <bugzilla@farnsworth.w3.org>
- Date: Thu, 08 May 2008 18:09:31 +0000
- To: public-sml@w3.org
- CC:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=5519 ------- Comment #5 from cmsmcq@w3.org 2008-05-08 18:09 ------- Folllowing up from comment #4; I agree that there are things to clarify here. (I think HT's query about [validation attempted] is a bit of a red herring, though. We neither change that property nor depend upon it; it's not clear that there is anything to clarify there.) We have agreed, I think, that it's important to be able to include invalid documents in a model. But we also say (section 8 of SML 1.1) that a model is valid only if all of its docouments are schema-valid (or more specifically not invalid!) at the root. I think this means that model validity includes XSD validity as a sort of subclause: if any documents are schema-invalid, then the model is not SML-valid. (Are we agreed so far?) If the model is not valid, it can still be conforming. But as suggested by Kumar in comment #4, there's another interaction. SML model validation depends on XSD schema validity assessment, because SML constraints apply on elements and attributes in a document if and only if they are governed by declarations or definitions that carry the relevant new properties. XSD 1.0 allows for some variation among implementations in some cases such as lax wildcards: an XSD validator is allowed but not required to check children, attributes, and descendants of an element that matches a lax wildcard and has no element declaration in the schema. Recovery from invalid input is also subject to variation. We can do either of two things. 1) Add a sentence (or a non-normative Note?) observing that as a consequence of the implementation-variability allowed by the XSD 1.0 spec, some implementation-variability is necessarily allowed for checking SML constraints. 2) Specify that for SML model validation, the XSD 1.0 processor used MUST do fallback to lax validation whenever possible (or MUST NOT). For what it's worth, XSD 1.1 has less variation in this area. And it's easier to understand the variability in 1.0 by looking first at 1.1 and the terminology it defines.
Received on Thursday, 8 May 2008 18:10:04 UTC