W3C home > Mailing lists > Public > public-html@w3.org > February 2009

Re: @rel syntax in RDFa (relevant to ISSUE-60 discussion), was: Using XMLNS in link/@rel

From: Henri Sivonen <hsivonen@iki.fi>
Date: Fri, 27 Feb 2009 15:09:14 +0200
Cc: "www-tag@w3.org WG" <www-tag@w3.org>, RDFa mailing list <public-rdf-in-xhtml-tf@w3.org>, public-xhtml2@w3.org, HTMLWG WG <public-html@w3.org>
Message-Id: <5F3E6D40-2CFE-4F97-B164-998205F02CE1@iki.fi>
To: Julian Reschke <julian.reschke@gmx.de>, Mark Nottingham <mnot@mnot.net>
On Feb 27, 2009, at 14:57, Henri Sivonen wrote:

> Going back to the design of exposing text/html as if it were XML: As  
> I pointed out earlier, xmlns:foo in text/html parses, in existing  
> browsers and in the HTML5 parsing algorithm as drafted today, into a  
> [namespace, local] pair where the local part is not an NCName. This  
> characteristic alone (i.e. without even considering the part that is  
> spelled "xmlns") is enough to render the [namespace, local] pair  
> unrepresentable in XML 1.0 + Namespaces.
>
> This poses the following problems:
> 1) A local name that is not an NCName cannot be serialized as XML  
> 1.0 in such a way that parsing the resulting XML document with a  
> namespace-aware parser round-trips the non-NCName local name properly.
> 2) Namespace-wise strictly correct XML tree implementations throw if  
> you try to set an attribute that can't be serialized as XML 1.0 +  
> Namespaces. (A demo that makes XOM throw is included below my  
> signature.)
> 3) Even if the API contract of an XML API could be violated and a  
> local name that is impossible in XML 1.0 + Namespaces could be  
> passed through, this representation would be *different* from the  
> way an XML parser would expose an attribute spelled "xmlns:foo"  
> though the same API. Thus, the application-layer code would have to  
> differ for text/html and application/xhtml+xml.


Oops, I forgot to add:

For these reasons, considering that the vocabulary that HTML5 defines  
as conforming and meaningful (i.e. excluding xml:lang in text/html  
which isn't meaningful) uses only NCNames, HTML5 defines a coercion  
onto Infoset that doesn't preserve non-NCName element or attribute  
names. Non-browser HTML parsers that expose an XML API may use this  
coercion. Absent RDFa, this isn't a problem.

http://www.w3.org/TR/html5/tree-construction.html#coercing-an-html-dom-into-an-infoset

-- 
Henri Sivonen
hsivonen@iki.fi
http://hsivonen.iki.fi/
Received on Friday, 27 February 2009 13:10:00 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 9 May 2012 00:16:32 GMT