[XSCD] QA review of XML Schema: Component Designators (29 March 2005, LC)

Hi,

Here comes a review of the march 2005 last call of XML Schema Component
Designators:
http://www.w3.org/TR/2005/WD-xmlschema-ref-20050329/

It's partly based on the QA specification guidelines [1].

A) Section 3.1 EBNF notation of the Schema Component Designator Syntax
directly links the definition of URI to RFC 2396 [2]; I think this is
problematic for various reasons:
* RFC 2396 has been obsoleted by RFC 3986
* I think given past experiences with URIs, giving more details as to
what exact type of URI is allowed would be good; I guess what is really
meant is the "absoluteURI" construction, but I'm not really sure.

B) section 3.2 links to RFC2396bis, which is now RFC 3986

C) section 4.1 reads "This is because we cannot distinguish between
individual annotations". I think the "we" is misplaced here.

D) The definitions of the designators (absolute, canonical, relative)
should use the verb "identify", since that's what URIs do; e.g.
absolute schema component designator
        An absolute schema component designator identifies a particular
        component of a given assembled schema; it consists of two parts:
        a designator for the assembled schema (a schema designator), and
        a designator for a particular schema component or schema
        components relative (a relative schema component designator) to
        that assembled schema.

E) The conformance section has a subsection entitled "Schema Component
Designator Conformance", while it in fact defines conformance for Schema
Component Designator processor. Also, it mentions the "behavior defined
in this specification", while no behavior has been defined. I suggest
instead: "must identify the schema component as defined in this
specification" (see also XPointer terminology [3])

Maybe defining conformance for the designator itself is a good idea too;
but it isn't done in the spec as of today.

F) The references section doesn't follow the guidelines from the Manual
of Style [4], nor are the labels defined in the references section used
anywhere in the prose.

G) XSCD obviously re-uses the XPath syntax spirit; could some of the
definitions re-use (at least partially) their XPath counterpart (e.g.
for step, axis)?

H) Are there been any attempt at validating the EBNF proposed in the
text to ensure it is correct? e.g. to validate the examples of XSCD
given in the document

I) one of the requirements state "it should be possible to designate any
schema component within a schema. However, some exceptions will be made
for certain of the helper components."; I haven't seen (but maybe have I
missed it) an assessment of what exceptions have been made; also, I'm
interested to know whether the fact that the requirement has been met
has been formally proved. (not that I doubt it does, but since going to
Last Call means having met the initial requirements, I'm curious to know
whether this has been proved or only believed to be true)

J) SpecGL suggests having the following information as part of your
conformance clause:
* what type of wording is used for conformance requirements, and how to
distinguish them from the rest of the text; I have to say I can't really
tell what the conformance requirements are in the current text, so you
may want to consider making it clearer
* are any of these conformance requirements optional? I don't think so,
but you may want to clarify that as well
* is the proposed syntax extensible (e.g. using new axis names)? Again,
I don't think it is, but clarifying it may be helpful

Dom

1. http://www.w3.org/TR/qaframe-spec/
2. http://www.ietf.org/rfc/rfc2396.txt
3. http://www.w3.org/TR/2003/REC-xptr-framework-20030325/#terminology
4. http://www.w3.org/2001/06/manual/#References

-- 
Dominique Hazaël-Massieux - http://www.w3.org/People/Dom/
W3C/ERCIM
mailto:dom@w3.org

Received on Thursday, 21 April 2005 15:21:18 UTC