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

Comment on elementFormDefault

From: Rick Jelliffe <rjelliffe@allette.com.au>
Date: Tue, 04 Aug 2009 19:11:54 +1000
Message-ID: <4A77FB5A.5090608@allette.com.au>
To: www-xml-schema-comments@w3.org
On the 2004 spec:

In  http://www.w3.org/TR/xmlschema-1/#cElement_Declarations

The text in the line

"An element declaration as in the first case above, with the exception 
of its {target namespace} 
<http://www.w3.org/TR/xmlschema-1/#e-target_namespace> and {scope} 
<http://www.w3.org/TR/xmlschema-1/#e-scope> properties, which are as below::

does not appear to follow normal rules of English. Is it the start of a 
new sentence, as the capitalization would suggest? Or is it a 
continuation of the previous sentence after its  colon (i.e. " ...which 
case the item corresponds to no component at all):"   ? Who can say, 
certainly not the reader.

Suggestion: remove any slack and confusing text such as "the first case 
above" and either use proper clause numbering or have some special 
marker so that "case" has a meaning that does not require detective 
work, geomancy, etc.
---------------------------------------------------------------------------
Furthermore, the actual text there seems to be incorrect:

"If |form| is present and its ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> is |qualified|, or if |form| 
is absent and the ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> of |elementFormDefault| on 
the <schema> <http://www.w3.org/TR/xmlschema-1/#element-schema> ancestor 
is |qualified|, then the ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> of the |targetNamespace| 
[attribute] <http://www.w3.org/TR/xml-infoset/#infoitem.element> of the 
parent <schema> <http://www.w3.org/TR/xmlschema-1/#element-schema> 
element information item, or ·absent· 
<http://www.w3.org/TR/xmlschema-1/#key-null> if there is none, otherwise 
·absent· <http://www.w3.org/TR/xmlschema-1/#key-null>."

because the case being dealt with is an element declaration whose parent 
is not <schema>.  I presume the appropriate text should be

"If |form| is present and its ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> is |qualified|, or if |form| 
is absent and the ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> of |elementFormDefault| on 
the <schema> <http://www.w3.org/TR/xmlschema-1/#element-schema> ancestor 
is |qualified|, then the ·actual value· 
<http://www.w3.org/TR/xmlschema-1/#key-vv> of the |targetNamespace| 
[attribute] <http://www.w3.org/TR/xml-infoset/#infoitem.element> of the 
ancestor <schema> <http://www.w3.org/TR/xmlschema-1/#element-schema> 
element information item, or ·absent· 
<http://www.w3.org/TR/xmlschema-1/#key-null> if there is none, otherwise 
·absent· <http://www.w3.org/TR/xmlschema-1/#key-null>."

---------------------------------------------------------------------------

Furthermore, I think the standard should also have a note at this point 
specifically mentioning the interaction or lack of it with the use of a 
default namespace declaration on qualified and unqualified declarations.

Cheers
Rick Jelliffe
Received on Tuesday, 4 August 2009 09:12:50 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 6 December 2009 18:13:17 GMT