• Ei tuloksia

The analysis model

7.7 Environment modifiers

The EnvironmentModifier class is a subclass of CoreSymbol. It represents vari-ous symbols that apply changes to the environments of each other or of other

notation symbols, of Notes and Rests in particular. EnvironmentModifiers may affect either the rhythmic or harmonic structure of a Staff, a group of Staves or a whole System. Similarly to other CoreSymbols, EnvironmentModifiers play a dominant role in spacing.

A class diagram of EnvironmentModifier and its subclasses is shown in Fig-ure 7-7. The subclasses of EnvironmentModifier are Clef, KeySignatFig-ure, TimeS-ignature, and Barline. Like other CoreSymbols, EnvironmentModifier is part of Staff. An EnvironmentModifier may affect more than one system. For example, a Barline may be drawn across several staves. This behavior is modeled using the association with the “extends to”-role between EnvironmentModifier and Staff. Each instance of EnvironmentModifier is always part of one and only one Staff, while it can “extend to” an arbitrary amount of other Staves.

Barlines are further divided into the set of subclasses shown in Figure 7-8.

The subclasses of Barline are SingleBarline, DoubleBarline, and FinalBarline.

SingleBarline is a single-line symbol that marks off measures; it is the most common type of barline. DoubleBarline is a two-line barline with both lines having the same thickness. FinalBarline represents the end of a passage of music, and in some cases, the beginning of a new one. The passage(s) may be repeated. A FinalBarline symbol consists of two (or sometimes three) vertical lines, typically one thinner and one thicker line. FinalBarline may contain an arbitrary amount of RepeatDots (typically two for each Staff per FinalBarline).

Two FinalBarlines may be adjoint (marked by an association). Two adjoint FinalBarlines may share a common thick line (see Gerou & Lusk 1996: 246).

Both SingleBarline and DoubleBarline may be dashed.

Environment Modifier

Staff

KeySignature

Clef Time Barline

Signature extends

to

Figure 7-7: Environment modifiers

Ross describes two special kinds of barlines: systemic barlines and connect-ing barlines (1970: 151-152). Gerou and Lusk also mention the systemic barline as a symbol that groups staves into systems (1996: 56, 308). Systemic barlines are modeled with a respective class, SystemicBarline, defined as a subclass of SingleBarline. The analysis model does not contain a class for connecting bar-lines. Instead, the diagram in Figure 7-7 shows that any Barline, through its superclass, EnvironmentModifier, may be associated with an arbitrary number of Staves, including the Staff which the Barline is part of. SystemicBarline is modeled as a dedicated class to indicate its specialized function of connecting staves to form systems.

7.8 Attachments

As presented in Figure 7-4, the Attachment class contains the subclasses Con-nector and Mark. ConCon-nector is a superclass for symbols which, either tightly or loosely, connect two or more other symbols. Mark represents an instantaneous event, although logically it may signify the beginning of a gradual progression.

The difference between Connector and Mark can be described as follows:

Connector marks a musical structure that has an explicit beginning and end. In contrast, Mark is either an instantaneous event or beginning of a process which

Barline

Systemic

Barline RepeatDot

* 0,1 Final 0,1 Barline Single

Barline

Double Barline

adjoint

dashed dashed

Figure 7-8: Types of barlines

has either an implicit end or in which another symbol states the end. Examples of Connectors are slurs and ties. Examples of Marks are dynamic expressions (

f

,

mf

,

ppp

, etc.). They can be regarded as symbols that set a condition, which stands until a new condition of the same type is encountered.

Attachments are not aggregates of the symbols they affect. Thus, Attach-ments do not contain notes, rests, or other, equally high-level symbols. The rela-tionships between Attachments and Notes, for example, are modeled as associations.

7.8.1 Connector

A classification of Connector symbols is shown in Figure 7-9. A Connector sym-bol may be logically continued, for example, to the next line or page. The con-tinuation is modeled as an association between two Connector instances. It is assumed that a Connector is associated with the CoreSymbols that start and end some passage, indicated by the Connector.

Connector

Ending

Arc Tuplet

Bracket

Wedge PedalLine

Ottava

Tie Slur

continued next previous

Figure 7-9: Connectors

