[whatwg] [html5] tags, elements and generated DOM
    Ian Hickson 
    ian at hixie.ch
       
    Thu Feb 23 18:34:00 PST 2006
    
    
  
On Wed, 6 Apr 2005, Lachlan Hunt wrote:
> Ian Hickson wrote:
> > On Wed, 6 Apr 2005, Lachlan Hunt wrote:
> > > > The <body> will always be implied, though.
> > > 
> > > Not in a conforming SGML parser...
> > 
> > Yeah, I meant in browsers, not per SGML.
> 
> Ok, fair enough.  But can you explain why Opera doesn't when in 
> standards-compliant mode, as I explained in my previous e-mail.  Is it a 
> bug or intentional?
Bug.
> > According to the HTML spec, the handling of the above is completely 
> > undefined since it is invalid. (Note that something being invalid or 
> > non-conformant does _not_ make the rendering undefined in most cases 
> > in Web Apps 1 / HTML5. That's one of the main things I'm making sure 
> > of.)
> 
> Ok, if the spec is going to address this, then I think it should say something
> like:
> 
>   "If a required element with an optional start-tag is entirely missing
>    from the document, a user agent *may* imply it and include it within
>    the DOM.  Missing elements with required start-tags *must not* be
>    automatically implied.
It's been defined much more explicitly. Let me know if the current text 
doesn't satisfy you.
>   "Note: It is common for existing user agents to automatically imply
>    both the head and body elements, even when those sections are omitted
>    entirely from the document markup."
I haven't included this. Do you think I should?
> I used "may", because if "must" or "should" were used instead, it may 
> conflict with anything the SGML spec says on the matter and it would 
> make OpenSP, and thus the validator, non-conformant.  I would stick with 
> "may" because, as I showed previously, existing UAs don't do the same 
> for <tbody>.
OpenSP and the validator are already non-conformant to HTML5 for many 
other reasons unrelated to parsing (e.g. they don't do attribute value 
conformance checking).
> I included the part about start-tags because elements like <li> (which 
> require a start-tag) do not be implied by existing UAs when they are 
> missing.
Indeed. This is all fully defined by HTML5 now.
> Also, while on the topic of handling invalid documents, is this spec 
> going to attempt to address the <x><y></x></y> problem?
Yes, that is covered and fully defined too, using a variation of what 
Mozilla and Safari do as the basis for the specification.
> > > Opera and OpenSP correctly don't imply the missing head element.
> > 
> > I'm not sure what you mean by "correctly" here
> 
> Well, I read somewhere that OpenSP is "the reference implementation" of 
> SGML, so I assumed that means what it does is correct.
So what if the spec and the implementation disagree? :-)
> > since an HTML4 document without a <title> is invalid and thus parsing 
> > is undefined in HTML4.
> 
> Is it not defined by SGML either?  I really must get a copy of 
> Goldfarb's SGML Handbook later and check for sure.
Not as far as I recall, certainly.
-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'
    
    
More information about the whatwg
mailing list