W3C home > Mailing lists > Public > public-qt-comments@w3.org > February 2015

[Bug 28024] New: Does "[Unicode] characters" EQUAL "Char production in [XML]?

From: <bugzilla@jessica.w3.org>
Date: Fri, 13 Feb 2015 22:45:57 +0000
To: public-qt-comments@w3.org
Message-ID: <bug-28024-523@http.www.w3.org/Bugs/Public/>
https://www.w3.org/Bugs/Public/show_bug.cgi?id=28024

            Bug ID: 28024
           Summary: Does "[Unicode] characters" EQUAL "Char production in
                    [XML]?
           Product: XPath / XQuery / XSLT
           Version: Candidate Recommendation
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Data Model 3.1
          Assignee: ndw@nwalsh.com
          Reporter: patrick@durusau.net
        QA Contact: public-qt-comments@w3.org

One of the problems caused by not referencing definitions rather than repeating
them is the creation of conflicting definitions. For example:

XDM 3.1 reads at 2.7.3 XML and XSD Versions:

[Definition: A string is a value in the value space of the xs:string data type;
equivalently, it is a sequence of characters.]

[Definition: A character is an instance of the Char production in [XML]. It is
recommended that the implementation use the latest definition, currently XML
1.1 Second Edition.]

And yet, XPath 3.1 reads at 2 Basics:

The basic building block of XPath 3.1 is the expression, which is a string of
[Unicode] characters; the version of Unicode to be used is
implementation-defined.

"[Unicode] characters" does NOT EQUAL "Char production in [XML]. So, as a
reader of the specification, which is it? Any Unicode character can appear in
an expression or is XPath 3.1 limited to the Char production?

*****

The better course is to have numbered definitions, I would suggest starting
with the data model but that may be a personal preference, that are then cited
by other parts of the same group of standards, in their numbered definitions.
Having all those definitions in separate sections makes comparison of the
definitions trivial. 

Thus, the data model could say:

N Character: A character is an instance of the Char production in [XML]. It is
recommended that the implementation use the latest definition, currently XML
1.1 Second Edition.

N String: A string is a value in the value space of the xs:string data type;
equivalently, it is a sequence of characters.]

(I would insert a full location for the references. N = subsection number and
header.)

And then XPath 3.1 says:

N Character: As defined by XDM 3.1 N.

N String: As defined by XDM 3.1 N.

Not only does it save space it binds the documents together. 

Not to mention making it possible to substitute the definition for every
occurrence of the term in the text, which should help with proofing. 

I marked this for the data model but obviously it applies to all the drafts
under review.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
Received on Friday, 13 February 2015 22:45:58 UTC

This archive was generated by hypermail 2.3.1 : Friday, 13 February 2015 22:45:58 UTC