diff --git a/dev/mei-CMN.rng b/dev/mei-CMN.rng index 8b4736e..14218b6 100644 --- a/dev/mei-CMN.rng +++ b/dev/mei-CMN.rng @@ -5,7 +5,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://www.music-encoding.org/ns/mei"> + @@ -11676,278 +11676,10 @@ or Analytical Information

This chapter describes the use of attributes that capture data which may be useful for analytical purposes. The analysis module provides attributes that record relationships between entities found in the encoding. These attributes may be used differently by different users, depending on the purpose of the analysis.

These Guidelines recommend that encoders employ commonly accepted analytical practices, such as ‘functional analysis’ or ‘Schenkerian analysis’, and document their use in the encodingDesc described in section . For general information on musical analysis, please consult Grove Music Online, ‘Analysis’.

-
- General Relationships Between Elements -

The relationships between event elements, such as note, chord, and rest, are the basic material of musical analysis; the attributes described below ensure a closed network of these relations and provide the opportunity to record data useful for common analytical tasks. In the context of a formal analysis, for instance, the attributes presented here can be useful in the capture information about the structure of a musical work.

-

MEI offers several attributes in the att.linking class for the description of basic relationships:

-

- - - -

-

The att.alignment class also contains an attribute for describing temporal relationships:

-

- - - -

-

These attributes accommodate the encoding of linkages between the element carrying the attribute and one or more other elements. All of them use URIs to establish the connection. While the examples below illustrate relationships between musical events, the use of the aforementioned attributes is not restricted to musical events. On the contrary, these attributes can be used to capture information about relations between any elements. Further information on this can be found in .

-

Using the attributes above makes it possible to create relationships between events, which are often widely-spaced in both encoded order and time. The attributes allow a large number of connections, enhancing the informational content, and therefore the potential usefulness, of the encoding.

-

The copyof attribute points to an element of which the current element is a copy. It can be used to repeat a note, for example, without encoding the whole note element again. The copy is a ‘deep’ one; that is, the copyof attribute copies all attributes and child elements which belong to the copied element, such as the dur and oct attributes of a copied note. The value of the copyof attribute must be a URI, which usually refers to an element in the current document. The following example demonstrates use of the copyof attribute:

-

-

- - <section> - <measure n="1"> - <staff n="1"> - <layer> - <note xml:id="analysis.note1_1" dur="4" oct="4" pname="g"/> - </layer> - </staff> - </measure> - <measure n="2"> - <staff n="1"> - <layer> - <note copyof="#analysis.note1_1"/> - </layer> - </staff> - </measure> -</section> - -
-

-

In this example, the note in the second measure has exactly the same characteristics as the note in the first measure.

-

Using copyof is not limited to copying events. The copyof attribute can also be used to copy an entire measure or staff. When there are many repeated features, the use of the copyof greatly reduces encoding effort. The image and the following encoding of the beginning of Schubert’s Erlkönig illustrates the benefit of using the copyof attribute.

-

-

- First measure of Schubert’s Erlkönig - -
-
- - <measure> - <staff n="1"> - <layer> - <tuplet num="3" num.visible="true" xml:id="analysis.tup1"> - <chord dur="8"> - <note oct="3" pname="g"/> - <note oct="4" pname="g"/> - </chord> - <chord dur="8"> - <note oct="3" pname="g"/> - <note oct="4" pname="g"/> - </chord> - <chord dur="8"> - <note oct="3" pname="g"/> - <note oct="4" pname="g"/> - </chord> - </tuplet> - <tuplet copyof="#analysis.tup1" xml:id="analysis.tup2"/> - <tuplet copyof="#analysis.tup1" xml:id="analysis.tup3"/> - <tuplet copyof="#analysis.tup1" xml:id="analysis.tup4"/> - </layer> - </staff> -</measure> - -
-

-

This example can be reduced further by using copyof inside the initial tuplet to represent the repeated chords:

-

-

