<staffGrp>

(staff group) – (staff group) – A group of bracketed or braced staves.
Module
Attributes
@bar.thru, @instr, @label, @symbol, @type, @xml:id
@bar.thru(optional)Indicates whether bar lines go across the space between staves (true) or are only drawn across the lines of each staff (false). Value conforms to data.BOOLEAN.
@instr(optional)Provides a way of pointing to a MIDI instrument definition. It must contain the ID of an <instrDef> element elsewhere in the document. Value conforms to data.URI.
@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.
@symbol(optional)Specifies the symbol used to group a set of staves. Allowed values are: "brace" (Curved symbol, , {.), "bracket" (Square symbol, , [, but with curved/angled top and bottom segments.), "bracketsq" (Square symbol, , [, with horizontal top and bottom segments.), "line" (Line symbol, , |, (wide) line without top and bottom curved/horizontal segments.), "none" (Grouping symbol missing.)
@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.
@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 common to many elements.
(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.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 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.visual) Visual domain attributes.
@bar.thru(optional)Indicates whether bar lines go across the space between staves (true) or are only drawn across the lines of each staff (false). Value conforms to data.BOOLEAN.
(MEI.shared) Attributes that describe the symbol used to group a set of staves.
@symbol(optional)Specifies the symbol used to group a set of staves. Allowed values are: "brace" (Curved symbol, , {.), "bracket" (Square symbol, , [, but with curved/angled top and bottom segments.), "bracketsq" (Square symbol, , [, with horizontal top and bottom segments.), "line" (Line symbol, , |, (wide) line without top and bottom curved/horizontal segments.), "none" (Grouping symbol missing.)
(MEI.gestural) Gestural domain attributes.
(MEI.midi) Attributes which identify a MIDI instrument.
@instr(optional)Provides a way of pointing to a MIDI instrument definition. It must contain the ID of an <instrDef> element elsewhere in the document. Value conforms to data.URI.
@instr(optional)Provides a way of pointing to a MIDI instrument definition. It must contain the ID of an <instrDef> element elsewhere in the document. Value conforms to data.URI.
@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.
@symbol(optional)Specifies the symbol used to group a set of staves. Allowed values are: "brace" (Curved symbol, , {.), "bracket" (Square symbol, , [, but with curved/angled top and bottom segments.), "bracketsq" (Square symbol, , [, with horizontal top and bottom segments.), "line" (Line symbol, , |, (wide) line without top and bottom curved/horizontal segments.), "none" (Grouping symbol missing.)
@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.
@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.
@bar.thru(optional)Indicates whether bar lines go across the space between staves (true) or are only drawn across the lines of each staff (false). Value conforms to data.BOOLEAN.
Member of
model.staffGrpLikeGroups elements that permit declaration of staff group properties.
Contained By
(MEI.shared) Groups elements that permit declaration of staff group properties.
<scoreDef>(score definition) – Container for score meta-information.
<staffGrp>(staff group) – A group of bracketed or braced staves.
<scoreDef>(score definition) – Container for score meta-information.
<staffGrp>(staff group) – A group of bracketed or braced staves.
May Contain
(MEI.shared) Groups elements used to declare a MIDI instrument.
<instrDef>MIDI instrument declaration.
(MEI.shared) Groups elements used to assign a label to other parts of a document.
<label>A container for document text that identifies the feature to which it is attached. For a "tool tip" or other generated label, use the @label attribute.
<labelAbbr>A label on the pages following the first.
(MEI.shared) Groups elements that permit declaration of staff properties.
<staffDef>Container for staff meta-information.
(MEI.shared) Groups elements that permit declaration of staff group properties.
<staffGrp>(staff group) – A group of bracketed or braced staves.
<instrDef>MIDI instrument declaration.
<label>A container for document text that identifies the feature to which it is attached. For a "tool tip" or other generated label, use the @label attribute.
<labelAbbr>A label on the pages following the first.
<staffDef>Container for staff meta-information.
<staffGrp>(staff group) – A group of bracketed or braced staves.
Remarks

System is the more proper name for this concept (Read, p. 37-38). Bracketed staff groups may contain other bracketed or braced staff groups or single staves. See Read, p. 35-38, examples p. 434, 438.

Constraints

Each staffDef must have a unique value for the n attribute.
Each staffDef must have a unique value for the n attribute.

Declaration
<elementSpec rend="add" ident="staffGrp" module="MEI.shared">
<gloss xml:lang="en">staff group</gloss>
<desc rend="replace">(staff group) – A group of bracketed or braced staves.</desc>
<classes>
<memberOf key="att.common"/>
<memberOf key="att.staffGrp.vis"/>
<memberOf key="att.staffGrp.ges"/>
<memberOf key="model.staffGrpLike"/>
</classes>
<content>
<zeroOrMore>
<choice>
<ref name="model.labelLike"/>
</choice>
</zeroOrMore>
<zeroOrMore>
<ref name="model.instrDefLike"/>
</zeroOrMore>
<oneOrMore>
<choice>
<ref name="model.staffGrpLike"/>
<ref name="model.staffDefLike"/>
</choice>
</oneOrMore>
</content>
<constraintSpec ident="Check_staffGrp_unique_staff_n_values" scheme="schematron">
<constraint>
<sch:rule context="mei:staffGrp">
<sch:let name="countstaves" value="count(descendant::mei:staffDef)"/>
<sch:let name="countuniqstaves" value="count(distinct-values(descendant::mei:staffDef/@n))"/>
<sch:assert test="$countstaves eq $countuniqstaves">Each staffDef must have a unique value for the n attribute.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<constraintSpec ident="Check_staffGrp_unique_staff_n_values" scheme="schematron">
<constraint>
<sch:rule context="mei:staffGrp">
<sch:let name="countstaves" value="count(descendant::mei:staffDef)"/>
<sch:let name="countuniqstaves" value="count(distinct-values(descendant::mei:staffDef/@n))"/>
<sch:assert test="$countstaves eq $countuniqstaves">Each staffDef must have a unique value for the n attribute.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<remarks>
<p>System is the more proper name for this concept (Read, p. 37-38). Bracketed staff groups may contain other bracketed or braced staff groups or single staves. See Read, p. 35-38, examples p. 434, 438.</p>
</remarks>
</elementSpec>