What's a music tagging scheme?
April 20, 2016 in digital music by Dan Gravell
A music tagging scheme is the overall set of structural, syntactic and semantic rules that govern how music file tags are written; the content of each field and even whether particular fields are used at all.
A simple example may be case rules applied to all album names in a music library. A tagging scheme may define that all album names comply with "Sentence case" rules for capitalisation. In addition, the tagging scheme may comprise rules governing other fields, in different ways. Put together, the amount a tagging scheme is enforced goes a long way to ensuring the internal consistency of a music library.
How are structural, syntactic and semantic rules divided?
Structural rules
Structural rules define which tag fields are recorded, and how they are organised in containment relationships. There are two main examples of this: (1) whether particular identification tags are completed and (2) the file path organisation of music files in a library.
For identification tags, storing multiple identification fields for the different entities in a music collection can be a useful way of linking external, curated data about your music library. For example, by storing the MusicBrainz Identifier (MBID) for a given release, the album in your collection could be linked to information stored on MusicBrainz or any other site that identifies its content using MBIDs.
File paths govern how music files are named, and the folder structure they fit within. I've written extensively about this before.
Syntactic rules
Syntactic rules define how data is stored within a single field. There are lots of different examples of how field syntax can change, because each field implies a data type.
For example, a date field denoting the date of release for a given album may be a simple year, e.g. 1971
. If your tagging scheme, however, requires a date format of DD-MM-YYYY then such an entry would be non-compliant, and you would want seek to complete the missing data.
Other examples may include:
- Capitalisation of text
- Part of set style numeric fields (e.g. for track numbers:
2/12
) - Whether ID3-style genre IDs or human readable genre names are used
Semantic rules
Now we get to the airy-fairy stuff. Semantic rules govern the meaning of the contents of tag fields. This can be inherently subjective and can vary most from collection to collection.
How can the meaning of a tag field be mis-interpreted? Well, it happens all the time. A simple example is the use of a date field for a given release. Some interpret the field to mean the original date of release of a given album. Others interpret it to mean the actual release date for a given release, which might mean a re-release date, the date of a re-master, and so on.
There are lots more examples:
- Specificity of genre fields - "New York Post Punk Revival" or simply "Rock"?
- Treatment of artist aliases
What it all adds up to
The first lesson to be learned from this is that there's an enormous amount of leeway to allow for quite significant variations in how any one individual album, say, will be presented from music library to music library.
The choice of how such a library should be organised, and therefore which rules are applied, tends to be dictated by the music players used. Different music players make different demands on metadata, and the quirks of any given music player sometimes need to be worked around by adopting a different tagging scheme.
So enough theory, how to actually implement such a scheme?
The challenge is documenting the scheme; standard music tag editors tend to be a Swiss Army Knife allowing you to edit your music library, but not keeping overall higher level control of how your music library is organised. They ignore intra-library consistency, if you will. If you use a standard music tagger and you are serious about a tagging scheme to ensure consistency, you probably need a separate set of documentation to ensure the tagger is used correctly. Remember there may be months between using a tag editor!
The other way is to use a tool like bliss to store your tagging scheme, encoded within its rules. This way, the software remembers your tagging scheme, and if albums are added or changed that step outside the scheme, you can be alerted to fix it (or fix the scheme, if needs be).
Thanks to MattTrollen Photography for the image above.