- - <measure> - <staff n="1"> - <layer> - <mRest/> - </layer> - </staff> - <staff n="2"> - <layer> - <tuplet num="3" num.visible="true" xml:id="analysis.tup5"> - <chord dur="8" xml:id="analysis.t1c1"> - <note oct="3" pname="g"/> - <note oct="4" pname="g"/> - </chord> - <chord copyof="#analysis.t1c1"/> - <chord copyof="#analysis.t1c1"/> - </tuplet> - <tuplet copyof="#analysis.tup5" xml:id="analysis.tup6"/> - <tuplet copyof="#analysis.tup5" xml:id="analysis.tup7"/> - <tuplet copyof="#analysis.tup5" xml:id="analysis.tup8"/> - </layer> - </staff> - <staff n="3"> - <layer> - <mRest/> - </layer> - </staff> -</measure> - -
-

-

While copyof signifies a duplicate copy of an element, the sameas indicates that the current element represents exactly the same entity as the one referenced in sameas. Use of sameas is used for describing the same entity from multiple perspectives, e.g., the same event in two layers.

-

While copyof and sameas have defined semantics, the corresp may be used to create user-defined relationships between elements. The example below demonstrates the encoding of a relationship between the third note and the fermata, even though the fermata is not placed directly above the note.

-

-

- - <measure n="1" right="end"> - <staff n="1"> - <layer n="1"> - <note dur="4" oct="4" pname="c" xml:id="analysis.note1"/> - <note dur="4" oct="4" pname="d" xml:id="analysis.note2"/> - <note dur="2" oct="4" pname="e" xml:id="analysis.note3"/> - </layer> - </staff> - <fermata corresp="#analysis.note3" place="above" tstamp="4.75"/> -</measure> - -
-

-

The corresp attribute only marks the correspondence between the current element and one or more other entities. To describe the nature of the correspondence, one must use annot.

-

The next and prev attributes point to elements which follow or precede the current element in some fashion other than that indicated by encoding order. The use of these attributes helps to avoid confusion in the sequence of events, for example, in voice leading across layers or staves, when the encoding reflects the physical arrangement of voices. In the second measure of the following example, the target of the next attribute occurs after the pointing element in time, but before it in encoding order:

-

-

- Bach Chorale, Ach Gott, vom Himmel sieh' darein, m. 6-7 - -
-
- - <measure n="6" xml:id="analysis.m_sc_62"> - <staff n="1"> - <layer n="1"> - <note dur="4" oct="4" pname="g" xml:id="analysis.n_sc_63_3"/> - <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_65_3"/> - <note dur="4" fermata="above" oct="4" pname="b" xml:id="analysis.n_sc_67_3"/> - <note dur="4" oct="4" pname="g" xml:id="analysis.n_sc_68_3"/> - </layer> - <layer n="2"> - <beam> - <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_63_2"/> - <note dur="8" oct="4" pname="g" xml:id="analysis.n_sc_64_2"/> - </beam> - <beam> - <note dur="8" oct="4" pname="f" xml:id="analysis.n_sc_65_2"/> - <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_66_2"/> - </beam> - <note accid="s" dur="4" next="#analysis.n_sc_68_2" oct="4" pname="d" xml:id="analysis.n_sc_67_2"/> - <beam> - <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_68_1"/> - <note accid="n" dur="8" oct="4" pname="d" xml:id="analysis.n_sc_69_1"/> - </beam> - </layer> - </staff> - <staff n="2"> - <layer n="1"> - <note dur="4" oct="3" pname="b" xml:id="analysis.n_sc_63_1"/> - <note dur="4" oct="4" pname="c" xml:id="analysis.n_sc_65_1"/> - <note dur="4" oct="3" pname="f" xml:id="analysis.n_sc_67_1"/> - <note dur="4" oct="3" pname="b" xml:id="analysis.n_sc_68_2"/> - </layer> - <layer n="1"> - <beam> - <note dur="8" oct="3" pname="e" xml:id="n_sc_63_0"/> - <note dur="8" oct="3" pname="d" xml:id="n_sc_64_0"/> - </beam> - <note dur="4" oct="3" pname="c" xml:id="n_sc_65_0"/> - <note dur="4" fermata="below" oct="2" pname="b" xml:id="n_sc_67_0"/> - <note dur="4" oct="3" pname="e" xml:id="n_sc_68_0"/> - </layer> - </staff> -</measure> -<measure n="7" xml:id="m_sc_70"> - <staff n="1"> - <layer n="1"> - <beam> - <note dur="8" oct="4" pname="a" xml:id="analysis.n_sc_71_3"/> - <note dur="8" oct="4" pname="b" xml:id="analysis.n_sc_72_3"/> - </beam> - <note dur="4" oct="5" pname="c" xml:id="analysis.n_sc_73_3"/> - <note dur="4" oct="4" pname="b" xml:id="analysis.n_sc_75_3"/> - <beam> - <note dur="8" oct="5" pname="c" xml:id="analysis.n_sc_76_3"/> - <note dur="8" oct="4" pname="b" xml:id="analysis.n_sc_77_3"/> - </beam> - </layer> - <layer n="2"> - <space dur="4"/> - <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_73_2"/> - <note accid="s" dur="4" oct="4" pname="g" xml:id="analysis.n_sc_75_2"/> - <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_76_2"/> - </layer> - <layer n="3"> - <beam> - <note dur="8" oct="4" pname="c" xml:id="analysis.n_sc_71_1"/> - <note dur="8" oct="4" pname="d" xml:id="analysis.n_sc_72_1"/> - </beam> - <note dur="4" oct="4" pname="e" xml:id="analysis.n_sc_73_1"/> - <note dur="4" oct="4" pname="e" xml:id="analysis.n_sc_75_1"/> - <beam> - <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_76_1"/> - <note dur="8" oct="4" pname="d" xml:id="analysis.n_sc_77_1"/> - </beam> - </layer> - </staff> - <staff n="2"> - <layer n="1"> - <note dur="4" next="#analysis.n_sc_73_2" oct="3" pname="a" xml:id="analysis.n_sc_71_2"/> - </layer> - <layer n="2"> - <note accid="n" dur="4" oct="3" pname="f" xml:id="n_sc_71_0"/> - <beam> - <note dur="8" oct="3" pname="c" xml:id="n_sc_73_0"/> - <note dur="8" oct="3" pname="d" xml:id="n_sc_74_0"/> - </beam> - <note dur="4" oct="3" pname="e" xml:id="n_sc_75_0"/> - <beam> - <note dur="8" oct="2" pname="a" xml:id="n_sc_76_0"/> - <note dur="8" oct="2" pname="b" xml:id="n_sc_77_0"/> - </beam> - </layer> - </staff> -</measure> - -
-

