[Bug 1904] RQ21: BNF, regex, etc for QName

http://www.w3.org/Bugs/Public/show_bug.cgi?id=1904


cmsmcq@w3.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
           Keywords|needsDrafting               |resolved
         Resolution|                            |WONTFIX




------- Comment #1 from cmsmcq@w3.org  2006-03-21 02:25 -------
At the face to face meeting of January 2006 in St. Petersburg, the
Working Group discussed this issue.  There was some sentiment for
giving it a high priority, but in the end the WG decided not to take
further substantive action on this issue in XML Schema 1.1.

Accordingly, I am marking this issue as RESOLVED / WONTFIX.

The Working Group did not formally specify a rationale for this
decision, but my sense of the views of the group is that the rationale
is roughly:

(1) It would on general principles be highly desirable to have a more
formal description of the rules for mapping QNames to expanded names
(URI+localname pairs).

(2) The formal description of mappings with context dependencies (in
particular those for QName and NOTATION, but related issues arise in
connection with ENTITY/ENTITIES and IDREF/IDREFS) poses some important
and difficult questions, on some of which the Working Group does not
currently have consensus.  

Is the lexical mapping always a function?  If so, then for these
datatypes the content of the lexical mapping would have to be
context-dependent; how should the context be represented formally?

The mapping from QName literal to value could be a function which
takes an extra argument (e.g. the set of in-scope namespace bindings).
Or there might be a different mapping function for each different set
of in-scope namespace bindings, with the choice of lexical mapping not
static (as is the case for most other simple types) but dynamic
(based, for XML input, on the rules laid out in the Namespaces
recommendation, and for other contexts on rules out of scope for the
Datatypes spec).

The Working Group has agreed that lexical mappings are NOT always
functions, as indicated in sections 2.4.1.3 and 3.2.1.2.  But perhaps
the mappings for QName and NOTATION should nevertheless be defined as
functions?

Or should the lexical mapping for QName and NOTATION be statically
definable, just as the mappings for other datatypes are?  In this
case, every QName p:n maps to the infinite set of pairs (U, n), where
U is a namespace name -- from this infinite set of values, the rules
of XML Schema Part 1 choose the one supported by the in-scope
namespaces; other applications could choose a different one (although
in practice it will be more usual simply to choose other ways of
determining the set of in-scope namespaces).

The difficulty of these questions, together with the fact that neither
the community nor the Working Group have a strong consensus on them,
suggests that providing a formal description of these mappings might be
a time-consuming affair.

(3) Although there are periodic notes from careful readers of the spec
suggesting clarification, there are very few reports of
non-interoperable behavior by XML Schema processors as to the mapping
of QName literals to expanded-name values.  Implementors have in
general understood the XML Schema 1.0 spec in the same way.

(4) Given that there does not seem to be a serious practical issue of
interoperability or confusion about the meaning of the spec on this
question, and given that providing a more formal mapping is likely to
be a difficult undertaking, which would delay the completion of
Datatypes 1.1, the cost of discharging this issue by providing the
formal description of the lexical mapping is greater than the cost of
leaving it undischarged for now.

Under these circumstances, the Working Group (as I understand its
state of mind) did not think it useful to delay Datatypes 1.1 while
the Working Group discussed this issue further.

Received on Tuesday, 21 March 2006 02:25:40 UTC