The itemprop global attribute is used to add properties to an item. Every HTML element can have an itemprop attribute specified, and an itemprop consists of a name-value pair. Each name-value pair is called a property, and a group of one or more properties forms an item. Property values are either a string or a URL and can be associated with a very wide range of elements including <audio>, <embed>, <iframe>, <img>, <link>, <object>, <source> , <track>, and <video>.
The itemidglobal attribute is the unique, global identifier of an item. itemid attributes can only be specified on elements that have both itemscopeand itemtypeattributes. Also, the itemid can only be specified on elements with an itemscope attribute whose corresponding itemtype refers to or defines a vocabulary that supports global identifiers.
The global attributeitemref Properties that are not descendants of an element with the itemscope attribute can be associated with the item using an itemref. itemref provides a list of element id's (not itemids) with additional properties elsewhere in the document.
The global attributeitemscope (usually) works along with itemtypeto specify that the HTML contained in a block is about a particular item. itemscope creates the Item and defines the scope of the itemtype associated with it. itemtype is a valid URL of a vocabulary (such as schema.org) that describes the item and its properties context. In the examples below the vocabulary used is from schema.org. Every HTML element may have an itemscope attribute specified. An itemscope element that doesn't have an associated itemtype has an itemref.
The global attributeitemtypespecifies the URL of the vocabulary that will be used to define itemprop's (item properties) in the data structure. itemscope is used to set the scope of where in the data structure the vocabulary set by itemtype will be active.
Global attributes may be specified on all HTML elements, even those not specified in the standard. That means that any non-standard elements must still permit these attributes, even though using those elements means that the document is no longer HTML5-compliant. For example, HTML5-compliant browsers hide content marked as <foo hidden>...<foo>, even though <foo> is not a valid HTML element.