HTSS: HyperText Semantic Subset

This is a draft for a proposed subset of (X)HTML5. None of this information is final and is subject to change without notice.

Why this instead of AMP?

As an aside, AMP seems to invent the solution to a problem that only surfaced in the Web's later years. To load pages quickly, web developers and designers simply need to emphasise simplicity, and make do with more of the features of bare HTML5. Advertisers must find less-intrusive ways to market their products without compromising on usability, as well. There is plenty of literature online about AMP if you are still not convinced of its uselessness and potential harm to the Web ecosystem.

Key points

What is required?

Tag and attribute requirements

Which tags and attributes have specific requirements in HTSS? (CSS selectors are used to refer to tags and their attributes in this section.)

Forbidden tags and attributes

Which tags and attributes are forbidden in HTSS?

Suggestions for automated HTSS linting

Just as validators and linters exist for HTML and AMP, it is useful to have a preliminary linting for documents trying to conform to HTSS. Note that since many of the rules are semantic in nature, an automated system cannot be expected to discern correct usage of tags, as it cannot understand the content of a document in the same capacity that a human can. Such an HTSS linter could only catch low-hanging fruit: obvious syntactic violations of HTSS, such as invalid tags.

Such information is also useful in creating other software that prioritises HTSS, such as an HTSS-conformant Web browser.


Not in scope for HTSS, but additional points to consider: