Rondo DB is a classical metadata base.
We are a group of musicologists curating classical music data to provide ay service a remarkable experience of classical music.

We understand that everyone is not expert in Classical Music.
We are.


Each entity contains a great amount of separated fields as well as free text.

Composers/Performers fields include names, alternative spellings (translations, translitterations), composed works, common wrong spellings, birth country, naturalization country, birth and death dates with location, roles (instruments, professions), biographies, wikipedia link as well as other external links, relationship one to the other (same family, teachers/pupils...). Examples: George Petrou (performer), Sergei Rachmaninov (composer)

Ensembles fields include names, alternative spellings (translations, translitterations), common wrong spellings, wikipedia link, creation and dissolution dates, related city, performers, external links. Example: Düsseldorfer Symphoniker

Piece fields include name in english, original name, subname, numbering (catalog number), wikipedia link, composer, tonality, mode, type, tempo indication, libretto detail, dedication, approximate duration, spoken language, relation to other pieces (arrangements), composition dates and place, publication dates and place, premiere date and place, instrumentation, movements (numbering, including opera numbering, type, tonality, mode), description, external links. Examples: Spring Symphony (Britten), Rigoletto (Verdi) (opera)

Venues fields include name, wikipedia link, venue type, capacity, detailed location, architect name, start/end dates of activity, official web page, description, external links. Example: Philharmonie de Paris



A classical music metadata data set containing a list of 100 works, with five interpretations for each via Youtube links.

MD5 checksum: 49540f7855bed26cdaa28ef038d16321.
Date of creation: January 15th, 2020.
License: CC BY-NC 4.0.

More details about this dataset

This data set has the following characteristics:
• the list of works has been manually created and annotated (inc. birth dates, death dates, video links, start time, tonalities... basically all fields except the IDs);
• the selection is a diverse catalogue of famous and less famous classical music works;
• the five interpretations per work are all from different recordings;
• each recording contains a live (recorded live) and a start_at manual annotations (skipping applauses, instrument tuning or other artefacts);
• each work contains descriptive metadata such as opus numbers, detailed titles, composer names and dates, tonality and a link to Wikipedia.

Each work, or clique, is mostly recorded with the same instrumentation despite rare examples such as Jean-Philippe Rameau: Suite en sol in G major "Nouvelle suite" - 6. Les sauvages played either by a harpsichord or a piano; and the same tonality or very close ones such as in Ludwig Van Beethoven: Symphony No.5 in C minor, Op. 67 in a range of about 1 tone away from C due to historical and artistic considerations.

Here is an example of a work in this dataset.

    "rdb_id_piece": 82,
    "name": "Symphony",
    "number": "5",
    "piece_full_name": "Symphony No.5 in C minor, Op. 67",
    "piece_full_name_with_composer": "Ludwig Van Beethoven: Symphony No.5 in C minor, Op. 67",
    "catalogue_number": "Op. 67",
    "tonality": "C Minor",
    "composition_year": 1808,
    "wikipedia_url": "",
    "composer": {
      "birth_date": "1770-12-17",
      "death_date": "1827-03-26",
      "name": "Ludwig Van Beethoven",
      "rdb_id_people": 13
    "recordings": [
        "is_live": false,
        "start_at": 0,
        "url": ""
        "is_live": true,
        "start_at": 57.455,
        "url": ""
        "is_live": false,
        "start_at": 0,
        "url": ""
        "is_live": false,
        "start_at": 0,
        "url": ""
        "is_live": true,
        "start_at": 27.609,
        "url": ""

This dataset contains 100 of such works. Here are a detailed field description:
rdb_id_piece (100/100): This is the unique piece ID of this work in Rondo DB. If you prefix it with you will reach its official page on Rondo DB.
name (100/100): The raw name of the piece. As most of classical pieces don't have titles, this is in general the form of the piece, like here: "Symphony".
number (37/100): Applicable to pieces with numbering. Only 32 of them in this dataset. Otherwise the field is absent.
piece_full_name (100/100): Generally accepted name for the given piece. Contains catalog information, subname and tonality.
piece_full_name_with_composer (100/100): Same as piece_full_name but prefixed with composer first name and last name and a semi column.
catalog_number (79/100): This is the full information of how this piece is generally catalogued. Despite the name of the field, this is not a number but a textual information, such as "Op. 37"
tonality (57/100): A full tonality (key and mode) of the given piece. Flats and sharps are writen like "E-flat" or "C-sharp".
composition_year (91/100): The year on four digit of the composition of this piece.
wikipedia_url (82/100): The full URL of the English Wikipedia page describing this work.
rdb_id_movement (26/100): The ID of a movement on Rondo DB. By prefixing this ID with URL you will go to the unique movement page on Rondo DB. A "movement" can also be a "part" in a piece edited with several parts, like a book of preludes, études, or arias in an opera.
movement_full_name (26/100): The name of a movement, which can contain the number of the movement, like in "5. Andaluza". The movement name is part of the piece_full_name and piece_full_name_with_composer as described above.

composer (100/100) is a nested object and contains the following fields:
rdb_id_people (100/100): The Rondo DB ID of this composer. By prefixing this ID with URL you will go to the unique composer page on Rondo DB.
birth_date (100/100): The date of birth in format YYYY-MM-DD.
death_date (100/100): The date of death in format YYYY-MM-DD.
name (100/100): The full name of the composer like "Heitor Villa-Lobos".

recordings (100/100) contains a like of five recording objects. Each recording contains the following fields:
is_live (500/500) indicates if the recording has been performed live or not. When recorded live, it indicates that it can contain applauses before/after the recording, tuning orchestra, noises during the performances...
start_at (500/500) the time where the piece is actually starting at, in seconds. Will roughly starts in less than a second after this point. The instruction given to the annotator was: "place the cursor just before the piece actually starts".
url (500/500) the full URL of the Youtube video. At the time of the creation of the dataset, all recording were publicly available.


Rondo DB models Composers, Artists (i.e. performers), Ensembles, Pieces, Venues and a lot more entities. Our team gives a special attention to the classical music specifics such as:

  • A composer can also be a performer, and the roles are well defined
  • A performer can perform one or several instruments (or conducting). One instrument is main.
  • Several performers (and/or one conductor) can be related to an Ensemble
  • Pieces contains zero to many movements.
  • Operas have a multi-level numbering system

Some listing are also done, such as Great classics from the main composers.


Rondo DB takes the necessary time to describe taxonomies carefully. We host our own taxonomies, including:

  • More than 200 Piece types (Symphony, Sonata, Cantata, Chaconne, ...), arranged on a multiple levels hierarchy.
  • More than 280 Instruments, categorized (Brass, Strings, ...) on several levels, with profession names (a Pianist plays Piano, a Guitar Player plays Guitar) and RISM matching.
  • Ensemble types (Orchestra, Chamber Orchestra, Camerata, Choir, ...) with a global URI (reference) and description, with multiple levels hierarchy.