History:Object Model/Song Object

From MusicBrainz Wiki
Jump to navigationJump to search

The Song Object

This page describes the song object and its role in the ObjectModel.

Attention.png It is unlikely that this object type will be implemented in the NextGenerationSchema, and it is a very rare case, that a song idea results in more than one ../CompositionObject. This also means, that all song attributes and relationships will be attached to the ../CompositionObject instead.


A song is the most abstract thing in the ../TrackGroup. It is an idea and comes even before the ../CompositionObject. An artist develops the idea for a song. This idea does not necesarily have a name, you cannot touch it, we could even argue that it is not factual data - therefore it is part of the ConceptAspect.

But once there are several ../CompositionObjects based on the same idea, the /SongObject is the element that groups them.


There is no boundary to the top (of the ../TrackGroup hierarchy). A couple of thousand years ago Plato has delimited that boundary, so we are on really stable grounds here.

The bottom boundary is pretty easy to define: Once the song gets fixed on something it is not an idea anymore. It could be fixed on paper (scores) or on an audio tape. If we follow the hierarchy of the ../TrackGroup, the next object is the ../CompositionObject.


The song has only one relationship to the ../CompositionObject.

A song is not related to the ../ArtistObject!

Relationships to the CompositionObject

  • Sometimes songs are recomposed (for acoustic performance for example) in a different way or lyrics are changed, but the basic idea stays the same. If an idea is not made explicit by composing, it is of no interest to MusicBrainz. Therefore a song must have at least one composition.