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.
Currently reading in 4.2.5 The meta element
188.8.131.52 Other metadata names
There’s a page (WHATWG Wiki MetaExtensions page) listing “extensions to the predefined set of metadata names”, and the cool thing is that anyone is free to add new names that must pass certain requirements (and surely if you put anything inappropriate up it will be, uh, pruned).
There’s also a table on that page for “Proposals that don’t meet the requirements for a registration”, and you might be surprised to find Facebook’s widely-used Open Graph metadata names in there. The reason? “The spec specifies this to be a value of the property attribute—not a meta keyword”
The new metadata name entries must include:
- Keyword: should feel unique among existing entries
- Brief description: non-normative (not spec-binding)
- Specification: a link out to further details about semantics and requirements. Doesn’t have to live in W3C land.
- Synonyms: “A list of other names that have exactly the same processing requirements” The synonyms shouldn’t be used interchangeably, this is just an informational list for UAs who may want to support legacy content.
- Status: proposed/ratified/discontinued. See the spec for a specific definition, but should be a bit self-explanatory. Maybe note that “discontinued” means that the metadata name is probably still in use somewhere in the wild. Anyone can change the status as long as their change makes sense. The open web, yay.
A metadata name can be removed if it:
- Is redundant with existing values. Added as a synonym those values if it is benign, marked as “discontinued” if it has been identified as “harmful”.
- Has been languishing in the “proposed” state for 1+ months
Conformance checkers can use the WHATWG Wiki MetaExtensions page (cached or not) to show a metadata name as valid (proposed or ratified) or invalid (discontinued or not listed). More curiously, a conformance checker should offer to add a proposed metadata name value to the page whenever they come across a new one.
Any name that would get a URL as the value should be “represented using the link element, not the meta element” and should’t be proposed or ratified.