-

This attribute may also be useful to clarify a sequence of entities which occurs across some form of interruption, in this case, notes before and after a system or page break where there is no custos or direct in the source:

-

-

- - <measure n="1"> - <staff n="1"> - <layer> - <note dur="4" - next="#analysis.m1s1e2" - oct="4" - pname="f" - stem.dir="up" - xml:id="analysis.m1s1e1"/> - <pb/> - <note dur="8" - next="#analysis.m1s1e3" - oct="3" - pname="b" - prev="#analysis.m1s1e1" - stem.dir="up" - xml:id="analysis.m1s1e2"/> - <note dur="8" - oct="4" - pname="c" - prev="#analysis.m1s1e2" - stem.dir="up" - xml:id="analysis.m1s1e3"/> - </layer> - </staff> -</measure> - -
-

-

A one-to-many relationship between the current element and the entities being referred to can be expressed by using a list of space-separated URIs in corresp.

-

The synch attribute points to an element that is synchronous with; that is, begins at the same moment in time, as the current element. It is useful when the encoding order differs from the order in which entities occur in time.

-

The when attribute may be used to indicate the point of occurrence of the feature bearing this attribute along a time line. Its value must be the ID of a when element. For more detailed information regarding the use of when, please see .

-
+

The relationships between event elements, such as note, chord, and rest, are the basic material of musical analysis. MEI provides linking attributes to ensure a closed network of these relations. They provide the opportunity to record data useful for common analytical tasks. In the context of a formal analysis, for instance, these attributes can be useful in the capture information about the structure of a musical work. Further information on these attributes can be found in .

Event-Specific Analytical Information -

In addition to the common analytical attributes, the analysis module also offers other, more specific attributes on certain musical elements:

+

In addition to the common linking attributes (see ), the analysis module also offers other, more specific attributes on certain musical elements:

@@ -13911,25 +13643,394 @@ or

Links

An element is a ‘link’ when it has an attribute whose value is a reference to the ID of one or more other elements (cross-reference). These link elements indicate an association between themselves (or one of their ancestors) and one or more other entities, either inside the same document or elsewhere. An association between two elements in the same document is said to be an ‘internal’ link, while an association that involves an entity outside the current document is called an ‘external’ link. However, either of the elements discussed in the following section can be used for either purpose.

