att.common.anl

att.common.anl Common analytical attributes. When the MEI.performance module is used, the when attribute is also a member of this attribute class.
Module MEI.analysis
Members
anchoredText, cc, chan, chanPr, cue, curve, fb, hex, marker, metaText, noteOff, noteOn, port, prog, seqNum, symbol, trkName, vel (direct members of att.common.anl)
f (via att.f.anl)
pb (via att.pb.anl)
sb (via att.sb.anl)
Attributes
@copyof (optional) Points to an element of which the current element is a copy. Value conforms to data.URI . att.common.anl
@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. att.common.anl
@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. att.common.anl
@prev (optional) Points to the previous event(s) in a user-defined collection. One or more values from data.URI , separated by spaces. att.common.anl
@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. att.common.anl
@synch (optional) Points to elements that are synchronous with the current element. One or more values from data.URI , separated by spaces. att.common.anl
@when (optional) Indicates the point of occurrence of this feature along a time line. Its value must be the ID of a when element elsewhere in the document. Value conforms to data.URI . att.alignment
Declaration
<classes>
<memberOf key= " att.alignment" />
</classes>
<attDef ident= "copyof" usage= "opt">
<desc>Points to an element of which the current element is a copy. </desc>
<datatype maxOccurs= "1" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "When_copyof_element_empty" scheme= "isoschematron">
<constraint>
<sch:rule context= "mei:*[@copyof]">
<sch:assert test= "count(child::node()) = 0"> An element with a copyof attribute cannot have content. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
<constraintSpec ident= "check_copyofTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@copyof">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @copyof attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> The value in @copyof should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident= "corresp" usage= "opt">
<desc>Used to point to other elements that correspond to this one in a generic fashion. </desc>
<datatype maxOccurs= "unbounded" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "check_correspTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@corresp">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @corresp attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @corresp should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident= "next" usage= "opt">
<desc>Used to point to the next event(s) in a user-defined collection. </desc>
<datatype maxOccurs= "unbounded" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "check_nextTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@next">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @next attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @next should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident= "prev" usage= "opt">
<desc>Points to the previous event(s) in a user-defined collection. </desc>
<datatype maxOccurs= "unbounded" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "check_prevTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@prev">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @prev attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @prev should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident= "sameas" usage= "opt">
<desc>Points to an element that is the same as the current element but is not a literal copy of the current element. </desc>
<datatype maxOccurs= "unbounded" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "check_sameasTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@sameas">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @sameas attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @sameas should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
<attDef ident= "synch" usage= "opt">
<desc>Points to elements that are synchronous with the current element. </desc>
<datatype maxOccurs= "unbounded" minOccurs= "1">
<rng:ref name= " data.URI" />
</datatype>
<constraintSpec ident= "check_synchTarget" scheme= "isoschematron">
<constraint>
<sch:rule context= "@synch">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @synch attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @synch should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
</constraint>
</constraintSpec>
</attDef>
Constraints
An element with a copyof attribute cannot have content.
<sch:rule context= "mei:*[@copyof]">
<sch:assert test= "count(child::node()) = 0"> An element with a copyof attribute cannot have content. </sch:assert>
</sch:rule>
Constraints
@copyof attribute should have content.
The value in @copyof should correspond to the @xml:id attribute of an element.
<sch:rule context= "@copyof">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @copyof attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> The value in @copyof should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
Constraints
@corresp attribute should have content.
Each value in @corresp should correspond to the @xml:id attribute of an element.
<sch:rule context= "@corresp">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @corresp attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @corresp should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
Constraints
@next attribute should have content.
Each value in @next should correspond to the @xml:id attribute of an element.
<sch:rule context= "@next">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @next attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @next should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
Constraints
@prev attribute should have content.
Each value in @prev should correspond to the @xml:id attribute of an element.
<sch:rule context= "@prev">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @prev attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @prev should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
Constraints
@sameas attribute should have content.
Each value in @sameas should correspond to the @xml:id attribute of an element.
<sch:rule context= "@sameas">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @sameas attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @sameas should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>
Constraints
@synch attribute should have content.
Each value in @synch should correspond to the @xml:id attribute of an element.
<sch:rule context= "@synch">
<sch:assert role= "warning" test= "not(normalize-space(.) eq '')"> @synch attribute should have content. </sch:assert>
<sch:assert role= "warning" test= "every $i in tokenize(., '\s+') satisfies substring($i,2)=//mei:*/@xml:id"> Each value in @synch should correspond to the @xml:id attribute of an element. </sch:assert>
</sch:rule>

MEI Guidelines Version 3.0.0

Attribute Classes