- From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
- Date: Wed, 04 Jun 2003 12:43:18 -0400 (EDT)
- To: dave.beckett@bristol.ac.uk
- Cc: www-rdf-comments@w3.org
From: Dave Beckett <dave.beckett@bristol.ac.uk>
Subject: Re: [closed] Re: buglet in syntax / test cases
Date: Wed, 4 Jun 2003 16:38:24 +0100
> On Wed, 04 Jun 2003 10:39:24 -0400 (EDT)
> "Peter F. Patel-Schneider" <pfps@research.bell-labs.com> wrote:
>
> > The issue is that RDF/XML mandates special treatment of certain items in
> > an XML info set, namely attributes of a certain form. There is no
> > justification for this special treatment.
>
> All applications of XML define application-specific treatment of XML
> items for their own use. This requires no "special treatment" or justification.
Huh? How is the removal of certain attributes not special treatment?
> > It appears that the special treatment is related to the notion of reserved
> > names in XML, but the RDF special treatment does not match the notion of
> > XML reserved names.
>
> It matches it fine.
On the contrary, there is much divergence. See below for more details.
> > If the justification for the special treatment is to remove XML reserved
> > names from the resultant RDF graph, then the treatment should be adjusted
> > to match the XML treatment, *and* the rationale should be mentioned. If
> > the justification is something else, then this rationale should be
> > mentioned and defended.
>
> There is neither special treatment, nor RDF/XML doing anything usual
> with 'xml'-prefixed names. It exactly matches the XML specification -
> they are reserved for the XML (family of) specification(s) to deal with
> and we take care to preserve that.
>
> Dave
I am completely mystified as to how you can possibly make this false
statement.
From http://www.w3.org/TR/REC-xml, Section 2.3
[Definition: A Name is .... Names beginning with the string "xml",
or any string which would match (('X' | 'x') ('M' | 'm') ('L' |
'l')), are reserved for standardization in this or future versions
of this specification.]
Hmm. I guess, then that the name XMLnewname is not reserved. Strange.
From http://www.w3.org/TR/REC-xml, Section 3
[39] element ::= EmptyElemTag | STag ...
[40] STag ::= '<' Name (S Attribute) * ...
[41] Attribute ::= Name ...
[44] EmptyElemTag ::= '<' Name (S Attribute) * ...
From http://www.w3.org/TR/xml-names11/, Section 3
The prefix xml is ...
The prefix xmlns is ...
All other prefixes beginning with the three-letter sequence x, m,
l, in any case combination are reserved. This means that
- users should not use them except as defined by later
specifications.
- processors must not treat them as fatal errors.
Though they are not themselves reserved, it is inadvisable to use
prefixed names whose LocalPart begins with the letters x, m, l, in
any case combination, as these names would be reserved if used
without a prefix.
Hmm. This is slightly inconsistent with http://www.w3.org/TR/REC-xml,
Section 2.3.
From http://www.w3.org/TR/rdf-syntax-grammar/, Section 6.1.2
If the value contains an attribute event xml:lang (that is ... and
the namespace name accessor of the attribute has value
"http://www.w3.org/XML/1998/namespace") ... it is removed from the
list of attributes ...
All other attributes beginning with xml are then removed (that is,
all attributes with namespace name accessors beginning with
"http://www.w3.org/XML/1998/namespace"). ...
The two criteria in the paragraphs above are not equivalent.
(I note also that the incorrect namespace is used in both places.)
This ends up with the following status under the following namespace
declarations
xmlns:xmlxxx="http:http://www.w3.org/XML/1998/namespace"
xmlns:xMlxxx="http:http://www.w3.org/XML/1998/namespace"
xmlns:xxx="http:http://www.w3.org/XML/1998/namespace"
xmlns:bar="ex://ex/"
Name XML treatment XML namespaces Special treatment in XML/RDF
in both treatment in *when used as an attribute name*
attribute and both attribute 1st criterion 2nd criterion
element names and element
names
xML reserved not addressed no no
xmlxx reserved not addressed yes no
xMLxx not reserved not addressed no no
xmlxxx:bar reserved reserved yes yes
xMlxxx:bar not reserved reserved no yes
xxx:bar not reserved not reserved no yes
xmlxxxbar reserved not addressed yes no
xMlxxxbar not reserved not addressed no no
bar:xmlxxx not reserved inadvisable no no
bar:xMlxxx not reserved inadvisable no no
Received on Wednesday, 4 June 2003 12:43:37 UTC