<staff>

Module
Attributes
class, copyof, corresp, decls, def, facs, follows, label, metcon, n, next, precedes, prev, resp, sameas, synch, type, visible, xml:base, xml:id
class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute. One or more values from data.URI, separated by spaces.
copyof(optional)Points to an element of which the current element is a copy. Value conforms to data.URI.
corresp(optional)Used to point to other elements that correspond to this one in a generic fashion. One or more values from data.URI, separated by spaces.
decls(optional)Identifies one or more metadata elements (other than classification terms) within the header, which are understood to apply to the element bearing this attribute and its content. One or more values from data.URI, separated by spaces.
def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element. One or more values from data.URI, separated by spaces.
follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element. One or more values from data.URI, separated by spaces.
label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content. Value is plain text.
metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
n(optional)Provides a numeric designation that indicates an element’s position in a sequence of similar elements. Its value must be a non-negative integer. Value is a positive integer, including 0.
next(optional)Used to point to the next event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element. One or more values from data.URI, separated by spaces.
prev(optional)Points to the previous event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
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.
sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element. One or more values from data.URI, separated by spaces.
synch(optional)Points to elements that are synchronous with the current element. One or more values from data.URI, separated by spaces.
type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels. One or more values of datatype NMTOKEN, separated by spaces.
visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references. Value conforms to data.URI.
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 is a valid xml:id.
(MEI.shared) Attributes that form the basis of the att.common class.
xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references. Value conforms to data.URI.
(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 is a valid xml:id.
(MEI.facsimile) Attributes that associate a feature corresponding with all or part of an image.
facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element. One or more values from data.URI, separated by spaces.
(MEI.shared)
label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content. Value is plain text.
(MEI.shared) Attributes that specify element-to-element relationships.
copyof(optional)Points to an element of which the current element is a copy. Value conforms to data.URI.
corresp(optional)Used to point to other elements that correspond to this one in a generic fashion. One or more values from data.URI, separated by spaces.
follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element. One or more values from data.URI, separated by spaces.
next(optional)Used to point to the next event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element. One or more values from data.URI, separated by spaces.
prev(optional)Points to the previous event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element. One or more values from data.URI, separated by spaces.
synch(optional)Points to elements that are synchronous with the current element. One or more values from data.URI, separated by spaces.
(MEI.shared) Provides attributes for elements which may be associated with particular contextual elements within the header.
decls(optional)Identifies one or more metadata elements (other than classification terms) within the header, which are understood to apply to the element bearing this attribute and its content. One or more values from data.URI, separated by spaces.
(MEI.shared) Attributes used to supply an integer number designation for an element.
n(optional)Provides a numeric designation that indicates an element’s position in a sequence of similar elements. Its value must be a non-negative integer. Value is a positive integer, including 0.
(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.
(MEI.shared) Attributes which can be used to classify features.
type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels. One or more values of datatype NMTOKEN, separated by spaces.
(MEI.shared) Attributes which can be used to classify features.
class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute. One or more values from data.URI, separated by spaces.
(MEI.shared) Logical domain attributes.
def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
(MEI.shared) Attributes that provide information about a structure’s conformance to the prevailing meter.
metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
(MEI.visual) Visual domain attributes.
(MEI.shared) Attributes describing whether a feature should be displayed.
visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
(MEI.gestural) Gestural domain attributes.
(MEI.analytical) Analytical domain attributes.
Facsimile component declarations.
facs(optional)Points to one or more images, portions of an image, or surfaces which correspond to the current element. One or more values from data.URI, separated by spaces.
Component declarations that are shared between two or more modules.
class(optional)Contains one or more URIs which denote classification terms that apply to the entity bearing this attribute. One or more values from data.URI, separated by spaces.
copyof(optional)Points to an element of which the current element is a copy. Value conforms to data.URI.
corresp(optional)Used to point to other elements that correspond to this one in a generic fashion. One or more values from data.URI, separated by spaces.
decls(optional)Identifies one or more metadata elements (other than classification terms) within the header, which are understood to apply to the element bearing this attribute and its content. One or more values from data.URI, separated by spaces.
def(optional)Provides a mechanism for linking the staff to a staffDef element. Value conforms to data.URI.
follows(optional)points to one or more events in a user-defined collection that are known to be predecessors of the current element. One or more values from data.URI, separated by spaces.
label(optional)Captures text to be used to generate a label for the element to which it’s attached, a "tool tip" or prefatory text, for example. Should not be used to record document content. Value is plain text.
metcon(optional)Indicates the relationship between the content of a staff or layer and the prevailing meter. Allowed values are: "c" (Complete; , conformant with the prevailing meter.), "i" (Incomplete; , not enough beats.), "o" (Overfull; , too many beats.)
n(optional)Provides a numeric designation that indicates an element’s position in a sequence of similar elements. Its value must be a non-negative integer. Value is a positive integer, including 0.
next(optional)Used to point to the next event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
precedes(optional)Points to one or more events in a user-defined collection that are known to be successors of the current element. One or more values from data.URI, separated by spaces.
prev(optional)Points to the previous event(s) in a user-defined collection. One or more values from data.URI, separated by spaces.
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.
sameas(optional)Points to an element that is the same as the current element but is not a literal copy of the current element. One or more values from data.URI, separated by spaces.
synch(optional)Points to elements that are synchronous with the current element. One or more values from data.URI, separated by spaces.
type(optional)Designation which characterizes the element in some sense, using any convenient classification scheme or typology that employs single-token labels. One or more values of datatype NMTOKEN, separated by spaces.
visible(optional)Indicates if a feature should be rendered when the notation is presented graphically or sounded when it is presented in an aural form. Value conforms to data.BOOLEAN.
xml:base(optional)Provides a base URI reference with which applications can resolve relative URI references into absolute URI references. Value conforms to data.URI.
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 is a valid xml:id.
Member of
model.staffLikeGroups elements that function like staves.
Contained By
(MEI.shared) Groups elements that function like staves.
ossiaCaptures original notation and a differently notated version *present in the source being transcribed*.
(MEI.cmn) Groups elements that may appear within a CMN measure.
measureUnit of musical time consisting of a fixed number of note values of a given type, as determined by the prevailing meter, and delimited in musical notation by bar lines.
(MEI.shared) Groups elements that may appear as part of a section in the mensural and neume repertoires.
endingAlternative ending for a repeated passage of music; i.e., prima volta, seconda volta, etc.
(MEI.shared) Groups elements that may appear as part of a section.
abbrA generic element for 1) a shortened form of a word, including an acronym or 2) a shorthand notation.
addMarks an addition to the text.
corrContains the correct form of an apparent erroneous passage.
damageContains an area of damage to the physical medium.
delContains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
expanContains the expansion of an abbreviation.
lemContains the lemma, or base text, of a textual variation.
origContains material which is marked as following the original, rather than being normalized or corrected.
rdgContains a single reading within a textual variation.
regContains material which has been regularized or normalized in some sense.
restoreIndicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
sectionSegment of music data.
sicContains apparently incorrect or inaccurate material.
suppliedContains material supplied by the transcriber or editor for any reason.
unclearContains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
Common Music Notation (CMN) repertoire component declarations.
measureUnit of musical time consisting of a fixed number of note values of a given type, as determined by the prevailing meter, and delimited in musical notation by bar lines.
ossiaCaptures original notation and a differently notated version *present in the source being transcribed*.
Critical apparatus component declarations.
lemContains the lemma, or base text, of a textual variation.
rdgContains a single reading within a textual variation.
Editorial and transcriptional component declarations.
abbrA generic element for 1) a shortened form of a word, including an acronym or 2) a shorthand notation.
addMarks an addition to the text.
corrContains the correct form of an apparent erroneous passage.
damageContains an area of damage to the physical medium.
delContains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
expanContains the expansion of an abbreviation.
origContains material which is marked as following the original, rather than being normalized or corrected.
regContains material which has been regularized or normalized in some sense.
restoreIndicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
sicContains apparently incorrect or inaccurate material.
suppliedContains material supplied by the transcriber or editor for any reason.
unclearContains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
Component declarations that are shared between two or more modules.
endingAlternative ending for a repeated passage of music; i.e., prima volta, seconda volta, etc.
sectionSegment of music data.
May Contain
(MEI.critapp) Groups elements that contain a critical apparatus entry.
appContains one or more alternative encodings.
(MEI.edittrans) Groups elements for editorial interventions that may be useful both in transcribing and in authoring processes.
choiceGroups a number of alternative encodings for the same point in a text.
substGroups transcriptional elements when the combination is to be regarded as a single intervention in the text.
(MEI.edittrans) Groups elements used for editorial transcription of pre-existing source materials.
addMarks an addition to the text.
corrContains the correct form of an apparent erroneous passage.
damageContains an area of damage to the physical medium.
delContains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
gapIndicates a point where material has been omitted in a transcription, whether as part of sampling practice or for editorial reasons described in the MEI header.
handShiftMarks the beginning of a passage written in a new hand, or of a change in the scribe, writing style, ink or character of the document hand.
origContains material which is marked as following the original, rather than being normalized or corrected.
regContains material which has been regularized or normalized in some sense.
restoreIndicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
sicContains apparently incorrect or inaccurate material.
suppliedContains material supplied by the transcriber or editor for any reason.
unclearContains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
(MEI.shared) Groups annotation-like elements.
annotProvides a statement explaining the text or indicating the basis for an assertion.
(MEI.shared) Groups milestone-style elements found in music notation.
cbAn empty formatting element that forces text to begin in a new column.
colLayoutAn empty formatting element that signals the start of columnar layout.
sbAn empty formatting element that forces musical notation to begin on a new line.
(MEI.shared) Groups page beginning-like elements.
pbAn empty formatting element that forces text to begin on a new page.
(MEI.shared) Collects elements that express a relationship.
relationDescribes a relationship or linkage amongst entities.
relationListGathers relation elements.
(MEI.shared) Groups elements that permit declaration of staff properties.
staffDefContainer for staff meta-information.
(MEI.shared) Groups elements that are components of a staff.
(MEI.cmn) Groups elements that function like ossia.
ossiaCaptures original notation and a differently notated version *present in the source being transcribed*.
(MEI.shared) Groups elements that function as notational layers within a staff.
layerAn independent stream of events on a staff.
(MEI.shared) Groups elements that are components of a staff in the mensural and neume repertoires.
(MEI.mensural) Groups elements that are components of a staff in the mensural repertoire.
(MEI.shared) Groups elements, such as dynamics, ties, phrase marks, pedal marks, etc., which depend upon other events, such as notes or rests, for their existence.
bendA variation in pitch (often micro-tonal) upwards or downwards during the course of a note.
caesuraBreak, pause, or interruption in the normal tempo of a composition. Typically indicated by "railroad tracks", i.e., two diagonal slashes.
cpMarkA verbal or graphical indication to copy musical material written elsewhere.
dirAn instruction expressed as a combination of text and symbols, typically above, below, or between staves, but not on the staff — that is not encoded elsewhere in more specific elements, like tempo, dynam or repeatMark.
dynamIndication of the volume of a note, phrase, or section of music.
glissA continuous or sliding movement from one pitch to another, usually indicated by a straight or wavy line.
metaMarkA graphical or textual statement with additional / explanatory information about the musical text. The textual consequences of this intervention are encoded independently via other means; that is, with elements such as add, del, etc.
ornamAn element indicating an ornament that is not a mordent, turn, or trill.
phraseIndication of 1) a "unified melodic idea" or 2) performance technique.
repeatMark An instruction expressed as a combination of text and symbols – segno and coda – typically above, below, or between staves, but not on the staff.
spContains an individual speech in a performance text.
tempoText and symbols descriptive of tempo, mood, or style, e.g., "allarg.", "a tempo", "cantabile", "Moderato", "♩=60", "Moderato ♩ =60").
(MEI.drama) Groups elements containing stage directions in performance texts.
stageDirContains any kind of stage direction within a dramatic text or fragment.
(MEI.fingering) Groups elements that capture performance instructions regarding the use of the fingers of the hand (or a subset of them).
fingAn individual finger in a fingering indication.
fingGrpA group of individual fingers in a fingering indication.
(MEI.harmony) Groups harmonic elements that function as control events; that is, those events that modify or otherwise depend on the existence of notated events.
(MEI.harmony) Groups elements that record indications of harmony.
harmAn indication of harmony, e.g., chord names, tablature grids, harmonic analysis, figured bass.
(MEI.usersymbols) Groups elements that function as drawing primitives.
anchoredTextContainer for text that is fixed to a particular page location, regardless of changes made to the layout of the measures around it.
curveA curved line that cannot be represented by a more specific element, such as a slur.
lineA visual line that cannot be represented by a more specific; i.e., semantic, element.
Common Music Notation (CMN) repertoire component declarations.
bendA variation in pitch (often micro-tonal) upwards or downwards during the course of a note.
glissA continuous or sliding movement from one pitch to another, usually indicated by a straight or wavy line.
ossiaCaptures original notation and a differently notated version *present in the source being transcribed*.
repeatMark An instruction expressed as a combination of text and symbols – segno and coda – typically above, below, or between staves, but not on the staff.
Critical apparatus component declarations.
appContains one or more alternative encodings.
Dramatic text component declarations.
spContains an individual speech in a performance text.
stageDirContains any kind of stage direction within a dramatic text or fragment.
Editorial and transcriptional component declarations.
addMarks an addition to the text.
choiceGroups a number of alternative encodings for the same point in a text.
corrContains the correct form of an apparent erroneous passage.
cpMarkA verbal or graphical indication to copy musical material written elsewhere.
damageContains an area of damage to the physical medium.
delContains information deleted, marked as deleted, or otherwise indicated as superfluous or spurious in the copy text by an author, scribe, annotator, or corrector.
gapIndicates a point where material has been omitted in a transcription, whether as part of sampling practice or for editorial reasons described in the MEI header.
handShiftMarks the beginning of a passage written in a new hand, or of a change in the scribe, writing style, ink or character of the document hand.
metaMarkA graphical or textual statement with additional / explanatory information about the musical text. The textual consequences of this intervention are encoded independently via other means; that is, with elements such as add, del, etc.
origContains material which is marked as following the original, rather than being normalized or corrected.
regContains material which has been regularized or normalized in some sense.
restoreIndicates restoration of material to an earlier state by cancellation of an editorial or authorial marking or instruction.
sicContains apparently incorrect or inaccurate material.
substGroups transcriptional elements when the combination is to be regarded as a single intervention in the text.
suppliedContains material supplied by the transcriber or editor for any reason.
unclearContains material that cannot be transcribed with certainty because it is illegible or inaudible in the source.
Fingering component declarations.
fingAn individual finger in a fingering indication.
fingGrpA group of individual fingers in a fingering indication.
Harmony component declarations.
harmAn indication of harmony, e.g., chord names, tablature grids, harmonic analysis, figured bass.
Component declarations that are shared between two or more modules.
annotProvides a statement explaining the text or indicating the basis for an assertion.
caesuraBreak, pause, or interruption in the normal tempo of a composition. Typically indicated by "railroad tracks", i.e., two diagonal slashes.
cbAn empty formatting element that forces text to begin in a new column.
colLayoutAn empty formatting element that signals the start of columnar layout.
dirAn instruction expressed as a combination of text and symbols, typically above, below, or between staves, but not on the staff — that is not encoded elsewhere in more specific elements, like tempo, dynam or repeatMark.
dynamIndication of the volume of a note, phrase, or section of music.
layerAn independent stream of events on a staff.
ornamAn element indicating an ornament that is not a mordent, turn, or trill.
pbAn empty formatting element that forces text to begin on a new page.
phraseIndication of 1) a "unified melodic idea" or 2) performance technique.
relationDescribes a relationship or linkage amongst entities.
relationListGathers relation elements.
sbAn empty formatting element that forces musical notation to begin on a new line.
staffDefContainer for staff meta-information.
tempoText and symbols descriptive of tempo, mood, or style, e.g., "allarg.", "a tempo", "cantabile", "Moderato", "♩=60", "Moderato ♩ =60").
User-defined symbols component declarations.
anchoredTextContainer for text that is fixed to a particular page location, regardless of changes made to the layout of the measures around it.
curveA curved line that cannot be represented by a more specific element, such as a slur.
lineA visual line that cannot be represented by a more specific; i.e., semantic, element.
Remarks

