Day 4 of 100DaysOfSpec, 2.2 Conformance requirements, contd.

I am reading and taking notes on the HTML specifications for 100 days as part of #The100DayProject. Read the initial intent/backstory. I am a Microsoft employee but all opinions, comments, etc on this site are my own. I do not speak on behalf of my employer, and thus no comments should be taken as representative of Microsoft’s official opinion of the spec. Subsections not listed below were read without comment.

Today’s section summarizes all the sub-specifications the HTML spec relies on, and what terms are defined in those specifications.

Particularly interesting term lists (to me, anyway) include parts of URLs, CORS (cross-origin resource sharing), DOM features, and DOMException types.

“Web IDL” is referenced here. TIL that “IDL” stands for “interface definition language”. According to the W3C recommendation on Web IDL, it is “an IDL variant with a number of features that allow the behavior of common script objects in the web platform to be specified more readily.” This is still a bit unclear to me, seems like a library to help user agents wire up functionality more easily and consistently, but I think this is a can of worms to open another time. Unless you, dear hypothetical reader, have some insights. ;]

We’re not really even getting to the meat of the spec yet but from the list of DOM features you already get a sense of just how much is under the surface of our prettily-packaged elements and properties. The comment interface is listed in these features; I wonder how many lines of code it takes from the UA just to have HTML comments work correctly.

“UIEvent” seems as though it would encompass quite a bit.

Note to self: figure out what a “Blob” actually is. I hear this word being thrown around and smile and nod to myself. W3C says “immutable raw binary data”. Cool, very helpful. To read later.

QUITE CURIOUSLY, user agents are not required to support CSS “as a whole”, but they do have to support the Media Query language.

And finally it should be mentioned that user agents aren’t actually required to support CSS, Javascript, or HTTP, even within the UA subcategory of web browsers and other interactive UAs. These are simply the most ubiquitous choices for styling, scripting, and network protocols.