1.5.3. Extensibility section translation is recommended in HTML5.1,
Scalability
HTML has a wide range of scalability mechanisms and can be used to add semantics in a secure way:
- The author can use the class attribute to extend the elements, effectively create their own elements, and use the most suitable existing "real" HTML elements, in this way, the browser and other tools that do not know the extension can still support it well. For example, the policy used by the micro-mode.
- The author can use the data-* = "" attribute to include data used for inline client scripts or server site range scripts. These guarantees will not be touched by the browser, and allow the script to contain HTML element data, the script can search for and process these HTML elements.
- The author can use the <meta name = "" content = ""> mechanism to register a predefined metadata name set to include page-range metadata.
- The authors can use the rel = "" mechanism to register extended links to predefined link type sets to add specific meanings to links. This is also used by microformats.
- The author can use <script type = ""> of the custom type to embed original data for further processing through inline or server-side scripts.
- You can use the <embed> element to create plug-ins and call them. This is how Flash works.
- The author can use the JavaScript prototype mechanism to extend the api. For example, the script library is widely used.
Paragraph: https://www.w3.org/TR/html51/introduction.html#design-notes-extensibility