The subclasses of Connector are Arc, TupletBracket, Ending, Ottava, Wedge, and PedalLine. Slur and Tie share a common visual shape, but they differ in graphical placement and function. Thus, they are modeled as subclasses of Arc, which represents their common properties. Tuplet represents both tuplet brack-ets and numbers. Ending represents ending brackbrack-ets and numbers. Ottava is assumed to include both a text expression (e.g., “8va”) and a horizontal line, although this is not explicitly shown in the UML diagram. Wedge represents graphic crescendo and diminuendo symbols (see Gerou & Lusk 1996: 134). In SCORE terminology, wedges are called “hairpins”. PedalLine represents only pedal symbols that contain a line indicating how long the pedal is held. An instantaneous pedal mark is a subclass of Mark (see below), and is not consid-ered to be a Connector.

7.8.2 Marks

The class diagram of the Mark class and its subclasses is shown in Figure 7-10.

The subclasses of Mark are DynamicMark, PedalMark, Pause, TextFrame, and Tempo. DynamicMark objects include common text abbreviations such as

f

,

ff

,

fff

,

p

,

pp

,

fp

, etc. Text-based markings may also represent gradual changes to dynamics belong to this class; e.g.

dim.

or

cresc.

etc. Graphic dynamic sym-bols, or Wedges (“hairpins”), are modeled as subclasses of Connector.

PedalMark is a class for both text (

ped.

etc.) and graphic symbols. Pause represents fermata signs and pause signs. As described above, pedal lines are represented by the PedalLine class, which is a subclass of Connector. Tempo represents symbols that set or modify speed. These include metronome marks, text tempo expressions (e.g.,

Allegro

), and tempo modifiers, such as

accel.

,

rall.

, and so on.

TextFrame is divided into the subclasses Lyric and RehearsalMark. Lyric represents a fragment of a song lyric, typically a single word or syllable, includ-ing a trailinclud-ing hyphen. RehearsalMark represents both rehearsal numbers and rehearsal letters. TextFrame objects may be associated with each other by flows.

This follows the principle used in many text processing and page layout pro-grams, such as FrameMaker (Branagan & Serra: 1994: 156-157).

Mark could be extended with more subclasses. Also, some of Mark’s sub-classes could be divided into more specialized subsub-classes. For example, guitar-chord frames (Gerou & Lusk 1996: 103-106) or special percussion symbols are potential candidates for subclasses of Mark.

7.9 Beams

Beams can be divided into several subclasses. Also, a complex set of associa-tions is defined. The class diagram is presented in Figure 7-11. The superclass Beam is divided into the subclasses RegularBeam and TremoloBeam. Regular-Beam represents beams that substitute flags for indicating various note dura-tions. TremoloBeams represent beams that are used to form tremolandi with two or more consecutive notes or chords. RegularBeams are always connected to stems, whereas TremoloBeams may be used also with notes that do not have stems; e.g., whole notes (see Gerou & Lusk 1996: 334).

Beam is part of Staff. If a Beam spans across several Staves, for example in a piano score, only one of the Staff instances may contain the Beam as its part.

RegularBeam is divided into subclasses PrimaryBeam and SecondaryBeam (see, e.g., Gerou & Lusk 1996: 62-89). SecondaryBeam may also be a Fraction-alBeam (ibid.: 333-334). SecondaryBeams are “aligned” with a PrimaryBeam (marked in Figure 7-11 with an association). This way a PrimaryBeam knows which SecondaryBeams belong to the same beam group and can, for example, control their shape and placement. Both PrimaryBeams and SecondaryBeams

Mark

Tempo

PedalMark Pause

Text Frame Dynamic

Mark

Rehersal Mark Lyric

flow next previous

Figure 7-10: Marks

are associated with an arbitrary amount of Stems, while a FractionalBeam is associated with only one Stem.

TremoloBeams are divided into PrimaryTremoloBeams and Second-aryTremoloBeams. When TremoloBeams are used with notes that have stems, a PrimaryFractionalBeam is connected visually to the stems; respectively, Sec-ondaryTremoloBeams are placed in-between the stems but are kept separate from them. When used with whole-note symbols, both types of tremolo beams are kept separate from other symbols, and they also have the same length. The connection between a Stem and a PrimaryBeam is modeled as an association between the two classes. SecondaryTremoloBeams are not connected to Stems, and therefore not associated with a Stem. An association is, however, defined between both types of TremoloBeams and Note, for situations in which a Note has no Stem.

Figure 7-11: Class diagram of Beam and its subclasses