Expand description
Deriving the typed links between entities.
Relations are inferred, never read from a file: they follow from the
credits and from the track lists. That is what RELATION_RULES versions,
and what lets a stored catalog rebuild them on load without touching the
disk — the reason the raw tags are kept per file in the first place.
Structural links are derived alongside the two original inferred families: placements, recordings, works, editions, release groups, labels and album artists can all be traversed in either direction. Artist participation is derived from credits without copying credit details into the relation row. Collaborations and duplicate/other-edition links remain weighted summaries.
Constants§
- ALBUM_
BY - A release is primarily credited to an album artist.
- APPEARS_
ON - A guest performer appears on another artist’s release.
- COMPILATION_
APPEARANCE - A performer appears on a compilation.
- CONTRIBUTED_
TO - A non-performing credit contributes to a release.
- DISCOGRAPHY
- Reverse of
ALBUM_BY. - DUPLICATE
- Names of the two relations that tie one album to another copy of itself.
- EDITION_
OF - A release is one edition of a release group.
- HAS_
EDITION - Reverse of
EDITION_OF. - HAS_
RECORDING - Reverse of
PERFORMANCE_OF. - HAS_
TRACK - Reverse of
PART_OF_RELEASE. - OTHER_
EDITION - Same album, encoded differently: a deliberate second copy.
- PART_
OF_ RELEASE - A local track belongs to one edition.
- PERFORMANCE_
OF - A recording realizes a musical work.
- PLACED_
AS - Reverse of
PLACEMENT_OF. - PLACEMENT_
OF - A local track placement points to the abstract recording it carries.
- RELATION_
RULES - Version of the rules that derive the
relationtable. - RELEASED
- Reverse of
RELEASED_BY. - RELEASED_
BY - A release was issued by a label.
Functions§
- rebuild_
relations - Recomputes every inferred relation from the entities already in place.