This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
My mental parser is having a hard time with how the extensibility of accessors and axes is handled. For example, [19] Axis ::= 'schemaAttribute' '::' | 'schemaElement' '::' | ...| ExtensionAxis [23] ExtensionAxis ::= QName '::' When my code encounters the string "schemaElement::foo", how exactly does it know whether to treat schemaElement as a QName and apply the current xmlns= binding or to treat is as 'the special string' (which seems to be equivalent to saying it is really a local name with an implicit namespace == XML Schema 1.1). The bifurcation of not using a QName for Schema-defined axes and then making all extensions use QNames seems unnecessary (albeit, more compact in the normal case perhaps). I react pretty much the same way to accessors in general, and to the strings returned by component-kind() (4.5.1 component-kind Accessor). It seems like they should all by QNames, with a Schema-defined namespace in the case of entities defined by the Schema wg. FWIW, this is not an academic issue at all. Existing specs, e.g. SML, define their own identity constraint schema components. If it becomes necessary at some point to reconcile them with SCDS, consumers would be getting back results from component-kind(Identity‑Constraint Definition) of "identity-constraint-definition" and (presumably) component-kind(sml:Identity‑Constraint Definition) of "sml:identity-constraint-definition" - which gets one back to the same ambiguity I started with on how to distinguish what is, from the description I see here, a string, from a QName that happens to lack an explicit ns prefix.
RESOLVED: Make a proposal along the lines of treat unprefixed axis names as in a magic (possibly null) namespace, and names in that namespace are reserved. RESOLUTION: Ask the editor to draft a change which a) decides on a namespace for the names of component-kinds to be in b) modifies the return value of component-kind() to be expanded names in that namespace.
On the telcon, the WG discussed the following proposal. http://www.w3.org/XML/Group/xmlschema-current/SCD/scds-omni20090326-diff.html And adopted it with one ammendment: In section 4.2.1 the sentence first sentence now reads: "The schema component axes defined in this document are considered to be names in no namespace." This omnibus proposal is intended to close: bug 6450 bug 6451 bug 6452
4.2.1 from: component axes specifically enumerated in production for Axis. to : component axes specifically enumerated in the production for Axis. or to : component axes specifically enumerated in the Axis production.
Accepted comment #3 as an editorial suggestion. I went with the second alternative as I think it reads a little better. Change will be in next draft. If you are satisfied with this resolution, please indicate that by closing the bug.
sounds mahvelous