<classSpec xmlns="http://www.tei-c.org/ns/1.0" rend="add" ident="att.barring" module="MEI.shared" type="atts">
<desc xml:lang="en">Attributes that capture the placement of bar lines.</desc>
<attList>
<attDef ident="bar.len" usage="opt">
<desc xml:lang="en">States the length of bar lines in virtual units. The value must be greater than 0
and
is typically equal to 2 times (the number of staff lines - 1);
<abbr>e.g.</abbr>, a value of
<val>8</val> for a
5-line staff.</desc>
<datatype>
<dataRef name="decimal">
<dataFacet name="minExclusive" value="0"/>
</dataRef>
</datatype>
<remarks xml:lang="en">
<p>This attribute is ignored if the value of the bar.style attribute is
<val>mensur</val>.</p>
</remarks>
</attDef>
<attDef ident="bar.method" usage="opt">
<desc xml:lang="en">Records the method of barring.</desc>
<datatype>
<dataRef key="data.BARMETHOD"/>
</datatype>
<constraintSpec ident="check_barmethod" scheme="schematron">
<constraint>
<sch:rule context="@bar.method[parent::*[matches(local-name(), '(staffDef|measure)')]]">
<sch:assert test="not(. eq 'mensur')">"mensur" not allowed in this
context.</sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident="bar.place" usage="opt">
<desc xml:lang="en">Denotes the staff location of bar lines, if the length is non-standard; that is, not
equal to 2 times (the number of staff lines - 1).</desc>
<datatype>
<dataRef key="data.STAFFLOC"/>
</datatype>
<remarks xml:lang="en">
<p>The location follows
<ident type="datatype">data.STAFFLOC</ident>. For example, on a
5-line staff the lines are numbered 0, 2, 4, 6, and 8, and the spaces between them
are
numbered 1, 3, 5, and 7. The spaces directly below and above the staff are numbered
-1
and 9, respectively. A value of
<val>8</val> puts the bar line through the top line of
the staff.</p>
<p>This attribute is ignored if the value of the bar.style attribute is
<val>mensur</val>.</p>
</remarks>
</attDef>
</attList>
</classSpec>