Robert Sayre wrote:
> [snip: an example with mixed XHTML and MicroSoft stuff]
>
> Thank you, Asbjørn: this is a delightful little problem. You see, XHTML
> validity is specified in terms of DTDs. Near as I can tell, that example
>  and some of the XHTML examples in the spec are 'invalid' because the
> local names don't match the DTD, and there are stray xmlns declarations.
>  If any of the current versions of XHTML allow that, we should probably
> point to that one, but I don't know if any of them do.

Well, I think an XML Schema defined XHTML [1] would allow xmlns
declarations but if you want to include "foreign" elements and attributes
in XHTML, it'll never be valid, except if you write your own XHTML Module
and/or hybrid document type (like the XHTML+MathML+SVG Profile [2]).

However, Atom requires wellformedness, not validity. So your wording, Rob,
seems good to me (even if I still disagree with the div wrapper...):
>  If the value of "type" is "xhtml", the content of the Text construct
>  MUST be a single XHTML div element [XHTML transitional reference], and
>  SHOULD be suitable for handling as XHTML.

The reference should IMHO point to both XHTML 1.0 (allows the lang and
name attributes) and XHTML 1.1 (allows ruby), i.e. having two XHTML
references.

The day XHTML will have an RNG modularized schema (seems to be the case
for XHTML 2.0, but we need XHTML 1.x), Atom would be able to precisely
define (still informative as the Atom RNC schema is not normative) the
content model of the Text Constructs, e.g. extending XHTML with xsd:any
and xsd:anyAttribute (I don't know how to say that in RelaxNG).

[1] http://www.w3.org/TR/xhtml1-schema/
[2] http://www.w3.org/TR/XHTMLplusMathMLplusSVG

-- 
Thomas Broyer


Reply via email to