The def attribute may be used to create a connection with a staffDef element where logical and visual information about the staff is recorded. Alternatively, the n attribute may be used as a reference to a staffDef element with the same value in its n attribute or the staff may contain a staffDef element that defines it. If neither def nor n attributes are present, then the encoding order of the staves is presumed to match the encoding order of the staff definitions.

Constraints

There must be a preceding staffDef with a matching value of @n, a preceding staff with a matching @n value containing a staffDef, or a staffDef child element.

Declaration
<elementSpec ident="staff" module="MEI.shared">
<desc xml:lang="en">A group of equidistant horizontal lines on which notes are placed in order to represent pitch or a grouping element for individual 'strands' of notes, rests, etc. that may or may not actually be rendered on staff lines; that is, both diastematic and non-diastematic signs.</desc>
<classes>
<memberOf key="att.basic"/>
<memberOf key="att.facsimile"/>
<memberOf key="att.labelled"/>
<memberOf key="att.linking"/>
<memberOf key="att.metadataPointing"/>
<memberOf key="att.nInteger"/>
<memberOf key="att.responsibility"/>
<memberOf key="att.typed"/>
<memberOf key="att.staff.log"/>
<memberOf key="att.staff.vis"/>
<memberOf key="att.staff.ges"/>
<memberOf key="att.staff.anl"/>
<memberOf key="model.staffLike"/>
</classes>
<content>
<rng:zeroOrMore>
<rng:choice>
<rng:ref name="model.annotLike"/>
<rng:ref name="model.appLike"/>
<rng:ref name="model.editLike"/>
<rng:ref name="model.graphicPrimitiveLike"/>
<rng:ref name="model.milestoneLike.music"/>
<rng:ref name="model.relationLike"/>
<rng:ref name="model.staffDefLike"/>
<rng:ref name="model.staffPart"/>
<rng:ref name="model.transcriptionLike"/>
</rng:choice>
</rng:zeroOrMore>
</content>
<!-- <constraintSpec ident="staffOrganization" scheme="schematron"> <constraint> <sch:rule context="mei:staff"> <sch:assert test="not(descendant::mei:staff)">A staff cannot have staff descendants.</sch:assert> </sch:rule> </constraint> </constraintSpec> -->
<constraintSpec ident="checkStaff_n" scheme="schematron">
<constraint>
<sch:rule context="mei:staff[@n]">
<sch:let name="thisstaff" value="@n"/>
<sch:assert test="preceding::mei:staffDef[@n=$thisstaff] or preceding::mei:staff[@n=$thisstaff]/mei:staffDef or mei:staffDef">There must be a preceding staffDef with a matching value of @n, a preceding staff with a matching @n value containing a staffDef, or a staffDef child element.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<remarks xml:lang="en">
<p>The <att>def</att> attribute may be used to create a connection with a <gi scheme="MEI">staffDef</gi> element where logical and visual information about the staff is recorded. Alternatively, the <att>n</att> attribute may be used as a reference to a <gi scheme="MEI">staffDef</gi> element with the same value in its <att>n</att> attribute or the staff may contain a staffDef element that defines it. If neither <att>def</att> nor <att>n</att> attributes are present, then the encoding order of the staves is presumed to match the encoding order of the staff definitions.</p>
</remarks>
</elementSpec>