![[notation image]](images/table_reference/notation.png)
notation
Each subelement of a
notations element is stored as a record in the notation table.
The parent notations element data is in table notations.
This many-to-one relationship uses foreign key notations_id in the notation table.
notation is a single-inheritance table with discriminator field notation_type.
The notation_type discriminator values are:
- tied
- slur
- tuplet
- glissando
- slide
- ornaments
- technicals
- articulations
- dynamics
- fermata
- arpeggiate
- non arpeggiate
- accidental mark
- other notation
Since many different object types are stored in the
notation table,
each notation type individually only uses some fields for their records.
Notable data definitions are below:
- The
numberattribute value is in fieldnotation_number dashedFormattinggroup attributes, if present, are stored in a joineddashed_formattingtablebeziergroup attributes, if present, are stored in a joinedbeziertable-
A
tupletnotation has twotuplet_portionrecords, one for thetuplet-actualelement, and the other for thetuplet-normalelement. These join onmusic_dataforeign keystuplet_actual_idandtuplet_normal_id, respectively -
A
slideelement withbend-soundattributes have those values stored in thebend_soundtable, foreign keybend_sound_id -
When an
accidental markrecord haslevel-displaygroup attributes defined, those values are stored in tablelevel_displayand joined on fieldlevel_display_id -
An
ornamentsdiscriminator value record is a list of ornaments whose individual ornament records are in theornamenttable, foreign keyornaments_id. An ornaments list record can also have a list of accidental marks, whose individual records themselves are a notation type. These records are in thenotationtable with a discriminator value ofaccidental mark. The foreign key self-join to the parent ornaments list record in thenotationtable isornaments_id. -
A
technicalsdiscriminator value represents a list of technicals whose individual technical records are in thetechnicaltable, foreign keytechnicals_id -
An
articulationsdiscriminator value represents a list of articulations whose individual articulation records are in thearticulationtable, foreign keyarticulations_id -
dynamicsis implemented as a direction type, so when adynamicselement is a subelement of anotationselement, the data is stored in thedirection_typetable and joined fromnotationsusing foreign keydynamics_id -
A list of
fermatacan belong to a barline, which is amusic_datarecord. The foreign key innotationto themusic_datarecord isbarline_id.