Re: [closed] Re: buglet in syntax / test cases

From: Dave Beckett <>
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" <> 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

From, 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, Section 3

	[39] element ::= EmptyElemTag | STag ...

	[40] STag ::= '<' Name (S Attribute) * ...

	[41] Attribute ::= Name ...

	[44] EmptyElemTag ::= '<' Name (S Attribute) * ...

From, 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
	- 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,
Section 2.3. 

From, 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
	"") ... 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
	""). ...

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

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 

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