MusicXML 4.1 Draft
MusicXML 4.1 Draft > MusicXML Reference > Elements > The <kind> element

The <kind> element

Parent element: <harmony>

The <kind> element indicates the type of chord. The <degree> elements can then add, subtract, or alter from these starting points

The attributes are used to indicate the formatting of the symbol. Since the <kind> element is the constant in all the harmony-chord element groups that can make up a polychord, many formatting attributes are here. The alignment attributes are for the entire harmony-chord group of which this kind element is a part.

For the major-minor <kind>, only the minor symbol is used when use-symbols is yes. The major symbol is set using the symbol attribute in the <degree-value> element. The corresponding <degree-alter> value will usually be 0 in this case.

The text attribute may use strings such as “13sus” that refer to both the kind and one or more <degree> elements. In this case, the corresponding <degree> elements should have the print-object attribute set to no to keep redundant alterations from being displayed.

Content

kind-value

Attributes

Name Type Required?(Default) Description
bracket-degrees yes-no No The bracket-degrees attribute is yes if all the degrees should be in a bracket. The default is implementation-dependent.
The bracket-degrees attribute is yes if all the degrees should be in a bracket. The default is implementation-dependent.
color color No Indicates the color of an element.
Indicates the color of an element.
default-x tenths No Changes the computation of the default horizontal position. The origin is changed relative to the left-hand side of the note or the musical position within the bar. Positive x is right and negative x is left.

This attribute provides higher-resolution positioning data than the <offset> element. Applications reading a MusicXML file that can understand both features should generally rely on this attribute for its greater accuracy.

Changes the computation of the default horizontal position. The origin is changed relative to the left-hand side of the note or the musical position within the bar. Positive x is right and negative x is left.

This attribute provides higher-resolution positioning data than the <offset> element. Applications reading a MusicXML file that can understand both features should generally rely on this attribute for its greater accuracy.

default-y tenths No Changes the computation of the default vertical position. The origin is changed relative to the top line of the staff. Positive y is up and negative y is down.

This attribute provides higher-resolution positioning data than the placement attribute. Applications reading a MusicXML file that can understand both attributes should generally rely on this attribute for its greater accuracy.

Changes the computation of the default vertical position. The origin is changed relative to the top line of the staff. Positive y is up and negative y is down.

This attribute provides higher-resolution positioning data than the placement attribute. Applications reading a MusicXML file that can understand both attributes should generally rely on this attribute for its greater accuracy.

font-family font-family No A comma-separated list of font names.
A comma-separated list of font names.
font-size font-size No One of the CSS sizes or a numeric point size.
One of the CSS sizes or a numeric point size.
font-style font-style No Normal or italic style.
Normal or italic style.
font-weight font-weight No Normal or bold weight.
Normal or bold weight.
halign left-center-right No In cases where text extends over more than one line, horizontal alignment and justify values can be different. The most typical case is for credits, such as:

Words and music by Pat Songwriter

Typically this type of credit is aligned to the right, so that the position information refers to the right-most part of the text. But in this example, the text is center-justified, not right-justified.

The halign attribute is used in these situations. If it is not present, its value is the same as for the justify attribute. For elements where a justify attribute is not allowed, the default is implementation-dependent.

In cases where text extends over more than one line, horizontal alignment and justify values can be different. The most typical case is for credits, such as:

Words and music by Pat Songwriter

Typically this type of credit is aligned to the right, so that the position information refers to the right-most part of the text. But in this example, the text is center-justified, not right-justified.

The halign attribute is used in these situations. If it is not present, its value is the same as for the justify attribute. For elements where a justify attribute is not allowed, the default is implementation-dependent.

parentheses-degrees yes-no No The parentheses-degrees attribute is yes if all the degrees should be in parentheses. The default is implementation-dependent.
The parentheses-degrees attribute is yes if all the degrees should be in parentheses. The default is implementation-dependent.
relative-x tenths No Changes the horizontal position relative to the default position, either as computed by the individual program, or as overridden by the default-x attribute. Positive x is right and negative x is left. It should be interpreted in the context of the <offset> element or directive attribute if those are present.
Changes the horizontal position relative to the default position, either as computed by the individual program, or as overridden by the default-x attribute. Positive x is right and negative x is left. It should be interpreted in the context of the <offset> element or directive attribute if those are present.
relative-y tenths No Changes the vertical position relative to the default position, either as computed by the individual program, or as overridden by the default-y attribute. Positive y is up and negative y is down. It should be interpreted in the context of the placement attribute if that is present.
Changes the vertical position relative to the default position, either as computed by the individual program, or as overridden by the default-y attribute. Positive y is up and negative y is down. It should be interpreted in the context of the placement attribute if that is present.
stack-degrees yes-no No If yes, the <degree> elements should be stacked above each other. The default is implementation-dependent.
If yes, the <degree> elements should be stacked above each other. The default is implementation-dependent.
text xs:token No Describes how the <kind> should be spelled in a score. If the use-symbols attribute is yes, this value follows the symbol. The default is implementation-dependent.
Describes how the <kind> should be spelled in a score. If the use-symbols attribute is yes, this value follows the symbol. The default is implementation-dependent.
use-symbols yes-no No The use-symbols attribute is yes if the <kind> should be represented when possible with harmony symbols rather than letters and numbers. These symbols include:

  • major: a triangle, like Unicode 25B3
  • minor: -, like Unicode 002D
  • augmented: +, like Unicode 002B
  • diminished: °, like Unicode 00B0
  • half-diminished: ø, like Unicode 00F8

The default is implementation-dependent.

The use-symbols attribute is yes if the <kind> should be represented when possible with harmony symbols rather than letters and numbers. These symbols include:

  • major: a triangle, like Unicode 25B3
  • minor: -, like Unicode 002D
  • augmented: +, like Unicode 002B
  • diminished: °, like Unicode 00B0
  • half-diminished: ø, like Unicode 00F8

The default is implementation-dependent.

valign valign No Indicates vertical alignment to the top, middle, bottom, or baseline of the text. The default is implementation-dependent.
Indicates vertical alignment to the top, middle, bottom, or baseline of the text. The default is implementation-dependent.

Examples

This element is used in the following examples:

<bass-alter><bass-separator><bass-step><degree-type><degree-value><fingering> (Frame)<fret> (Frame)<inversion><kind><numeral-alter><numeral-key><numeral-root><root-alter><root-step>Tutorial: Chord Symbols