This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 4269 - Element strictly assessed but not assessed
Summary: Element strictly assessed but not assessed
Status: CLOSED FIXED
Alias: None
Product: XML Schema
Classification: Unclassified
Component: Structures: XSD Part 1 (show other bugs)
Version: 1.0/1.1 both
Hardware: All All
: P2 normal
Target Milestone: ---
Assignee: C. M. Sperberg-McQueen
QA Contact: XML Schema comments list
URL: http://lists.w3.org/Archives/Public/w...
Whiteboard:
Keywords: resolved
Depends on:
Blocks:
 
Reported: 2007-01-22 19:19 UTC by Sandy Gao
Modified: 2009-04-21 19:21 UTC (History)
0 users

See Also:


Attachments

Description Sandy Gao 2007-01-22 19:19:21 UTC
See:
http://lists.w3.org/Archives/Public/www-xml-schema-comments/2005JanMar/0034.html

According to constraint "Schema-Validity Assessment (Element)" in 3.3.4 of the structure spec,

"So for an element information item's schema-validity to be assessed all of the following must be true: ..."

and

"[Definition:]  If either case of clause 1 above holds, the element information item has been strictly assessed."

Consider
  <parent>
    <child/>
  </parent>
where <parent> has a corresponding element declaration or type definition (which means it's strictly assessed), but <child> matches a skip wildcard (which means it's not assessed).

Now for <parent>, clause 1 of "Schema-Validity Assessment (Element)" is satisfied, but clause 2 is not. The result is it's strictly assessed, but not assessed. Clearly not correct to any English speaker.

"Assessment attempted" has none -> partial -> full. It seems that the above "to be assessed" actually meant "to be fully assessed", which is also the fix I would offer.
Comment 1 C. M. Sperberg-McQueen 2007-02-28 01:38:46 UTC
I agree in principle that it would be strange if some elements were strictly
assessed, but not assessed.  We should change that if it's so.  I don't
currently think, however, that it is so.

The statement about strict assessment occurs within the constraintnote; that
is, I think that implicitly it's saying "If an element has been assessed, and
either case of clause 1 holds, then it has been strictly assessed."  That is,
I think that the intention was not that any element be strictly assessed
without being assessed.  

I do think we have a problem here, or several.

One symptom is that for ANY element which has been assessed, one or the other
case of clause 1 must hold.  So that as currently worded, I think the
definition of 'strictly assessed' is not doing its proper job.

Another problem is that the wording of clause 2 seems flawed.  I don't think
skipping the skipped children of an element should have the effect of meaning
that it is not assessed (as seems to be the consequence in the example shown
in the description of this bug).

We need to have a coherent story about levels of assessment, and then we need
to make the terminology of the spec follow that story.  In the example, I
think that the right way to talk about things is to say that the 'parent'
element has been assessed, and the 'child' has not been assessed.  Perhaps the
right answer is to make several changes:

(1) Change the introductory prose for SVA(E) to read "For an element to be
strictly assessed, all of the following must be true" (or better: an element
is strictly assessed if and only if all of the following are true").

I do not the suggestion in the description, to make the introductory prose
talk about things being "fully assessed", is the right solution.  SVA(E)
should be satisfied for elements with skipped children and grandchildren.  But
those elements are not fully assessed, even if they are strictly assessed.

(2) Delete the separate definition of 'strictly assessed', since it's now
defined by Schema Validity Assessment (Element).

(3) Modify clause 2 to make clear that what is required is (a) that for each
child or attribute with a govenring element or type, that child is to be
assessed, and (b) that each child or attribute which is skipped
(i.e. attributed to a skip wildcard) should not be assessed.

I had hoped that this would prove a simple issue that could go on a consent
agenda without a wording proposal.  Alas, I seem to have been wrong.

Comment 2 C. M. Sperberg-McQueen 2007-03-19 22:35:49 UTC
During the WG telcon on 16 March, the WG adopted a wording proposal
which addresses this issue by substantially as laid out in 
comment #1.

So I'm marking this as FIXED.

Sandy, as the originator, please change the status from RESOLVED
to CLOSED to indicate your assent to the decision; if you don't do 
so, in a couple of weeks someone else will on your behalf.