-
-
- Linking from MEI -

This section describes techniques and approaches to establish references within a single MEI document, or to link out from one MEI document to another or to other external sources.

-
- Pointers and References -

The link elements discussed in this section are the ptr and the ref elements which are declared in the MEI.ptrref module.

+
+ General Relationships Between Elements +

MEI offers several attributes in the att.linking class for the description of basic relationships:

- - +

+

The att.alignment class contains an attribute for describing temporal relationships:

- The ptr element is a traversible pointer to another location. It is an empty linking element that uses only attributes to describe its link destination. It cannot contain text or sub-elements to describe the referenced object. The next example shows the use of the ptr element to target a certain identifier (here e.g., a page number, or more precisely, page break elements, pb, bearing these identifiers) from within a list of item descriptions: + + +

+

The att.dataPointing class provides an attribute for pointing from the header into the music content:

-

- + + + +

+

To reference images, the att.facsimile class provides an attribute for pointing to surface and zone elements:

+

+ + + +

+ +

These attributes accommodate the encoding of linkages between the element carrying the attribute and one or more other elements. All of them use URIs to establish the connection. While the examples below illustrate relationships between musical events, the use of the aforementioned attributes is not restricted to musical events. On the contrary, these attributes can be used to capture information about relations between any elements.

+

Using the attributes above makes it possible to create relationships between events, which are often widely-spaced in both encoded order and time. The attributes allow a large number of connections, enhancing the informational content, and therefore the potential usefulness, of the encoding.

+

The copyof attribute points to an element of which the current element is a copy. It can be used to repeat a note, for example, without encoding the whole note element again. The copy is a ‘deep’ one; that is, the copyof attribute copies all attributes and child elements which belong to the copied element, such as the dur and oct attributes of a copied note. The value of the copyof attribute must be a URI, which usually refers to an element in the current document. The following example demonstrates use of the copyof attribute:

+

+

+ + <section> + <measure n="1"> + <staff n="1"> + <layer> + <note xml:id="analysis.note1_1" dur="4" oct="4" pname="g"/> + </layer> + </staff> + </measure> + <measure n="2"> + <staff n="1"> + <layer> + <note copyof="#analysis.note1_1"/> + </layer> + </staff> + </measure> +</section> + +
+

+

In this example, the note in the second measure has exactly the same characteristics as the note in the first measure.

+

Using copyof is not limited to copying events. The copyof attribute can also be used to copy an entire measure or staff. When there are many repeated features, the use of the copyof greatly reduces encoding effort. The image and the following encoding of the beginning of Schubert’s Erlkönig illustrates the benefit of using the copyof attribute.

+

+

+ First measure of Schubert’s Erlkönig + +
+
+ + <measure> + <staff n="1"> + <layer> + <tuplet num="3" num.visible="true" xml:id="analysis.tup1"> + <chord dur="8"> + <note oct="3" pname="g"/> + <note oct="4" pname="g"/> + </chord> + <chord dur="8"> + <note oct="3" pname="g"/> + <note oct="4" pname="g"/> + </chord> + <chord dur="8"> + <note oct="3" pname="g"/> + <note oct="4" pname="g"/> + </chord> + </tuplet> + <tuplet copyof="#analysis.tup1" xml:id="analysis.tup2"/> + <tuplet copyof="#analysis.tup1" xml:id="analysis.tup3"/> + <tuplet copyof="#analysis.tup1" xml:id="analysis.tup4"/> + </layer> + </staff> +</measure> + +
+

+

This example can be reduced further by using copyof inside the initial tuplet to represent the repeated chords:

+

+

+ + <measure> + <staff n="1"> + <layer> + <mRest/> + </layer> + </staff> + <staff n="2"> + <layer> + <tuplet num="3" num.visible="true" xml:id="analysis.tup5"> + <chord dur="8" xml:id="analysis.t1c1"> + <note oct="3" pname="g"/> + <note oct="4" pname="g"/> + </chord> + <chord copyof="#analysis.t1c1"/> + <chord copyof="#analysis.t1c1"/> + </tuplet> + <tuplet copyof="#analysis.tup5" xml:id="analysis.tup6"/> + <tuplet copyof="#analysis.tup5" xml:id="analysis.tup7"/> + <tuplet copyof="#analysis.tup5" xml:id="analysis.tup8"/> + </layer> + </staff> + <staff n="3"> + <layer> + <mRest/> + </layer> + </staff> +</measure> + +
+

