Constraints for New Vocabularies
This page documents some of the constraints we have to work within when developing new syntax for HTML. It is primarily written in the context of MathML and SVG being added to text/html.
For a more detailed discussion, see the notes in:
In summary, the constraints are that we must:
- Render the following in a way that is not significantly worse than today (extra whitespace is probably ok, most other things are probably not):
- Render pages that today contain MathML in text/html better than today.
- Support MathML and SVG in the same way where possible.
- Fail gracefully in the face of ignorant author copy/paste (see below).
Authors have, for some reason I haven't understood but which I have seen a lot on the web, a weird way of working, which consists of, sometimes, copying seemingly random chunks of pages, and pasting them into their own. They will even copy stuff from pages where the stuff does something in one browser (e.g. Firefox when that page is sent as XML), and paste them into their page where it does nothing (e.g. they're using IE). So even if a tag is unused now, in the time between UA 1 implementing the feature (and leading edge users using it) and UA 4 implementing the feature (and thus all users having it) there will be millions of crackpot authors who copy and paste content from good authors targetting UA1 and expose that content to UA4, thus creating a pile of "legacy" content after we define the syntax. (This has already happened with SVG and MathML in text/html, q.v. http://www.cocopahrv.com/map.html and http://www.laroseweb.com/calcs/fans.php .)