Levels

"Daniel W. Connolly" <connolly@hal.com>
Message-id: <9406102006.AA08093@ulua.hal.com>
To: html-ig@oclc.org
Subject: Levels
Date: Fri, 10 Jun 1994 15:06:28 -0500
From: "Daniel W. Connolly" <connolly@hal.com>
Content-Length: 1314

[I'm not sure why I don't just stick this in the spec and see what
folks think, but somehow it's easier for me to just brain-dump
to this archive for now...]

The idea is that if you write:

	<!DOCYTYPE HTML "-//W3O//DTD WWW HTML 2.0//EN">

then that includes IMG, FORMS, and all the other current practice stuff.

I'm not sure when levels 0 and 1 will be completely specified, but
the idea is that you might write:

	<!DOCYTYPE HTML "-//W3O//DTD WWW HTML 2.0//EN//Level 0">

or

	<!DOCYTYPE HTML "-//W3O//DTD WWW HTML 2.0 Level 0//EN">

to indicate that you're not using any level 1 or level 2 features,
and a validating tool should report errors if you do.


As for how it works in practice, if a client says:

	Accept: text/html

we specify that this means the same thing as

	Accept: text/html; level=2

However, if it says:

	Accept: text/html; level=0

(as, for example, the linemeode browser should) then it is an error
for a server to send a document containing IMG or FORM elements.

["It is an error" used here as by Guy Steele in his specs meaning
"the behaviour in that case is undefined."]

This allows the negotiation we've seen where a document says "click
_here_ if you grok forms, and _here_ if you don't" or "use _this_
index if you don't grok images" to be handled by the HTTP protocol.



Dan