+

While copyof signifies a duplicate copy of an element, the sameas indicates that the current element represents exactly the same entity as the one referenced in sameas. Use of sameas is used for describing the same entity from multiple perspectives, e.g., the same event in two layers.

+

While copyof and sameas have defined semantics, the corresp may be used to create user-defined relationships between elements. The example below demonstrates the encoding of a relationship between the third note and the fermata, even though the fermata is not placed directly above the note.

+

+

+ + <measure n="1" right="end"> + <staff n="1"> + <layer n="1"> + <note dur="4" oct="4" pname="c" xml:id="analysis.note1"/> + <note dur="4" oct="4" pname="d" xml:id="analysis.note2"/> + <note dur="2" oct="4" pname="e" xml:id="analysis.note3"/> + </layer> + </staff> + <fermata corresp="#analysis.note3" place="above" tstamp="4.75"/> +</measure> + +
+

+

The corresp attribute only marks the correspondence between the current element and one or more other entities. To describe the nature of the correspondence, one must use annot.

+

One possible usage of corresp is to link related editorial markup. Because of the hierarchical nature of XML it may be necessary to split related editorial markup into multiple elements. In the following example, corresp is used to encode the relationship between those elements.

+
+ + <?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?> +<?xml-model href="https://music-encoding.org/schema/dev/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?> +<mei xmlns="http://www.music-encoding.org/ns/mei" meiversion="5.1-dev"> + <meiHead> + <fileDesc> + <titleStmt> + <title>Example of attribute corresp</title> + </titleStmt> + <pubStmt> + <date isodate="2024">2024</date> + <respStmt> + <corpName>Music Encoding Initiative (MEI)</corpName> + </respStmt> + <availability> + <useRestrict label="license" auth="https://spdx.org/licenses/" codedval="ECL-2.0"> + <p>Educational Community License v2.0</p> + </useRestrict> + </availability> + </pubStmt> + <seriesStmt> + <title>MEI guidelines examples</title> + </seriesStmt> + <notesStmt> + <annot>Usage of attribute corresp with editorial markup.</annot> + </notesStmt> + </fileDesc> + </meiHead> + <music> + <body> + <mdiv> + <score xml:id="score-1286820719"> + <scoreDef xml:id="scoredef-1058976644" key.mode="major" keysig="1s" meter.count="6" meter.unit="8"> + <staffGrp xml:id="staffgrp-0664100862" bar.thru="true"> + <staffDef xml:id="staffdef-1106436456" n="1" lines="5" clef.shape="F" clef.line="4"> + <instrDef xml:id="instrdef-0137914882" midi.channel="0" midi.instrnum="0" midi.volume="68.00%" /> + </staffDef> + </staffGrp> + </scoreDef> + <section xml:id="Tema"> + <measure xml:id="measure-2058315290" n="1"> + <staff xml:id="staff-0363750297" n="1"> + <layer xml:id="layer-1609584463" n="1"> + <note xml:id="note-0434568382" dur="8" oct="3" pname="g" stem.dir="down"/> + <unclear xml:id="uu01ius1" corresp="#uvvet6x2"> + <note xml:id="note-1576381641" dur="4" oct="4" pname="d" stem.dir="down"/> + </unclear> + <note xml:id="note-0740487248" dur="8" oct="3" pname="a" stem.dir="down"/> + <note xml:id="note-2110615453" dur="4" oct="4" pname="d" stem.dir="down"/> + </layer> + </staff> + <slur xml:id="slur-0198912827" startid="#note-0434568382" endid="#note-1576381641" curvedir="above"/> + <unclear xml:id="uvvet6x2" corresp="#uu01ius1"> + <dynam xml:id="dynam-1643328657" place="below" staff="1" tstamp="2.000000" vgrp="40">sf</dynam> + </unclear> + <slur xml:id="slur-0701442771" startid="#note-0740487248" endid="#note-2110615453" curvedir="above"/> + <dynam xml:id="dynam-1610913814" place="below" staff="1" tstamp="5.000000" vgrp="40">sf</dynam> + </measure> + </section> + </score> + </mdiv> + </body> + </music> +</mei> +
+
+ + <measure n="1"> + <staff n="1"> + <layer n="1"> + <note xml:id="note-0000000434568382" dur="8" oct="3" pname="g" stem.dir="down"/> + <unclear xml:id="uu01ius1" corresp="#uvvet6x2"> + <note xml:id="note-0000001576381641" dur="4" oct="4" pname="d" stem.dir="down"/> + </unclear> + <note xml:id="note-0000000740487248" dur="8" oct="3" pname="a" stem.dir="down"/> + <note xml:id="note-0000002110615453" dur="4" oct="4" pname="d" stem.dir="down"/> + </layer> + </staff> + <slur startid="#note-0000000434568382" endid="#note-0000001576381641" curvedir="above"/> + <unclear xml:id="uvvet6x2" corresp="#uu01ius1"> + <dynam place="below" staff="1">sf</dynam> + </unclear> + <slur startid="#note-0000000740487248" endid="#note-0000002110615453" curvedir="above"/> + <dynam place="below" staff="1">sf</dynam> +</measure> +
+

