<mei>

Contains a single MEI-conformant document, consisting of an MEI header and a musical text, either in isolation or as part of an meiCorpus element.
Module
MEI.shared
Attributes
meiversion, resp, xml:id
meiversion(optional)Specifies a generic MEI version label. Allowed values are: "4.0.0" (First release of MEI 4), "4.0.1" (Bugfix Release 4.0.1)
resp(optional)Indicates the agent(s) responsible for some aspect of the text's transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header. One or more values from data.URI, separated by spaces.
xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value. Value of datatype ID.
(MEI.shared) Attributes that uniquely identify an element.
xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value. Value of datatype ID.
(MEI.shared) Attributes that record the version of MEI in use.
meiversion(optional)Specifies a generic MEI version label. Allowed values are: "4.0.0" (First release of MEI 4), "4.0.1" (Bugfix Release 4.0.1)
(MEI.shared) Attributes capturing information regarding responsibility for some aspect of the text's creation, transcription, editing, or encoding.
resp(optional)Indicates the agent(s) responsible for some aspect of the text's transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header. One or more values from data.URI, separated by spaces.
Component declarations that are shared between two or more modules.
meiversion(optional)Specifies a generic MEI version label. Allowed values are: "4.0.0" (First release of MEI 4), "4.0.1" (Bugfix Release 4.0.1)
resp(optional)Indicates the agent(s) responsible for some aspect of the text's transcription, editing, or encoding. Its value must point to one or more identifiers declared in the document header. One or more values from data.URI, separated by spaces.
xml:id(optional)Regularizes the naming of an element and thus facilitates building links between it and other resources. Each id attribute within a document must have a unique value. Value of datatype ID.
Member of
(mei isn't member of any model class)
Contained by
meiCorpus(MEI corpus) – A group of related MEI documents, consisting of a header for the group, and one or more mei elements, each with its own complete header.
Corpus component declarations.
meiCorpus(MEI corpus) – A group of related MEI documents, consisting of a header for the group, and one or more mei elements, each with its own complete header.
May Contain
meiHead(MEI header) – Supplies the descriptive and declarative metadata prefixed to every MEI-conformant text.
musicContains a single musical text of any kind, whether unitary or composite, for example, an etude, opera, song cycle, symphony, or anthology of piano solos.
Metadata header component declarations.
meiHead(MEI header) – Supplies the descriptive and declarative metadata prefixed to every MEI-conformant text.
Component declarations that are shared between two or more modules.
musicContains a single musical text of any kind, whether unitary or composite, for example, an etude, opera, song cycle, symphony, or anthology of piano solos.
Remarks

The mei element defines an instance of a document encoded with the MEI schema. It is the document element for a single document containing a header and data. The name of this element should not be changed by any customization in order to assure an absolute minimum level of MEI compliance.

Constraints
The values in @staff must correspond to @n attribute of a staffDef element.
<sch:rule context="mei:*[@staff]">
<sch:assert test="every $i in tokenize(normalize-space(@staff), '\s+') satisfies $i=//mei:staffDef/@n">The values in @staff must correspond to @n attribute of a staffDef element.</sch:assert>
</sch:rule>
Declaration
<elementSpec ident="mei" module="MEI.shared">
<desc>Contains a single MEI-conformant document, consisting of an MEI header and a musical text, either in isolation or as part of an meiCorpus element.</desc>
<classes>
<memberOf key="att.id"/>
<memberOf key="att.meiVersion"/>
<memberOf key="att.responsibility"/>
</classes>
<content>
<rng:ref name="meiHead" />
<rng:ref name="music" />
</content>
<constraintSpec ident="Check_staff" scheme="isoschematron">
<constraint>
<sch:rule context="mei:*[@staff]">
<sch:assert test="every $i in tokenize(normalize-space(@staff), '\s+') satisfies $i=//mei:staffDef/@n">The values in @staff must correspond to @n attribute of a staffDef element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<remarks>
<p part="N">The
<gi scheme="MEI">mei</gi>
element defines an instance of a document encoded with the MEI schema. It is the document element for a single document containing a header and data. The name of this element should not be changed by any customization in order to assure an absolute minimum level of MEI compliance.</p>
</remarks>
</elementSpec>