Todo list

This is the list of things to do for the development of the Music Ontology.

Please add items if needed.

Music Ontology

 * mo:Mood as hook for a mood ontology/taxonomy => see ao:mood as super property (also ao:genre as super property of mo:genre => done)
 * associating mo:Record, mo:Track (mo:MusicalManifestation) to its carrier medium (mo:Medium (mo:MusicalItem)) => possible solutions:
 * The Media Format Ontology for describing media types as sub classes of mo:Medium (that means on the "item level")
 * Media Types as SKOS scheme for describing media types as sub classes of dcterms:MediaTypes (or sub classes of dcterms:MediaTypes) on the "manifestation level" by using the property mo:media_type
 * broaden the domain of mo:tempo to sim:Association and/or mo:genre to describe associations and/or genres (cf. ex:tempo in the UMIRL example)
 * add an inverse property for mo:membership (or change its domain and range); see also the original mo:Membership proposal
 * align mo:membership (or its inverse property) and mo:group to event:agent (sub property relation)
 * mo:producer should be shifted to the expression level, since a producer is more included into the production process, e.g., recordings, of a musical work, or?

Activity

 * Create a mo:activity property and a mo:Activity class (subclass of event:Event) to model activity timeframes, e.g.

ex:The_Specials mo:activity [ a mo:Activity ; ev:time [ tl:start "1977" ; tl:end "1984" ; ] ]

Membership

 * Create a mo:artist property to link a mo:Membership to its artist(s) - in addition to the current mo:group property, e.g.

ex:the_beatles mo:membership [ a mo:Membership ; mo:artist ex:georges_harrison. ]

Done

 * Add mo:origin for an artist
 * Add activity_start and end for an artist
 * Move mo:label to mo:Release instead of mo:ReleaseEvent (? - see related discussion)
 * Add mo:Signal (and mo:Track?) to the domain of mo:bpm, mo:key, mo:tempo (?)
 * Just a very minor thing: DAT label is wrong. It is Digital Audio Tape (and not Data Audio Tape).
 * mo:lyrics => should be something to associate a mo:MusicalWork with mo:Lyrics, or?
 * mo:headliner as subPropertyOf mo:performer (see also MO Proposal 2.1 )
 * change domain mo:instrument / mo:label to include mo:MusicArtist
 * add mo:duration_ms - domain mo:Signal, mo:Track; range xsd:int, xsd:float
 * add mo:Label to domain of mo:musicbrainz_guid as labels have MBIDs
 * bring back mo:duration - domain mo:Signal, mo:Track; range xsd:duration or empty?
 * Change mo:genre domain to include mo:Track, mo:Record, mo:Release, mo:MusicalItem (?); remove probably isSubPropertyOf event:factor relation
 * Add 78 medium (requested by Chris Cannam)
 * Look at added properties in moplus
 * mo:similar_to domain/range expansion - add mo:MusicArtist/Group/SoloArtist at least and mo:MusicalManifestation as per the group mailing list thread
 * mo:encoded_as (or something inverse of mo:encodes)
 * Links to RDF specification from HTML specification
 * mo:iswc on mo:MusicalWork
 * mo:Transcription (new event)
 * Sort out ShepardLevel1Issues mentioned on #musicontology (more comments: ZaziLevel1Comments and mailing list thread)
 * Implement changes suggested by Antoine Zimmermann here
 * Implement group membership model proposed by Simon Reinhardt here
 * Implement identification properties proposed by Simon Reinhardt here
 * Number of discs
 * Modeling of lyrics that are core part of musical works
 * mo:text (used in Jamendo)
 * release events
 * mo:meter
 * Clean up double typing
 * Sort out level 1, publish diagrams, reduce useless parts of the main spec website
 * mo:genre applied to foaf:Agent
 * Inverse labels instead of inverse properties
 * More functional properties (in the workflow, there are a lot...)
 * Podcast as musical manifestation
 * Linking artist to usual instrument
 * mo/foaf:InfoService + mo/foaf:info_service (FOAF wiki) => Info Service Ontology
 * MO Listening Ontology:
 * ListenEvent (to replace the ScrobbleEvent in the last-fm ontology) => currently ListenEvent is removed from MO => co:ScrobbleEvent as general purpose scrobbling event for counting an activity (see concrete example)
 * implement mo:Playlist as drawn in several papers (should also include things like song sequences etc. or the model of a smart playlist) => pbo:Playlist as general media playlist (bibo:Document, frbr:Endeavour based), example
 * mo:play_count, mo:skip_count to keep track of the listening behaviour of tracks => pbo:PlayBackCounter and pbo:SkipCounter, example

Others

 * Link the event ontology to ABC
 * Update audio feature ontology (holding some speech-related things)
 * It should cover Vamp features, at least
 * af:time_signature (perhaps in MO?)