The next and prev attributes point to elements which follow or precede the current element in some fashion other than that indicated by encoding order. The use of these attributes helps to avoid confusion in the sequence of events, for example, in voice leading across layers or staves, when the encoding reflects the physical arrangement of voices. In the second measure of the following example, the target of the next attribute occurs after the pointing element in time, but before it in encoding order:

+

+

+ Bach Chorale, Ach Gott, vom Himmel sieh' darein, m. 6-7 + +
+
+ + <measure n="6" xml:id="analysis.m_sc_62"> + <staff n="1"> + <layer n="1"> + <note dur="4" oct="4" pname="g" xml:id="analysis.n_sc_63_3"/> + <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_65_3"/> + <note dur="4" fermata="above" oct="4" pname="b" xml:id="analysis.n_sc_67_3"/> + <note dur="4" oct="4" pname="g" xml:id="analysis.n_sc_68_3"/> + </layer> + <layer n="2"> + <beam> + <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_63_2"/> + <note dur="8" oct="4" pname="g" xml:id="analysis.n_sc_64_2"/> + </beam> + <beam> + <note dur="8" oct="4" pname="f" xml:id="analysis.n_sc_65_2"/> + <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_66_2"/> + </beam> + <note accid="s" dur="4" next="#analysis.n_sc_68_2" oct="4" pname="d" xml:id="analysis.n_sc_67_2"/> + <beam> + <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_68_1"/> + <note accid="n" dur="8" oct="4" pname="d" xml:id="analysis.n_sc_69_1"/> + </beam> + </layer> + </staff> + <staff n="2"> + <layer n="1"> + <note dur="4" oct="3" pname="b" xml:id="analysis.n_sc_63_1"/> + <note dur="4" oct="4" pname="c" xml:id="analysis.n_sc_65_1"/> + <note dur="4" oct="3" pname="f" xml:id="analysis.n_sc_67_1"/> + <note dur="4" oct="3" pname="b" xml:id="analysis.n_sc_68_2"/> + </layer> + <layer n="1"> + <beam> + <note dur="8" oct="3" pname="e" xml:id="n_sc_63_0"/> + <note dur="8" oct="3" pname="d" xml:id="n_sc_64_0"/> + </beam> + <note dur="4" oct="3" pname="c" xml:id="n_sc_65_0"/> + <note dur="4" fermata="below" oct="2" pname="b" xml:id="n_sc_67_0"/> + <note dur="4" oct="3" pname="e" xml:id="n_sc_68_0"/> + </layer> + </staff> +</measure> +<measure n="7" xml:id="m_sc_70"> + <staff n="1"> + <layer n="1"> + <beam> + <note dur="8" oct="4" pname="a" xml:id="analysis.n_sc_71_3"/> + <note dur="8" oct="4" pname="b" xml:id="analysis.n_sc_72_3"/> + </beam> + <note dur="4" oct="5" pname="c" xml:id="analysis.n_sc_73_3"/> + <note dur="4" oct="4" pname="b" xml:id="analysis.n_sc_75_3"/> + <beam> + <note dur="8" oct="5" pname="c" xml:id="analysis.n_sc_76_3"/> + <note dur="8" oct="4" pname="b" xml:id="analysis.n_sc_77_3"/> + </beam> + </layer> + <layer n="2"> + <space dur="4"/> + <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_73_2"/> + <note accid="s" dur="4" oct="4" pname="g" xml:id="analysis.n_sc_75_2"/> + <note dur="4" oct="4" pname="a" xml:id="analysis.n_sc_76_2"/> + </layer> + <layer n="3"> + <beam> + <note dur="8" oct="4" pname="c" xml:id="analysis.n_sc_71_1"/> + <note dur="8" oct="4" pname="d" xml:id="analysis.n_sc_72_1"/> + </beam> + <note dur="4" oct="4" pname="e" xml:id="analysis.n_sc_73_1"/> + <note dur="4" oct="4" pname="e" xml:id="analysis.n_sc_75_1"/> + <beam> + <note dur="8" oct="4" pname="e" xml:id="analysis.n_sc_76_1"/> + <note dur="8" oct="4" pname="d" xml:id="analysis.n_sc_77_1"/> + </beam> + </layer> + </staff> + <staff n="2"> + <layer n="1"> + <note dur="4" next="#analysis.n_sc_73_2" oct="3" pname="a" xml:id="analysis.n_sc_71_2"/> + </layer> + <layer n="2"> + <note accid="n" dur="4" oct="3" pname="f" xml:id="n_sc_71_0"/> + <beam> + <note dur="8" oct="3" pname="c" xml:id="n_sc_73_0"/> + <note dur="8" oct="3" pname="d" xml:id="n_sc_74_0"/> + </beam> + <note dur="4" oct="3" pname="e" xml:id="n_sc_75_0"/> + <beam> + <note dur="8" oct="2" pname="a" xml:id="n_sc_76_0"/> + <note dur="8" oct="2" pname="b" xml:id="n_sc_77_0"/> + </beam> + </layer> + </staff> +</measure> + +
+

