The HTML <meta> Element represents any metadata information that cannot be represented by one of the other meta-related elements (<base>, <link>, <script>, <style> or <title>). According to the attributes set, the kind of metadata can be one of the following:

if the name is set, a document-level metadata, applying to the whole page;
if the http-equiv is set, a pragma directive, i.e. information normally given from the webserver on how the webpage should be served;
if the charset is set, a charset declaration, i.e. the charset used for the serialized-form of the webpage; HTML5
if the itemprop is set, a user-defined metadata, transparent for the user-agent as the semantics of the metadata is user-specific. Living Standard Unimplemented.

Content categories:
Metadata content. If the itemprop attribute is present: flow content, phrasing content.

Permitted content:
None, it is an empty element.

Tag omission:
As it is a void element, the start tag must be present and the end tag must not be present.

Permitted parent elements:
<meta charset>, <meta http-equiv>: a <head> element. If the http-equiv is not an encoding declaration, it can also be inside a <noscript> element, itself inside a <head> element.
<meta name>: any element that accepts metadata content.
<meta itemprop>: any element that accepts metadata content or parsing content.

DOM interface:
HTMLMetaElement
