Struct musicbrainz_rs::entity::release::Release
source · pub struct Release {Show 20 fields
pub id: String,
pub title: String,
pub status_id: Option<String>,
pub status: Option<ReleaseStatus>,
pub date: Option<NaiveDate>,
pub country: Option<String>,
pub quality: Option<ReleaseQuality>,
pub barcode: Option<String>,
pub disambiguation: Option<String>,
pub packaging_id: Option<String>,
pub packaging: Option<ReleasePackaging>,
pub relations: Option<Vec<Relation>>,
pub release_group: Option<ReleaseGroup>,
pub artist_credit: Option<Vec<ArtistCredit>>,
pub media: Option<Vec<Media>>,
pub label_info: Option<Vec<LabelInfo>>,
pub tags: Option<Vec<Tag>>,
pub aliases: Option<Vec<Alias>>,
pub genres: Option<Vec<Genre>>,
pub annotation: Option<String>,
}
Expand description
A MusicBrainz release represents the unique release (i.e. issuing) of a product on a specific date with specific release information such as the country, label, barcode and packaging. If you walk into a store and purchase an album or single, they are each represented in MusicBrainz as one release.
Each release belongs to a release group and contains at least one medium (commonly referred to as a disc when talking about a CD release). Each medium has a tracklist. A medium is the actual physical medium that stores the audio content. This means that each CD in a multi-disc release will be entered as separate mediums within the release, and that both sides of a vinyl record or cassette will exist on one medium. Mediums have a format (e.g. CD, DVD, vinyl, and cassette) and can optionally also have a title. Sometimes a medium can be a side of a disc. For example, the two sides of a hybrid SACD (the CD side and the SACD side) should be entered as two mediums. Tracklists represent the set and ordering of tracks as listed on a liner, and the same tracklist can appear on more than one release. For example, a boxset compilation that contains previously released CDs would share the same tracklists as the separate releases.
Fields§
§id: String
§title: String
The title of the release.
status_id: Option<String>
§status: Option<ReleaseStatus>
The status describes how “official” a release is.
date: Option<NaiveDate>
The date the release was issued.
country: Option<String>
The country the release was issued in.
quality: Option<ReleaseQuality>
Data quality indicates how good the data for a release is. It is not a mark of how good or bad the music itself is - for that, use ratings.
barcode: Option<String>
The barcode, if the release has one. The most common types found on releases are 12-digit UPCs and 13-digit EANs.
disambiguation: Option<String>
The disambiguation comments are fields in the database used to help distinguish identically named artists, labels and other entities.
packaging_id: Option<String>
§packaging: Option<ReleasePackaging>
The physical packaging that accompanies the release. See the list of packaging for more information.
relations: Option<Vec<Relation>>
§release_group: Option<ReleaseGroup>
The release group associated with this release.
artist_credit: Option<Vec<ArtistCredit>>
Artist credits indicate who is the main credited artist (or artists) for releases, release groups, tracks and recordings, and how they are credited.
media: Option<Vec<Media>>
§label_info: Option<Vec<LabelInfo>>
The label which issued the release. There may be more than one.
aliases: Option<Vec<Alias>>
Aliases are alternate names for a release.
genres: Option<Vec<Genre>>
Genres are currently supported in MusicBrainz as part of the tag system.
annotation: Option<String>
Annotations are text fields, functioning like a miniature wiki, that can be added to any existing artists, labels, recordings, releases, release groups and works.