Humdrum Representation for Relative Scale Degree


**deg -- relative scale degree representation


The **deg representation can be used to represent key-dependent scale-degree information for music in major or minor keys. The **deg representation differs from the related **degree representation in that it does not encode octave information.

Three types of data tokens are distinguished by **deg: scale degree tokens, rest tokens, and barlines.

Scale degree tokens are encoded as a combination of melodic approach, degree value, and degree alteration.

For an optional melodic approach indication, ^ (caret) denotes an ascending melodic approach to the current note, whereas v denotes a descending melodic approach. When encoding refined melodic contour, approaches by leaps up/down may be encoded as ^^ and vv respectively. The tandem interpretation *refined can be used to indicate that leaps are encoded, while *gross can be used to indicate that approaches by leaps or steps are not distinguished. The interpretation *noapproach can be use to explicitly indicate that no melodic approach information is encoded in the degree data. Repeated pitches may optionally be prefixed with _ to distinguish between repeated notes and the first note of the data that has no preceeding note. [An optional indication of a rest that intervenes the melodic approach should be represented somehow as well].

The scale degree values are indicated by the numbers 1 (tonic) to 7 (leading-tone). These values may be chromatically altered by raising (+) or lowering (-). The amount of chromatic alteration is indicated by repeating the alteration signifier by the number of semitones in the alteration; for example, a raised super-tonic is represented as 2+ whereas a doubly-raised super-tonic is represented as 2++. A lowered submediant is represented as 6-, or 6-- when lowered by a whole-tone.

Scale degree tokens are always represented with respect to a prevailing major or minor key. [pentatonic and similar non-heptatonic keys/modes present difficulties in the current system] In the case of minor keys, scale degrees are characterized with respect to the harmonic minor scale only. To encode in the natural minor, use 7n instead of 7. For example, in the key of C minor, 7 indicates B-natural, while 7- or 7n represents B-flat.

Scale degrees may also be expressed in modal keys, such as *d:dor, where 6 represents the pitch B, while in D minor (*d:), a 6 represents the pitch B♭.

By way of more examples, the pitch F in the key of A minor is represented as the submediant (6) while F# is represented as the raised submediant (6+). In the same key, G is represented as the lowered seventh (7-) while G#4 is the normal leading-tone (7). In the key of A major, F is represented as the lowered submediant (6-). If this pitch was approached from below, it would be encoded as ^6- -- whereas if it was approached from above, it would be encoded as v6-.

Rests are represented by the single letter `r'.

Barlines are represented using the "common system" for barlines -- see barlines.


It is recommended that files containing predominantly **deg data should be given names with the distinguishing `.deg' extension.


The following table summarizes the **deg mappings of signifiers and signifieds.
^ascending melodic approach (by step)
^^ascending melodic approach by leap
vdescending melodic approach (by step)
vvdescending melodic approach by leap
_melodic approach by perfect unison (repeated note)
1–7scale degrees
7nThe 7th scale degree is for the natural minor (a minor seventh above the tonic); otherwise "7" refers to the harmonic minor (major seventh above the tonic)
-scale degree lowered by one semitone
--scale degree lowered by two semitones
+scale degree raised by one semitone
++scale degree raised by two semitones
|Add a visual line extension to the next scale degree

Summary of **deg Signifiers


The sample document given below shows the opening subject of the Fugue in C minor in the second volume of Bach's Well Tempered Clavier. The left spine shows a **kern encoding while the right spine shows a corresponding **deg encoding.


The following Humdrum command accepts **deg encoded data as inputs:
voxdetermine active and inactive voices in a Humdrum file
The following Humdrum command produces **deg data as output:
degtranslates **kern, **pitch, **Tonh, **solfg, to **deg


The following tandem interpretations can be used in conjunction with **deg:
key signatures*k[f#c#]
key *c#: (C-sharp harmonic minor), *D: (D major), *F:lyd (F lydian), *g:dor (G dorian)
melodic approach *gross (^ = going up, v = going down), *refined (^ = going up by step, ^^ = going up by leap), *noapproach (no melodic approach data is encoded).
display degrees with hats in notation *hat
display degrees in circles in notation *circle
do not display melodic approaches in notation *Xdir

Tandem interpretations for **deg