**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, whereasv
denotes a descending melodic approach. When encoding refined melodic contour, approaches by leaps up/down may be encoded as^^
andvv
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 as2++
. A lowered submediant is represented as6-
, or6--
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 of7
. For example, in the key of C minor,7
indicates B-natural, while7-
or7n
represents B-flat.Scale degrees may also be expressed in modal keys, such as
*d:dor
, where6
represents the pitchB
, while in D minor (*d:
), a6
represents the pitchB♭
.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 asv6-
.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 v descending melodic approach (by step) vv descending melodic approach by leap _ melodic approach by perfect unison (repeated note) 1–7 scale degrees 7n The 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 r rest 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:
The following Humdrum command produces **deg data as output:
vox determine active and inactive voices in a Humdrum file
deg translates **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