+

This attribute may also be useful to clarify a sequence of entities which occurs across some form of interruption, in this case, notes before and after a system or page break where there is no custos or direct in the source:

+

+

+ + <measure n="1"> + <staff n="1"> + <layer> + <note dur="4" + next="#analysis.m1s1e2" + oct="4" + pname="f" + stem.dir="up" + xml:id="analysis.m1s1e1"/> + <pb/> + <note dur="8" + next="#analysis.m1s1e3" + oct="3" + pname="b" + prev="#analysis.m1s1e1" + stem.dir="up" + xml:id="analysis.m1s1e2"/> + <note dur="8" + oct="4" + pname="c" + prev="#analysis.m1s1e2" + stem.dir="up" + xml:id="analysis.m1s1e3"/> + </layer> + </staff> +</measure> + +
+

+

A one-to-many relationship between the current element and the entities being referred to can be expressed by using a list of space-separated URIs in corresp.

+

The synch attribute points to an element that is synchronous with; that is, begins at the same moment in time, as the current element. It is useful when the encoding order differs from the order in which entities occur in time.

+

The when attribute may be used to indicate the point of occurrence of the feature bearing this attribute along a time line. Its value must be the ID of a when element. For more detailed information regarding the use of when, please see .

+
+
+
+ Linking from MEI +

This section describes techniques and approaches to establish references within a single MEI document, or to link out from one MEI document to another or to other external sources.

+
+ Pointers and References +

The link elements discussed in this section are the ptr and the ref elements which are declared in the MEI.ptrref module.

+

+ + + + +

+

+ The ptr element is a traversible pointer to another location. It is an empty linking element that uses only attributes to describe its link destination. It cannot contain text or sub-elements to describe the referenced object. The next example shows the use of the ptr element to target a certain identifier (here e.g., a page number, or more precisely, page break elements, pb, bearing these identifiers) from within a list of item descriptions: +

+

+

+ <list> <li> <!-- item description --> @@ -13981,12 +14082,7 @@ or

- The att.linking class provides another set of common attributes (a more detailed explanation is provided in : ): -

-

- - - + The att.linking class provides another set of common attributes for linking (see ):

Additionally, the following attributes are also available on ptr and ref: