RomanNumeral
public struct RomanNumeral
The RomanNumeral type abstracts data and operations related to working with roman-numeral expressions of harmony. Two basic systems of roman-numerals are provided: ‘Traditional’ and ‘Berklee’, the former employing figured-bass notation and both upper and lower case characters, and the latter resembling chord symbols and using all upper case characters.
-
The Traditional roman numeral type uses figured-bass notation and both upper and lower case characters. Examples:
- iv6: first-inversion minor triad built on the fourth scale-degree
- IM43: second-inversion major-seventh chord built on the tonic.
- Ger6: German augmented-sixth chord.
- VI6: first-inversion major triad built on the flatted-sixth scale-degree.
Note that the convention of using the upper case ‘M’ character to imply a major-seventh chord is applied here. I7, for example, implies a dominant-seventh chord built on the tonic. Initialized with a string, e.g. RomanNumeral.Traditional(
See moreiv6
).Declaration
Swift
public struct Traditional
-
The Berklee roman numeral type uses chord-symbol style notation and only upper case characters, as is used in the system of harmony taught to undergraduates in the Berkee College of Music’s core jazz-based harmony courses. Examples:
- IVm6: minor-sixth chord built on the fourth scale-degree.
- bVImaj7#11: major-seventh chord with an added sharp-eleventh built on the flatted-sixth scale-degree.
- V7b9#9b5#5: dominant-seventh chord with a flatted-ninth, sharp-ninth, flatted-fifth, and sharp-fifth (no perfect-fifth) built on the fifth scale-degree.
- subV7/IV: dominant-seventh chord built on the flatted-fifth scale-degree.
Initialized with a string, e.g. RomanNumeral.Traditional(
See morebIIImaj7b5
).Declaration
Swift
public struct Berklee