Copyright © 2010 Bob Ferris and Toby Inkster |
|
This work is licensed under a Creative Commons Attribution License. This copyright applies to the Association Ontology Specification and accompanying documentation in RDF. Regarding underlying technology, the Association Ontology uses W3C's RDF technology, an open Web standard that can be freely used by anyone.
The Association Ontology specification provides basic concepts and properties for describing specific association statements to something, e.g. an occasion, a genre or a mood, and enables furthermore, a mechanism to like/rate and feedback these associations in context to something on/ for the Semantic Web. This document contains a RDFa description of the Association Ontology and some additional information and examples.
The Association Ontology hooks up parts of the Similarity Ontology, the Review Ontology and DCMI Metadata Terms. The template of this specification is derived from the FOAF Vocabulary Specification, which was created by Dan Brickley and Libby Miller, and the Music Ontology Specification, which was created by Yves Raimond. It was modified and extended by Bob Ferris. Furthermore, a modified and extended version of Danbri's SpecGen version was used to generate most of the RDFa statements of the Association Ontology for this specification (see here for SpecGen version 6 by Bob Ferris).
This document is created by combining the RDFS/OWL machine-readable Association Ontology with a human-readable HTML representation that includes RDFa annotations. Future versions may incorporate multilingual translations of term definitions. The RDF/XML version of the specification is also available directly from the namespace URI. RDF/N3 representations could be access via the links above.
The authors welcome comments on this document, preferably via the author's email addresses.
The sim:Association concept, as graph with relations, as it is extended by this ontology (incl. the relation to rev:Review):
An a-z index of Association Ontology terms, by class (categories or types) and by property.
Classes: | LikeableAssociation |
Properties: | activity | application | context | device | genre | included_association | likeminded | location | mood | occasion | time | used_application | used_device |
The music playlist example as graph (see also here, for another graph view, and here, for an extended graph view, of this example):
RDF/Turtle representation of a playlist example that uses associations created with the Association Ontology (see also RDF and N3 for downloadable representations of this example):
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix olo: <http://purl.org/ontology/olo/core#> . @prefix pbo: <http://purl.org/ontology/pbo/core#> . @prefix ao: <http://purl.org/ontology/ao/core#> . @prefix mo: <http://purl.org/ontology/mo/> . @prefix ex: <http://example.org/> . @prefix sim: <http://purl.org/ontology/similarity/> . ex:FunkyPlaylist a pbo:Playlist ; dc:title "Funky Playlist"^^xsd:string ; dc:description "A playlist full of funky legends"^^xsd:string ; dc:creator <http://foaf.me/zazi#me> ; olo:length 2 ; sim:association ex:ZazisAssociation ; sim:association ex:BobsAssociationInUse ; pbo:playlist_slot [ a pbo:PlaylistSlot ; olo:index 1 ; pbo:playlist_item ex:SexMachine ] ; pbo:playlist_slot [ a pbo:PlaylistSlot ; olo:index 2 ; pbo:playlist_item ex:GoodFoot ] . ex:SexMachine a mo:Track ; dc:title "Sex Machine"^^xsd:string ; dc:creator <http://dbpedia.org/resource/James_Brown> . ex:GoodFoot a mo:Track ; dc:title "Good Foot"^^xsd:string . ex:ZazisAssociation a sim:Association ; dc:creator <http://foaf.me/zazi#me> ; ao:genre "Funk"^^xsd:string ; ao:mood "party"^^xsd:string ; ao:occasion "my birthday party 2008"^^xsd:string . ex:BobsAssociation a sim:Association ; dc:creator <http://foaf.me/zazi#me> ; ao:genre ex:Funk ; ao:mood "happy"^^xsd:string ; ao:occasion "good feeling music"^^xsd:string . ex:BobsAssociationInUse a ao:LikeableAssociation ; ao:included_association ex:BobsAssociation ; ao:likeminded <http://moustaki.org/foaf.rdf#moustaki> . ex:Funk a mo:Genre .
This examples shows a music playlist described with the help of the Play Back Ontology and Ordered List
Ontology. Each music track is a mo:Track instance. The playlist has two association statements related by
sim:association. The first one (ex:ZazisAssocation) is modeled as an association to a
specific occasion, which is related by ao:occasion. Furthermore, this association statement includes
(music) genre (ao:genre) and mood (
ao:mood) categorisations as simple string typed literals.
The second association statement (ex:BobsAssociationInUse) is an ao:LikeableAssociation instance that includes (ao:included_association) a reuseable association statement (ex:BobsAssociation). As
the domain specific (but abstract) association relations - ao:genre, ao:mood, ao:occasion -
have no range, sub properties with specific ranges could be created from them (e.g. mo:genre for music
genres/styles (this isn't currently the case)). To illustrate this use case, the example includes a specific
mo:Genre instance (ex:Funk) to ex:BobsAssociation. Finally, because ex:BobsAssociationInUse is a likeable association statement in the context of the
described music playlist (ex:FunkyPlaylist), other people could expressed that they like this association - as it is done in the example by using the relation ao:likeminded - or they are able to feedback (e.g. rev:Feedback) or rate (rev:rating) it.
The Association Ontology combines features of the Similarity Ontology, the Review Ontology and DCMI Metadata Terms. The intend behind this ontology is to provide a mechanism to append (personal) association statements (sim:Association) to something by using the relation sim:association. This step of indirection is neccessary to enable:
Therefore, the sub class ao:LikeableAssociation was created, which combines the concepts of
sim:Association and rev:Review. Simple voting (the "like button")
can be realized by using the property ao:likeminded, which creates a relation between an association statement
and an individuum (foaf:Agent). Ratings and reviews can be realized by using the features of the Review Ontology, e.g. rev:rating or
rev:Feedback.
To address associations of a specific domain, e.g. genre, mood or occasion, new sub properties based on dcterms:subject were created. These are:
They are intendend to be an abstact and general hook into their specific domains (genre, mood, occasion). Furthermore, new, more specific sub properties based on these properties should
be created to provide a hook in more specific domains, e.g. mo:genre for music genres/styles (this sub property relation isn't
currently the case).
To enable voting, rating and reviewing of a reusable association statements in a specific context, the property ao:included_association was created. By using this relation one can include a reusable association
statement into another association statement (preferable based on ao:LikeableAssociation).
Please have also a look at the example in this document, which illstrates this use case.
TODO
TODO
TODO
This specification serves as the Association Ontology "namespace document". As such it describes the Association Ontology and the terms (RDF classes and properties) that constitute it, so that Semantic Web applications can use those terms in a variety of RDF-compatible document formats and applications.
This document presents the Association Ontology as a Semantic Web vocabulary or Ontology. The Association Ontology is pretty simple, pragmatic and designed to allow simultaneous deployment and extension. The Association Ontology is intended for widescale use, but its authors make no commitments regarding its suitability for any particular purpose.
The Association Ontology is identified by the namespace URI
'http://purl.org/ontology/ao/core#
'. Revisions and
extensions of the Association Ontology are conducted through edits to this document,
which by convention is accessible in the Web via the namespace URI.
For practical and deployment reasons, note that we do not
update the namespace URI as the vocabulary matures.
The evolution of the Association Ontology is best considered in terms of the stability of individual vocabulary terms, rather than the specification as a whole. As terms stabilise in usage and documentation, they progress through the categories 'unstable', 'testing' and 'stable'. Older terms are marked 'archaic' which allows the possibility of older forms to become modern again.
The Association Ontology introduces the following classes and properties. There is a link at the top of this document to the RDF/XML and RDF/N3 versions.
Classes: | LikeableAssociation |
Properties: | activity | application | context | device | genre | included_association | likeminded | location | mood | occasion | time | used_application | used_device |
Status: | testing | |
---|---|---|
Sub class of | rev:Review sim:Association | |
OWL Class |
[#] [back to top]
Status: | testing | |
---|---|---|
Sub property of | has context | |
RDF Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Sub property of | has context | |
Has sub property | has used application | |
RDF Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Domain: | owl:Thing | |
Has sub property | has device has application has location has activity has time | |
RDF Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Sub property of | has context | |
Has sub property | has used device | |
RDF Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Domain: | sim:Association | |
Range: | sim:Association | |
Inverse property of | the anonymous defined property with the label 'is included association of' (Object Property) | |
Object Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Domain: | sim:Association | |
Range: | foaf:Agent | |
Inverse property of | the anonymous defined property with the label 'is likeminded of' (Object Property) | |
Object Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Sub property of | has context | |
RDF Property |
[#] [back to top]
Status: | testing | |
---|---|---|
Sub property of | has context | |
Equivalent Property | dc:date | |
RDF Property |
[#] [back to top]
Status: | unstable | |
---|---|---|
Domain: | owl:Thing | |
Sub property of | dcterms:subject | |
RDF Property |
[#] [back to top]
Status: | unstable | |
---|---|---|
Domain: | owl:Thing | |
Sub property of | dcterms:subject | |
RDF Property |
[#] [back to top]
Status: | unstable | |
---|---|---|
Domain: | owl:Thing | |
Sub property of | dcterms:subject | |
RDF Property |
[#] [back to top]
Status: | unstable | |
---|---|---|
Sub property of | has application event:factor | |
RDF Property | ||
Object Property |
[#] [back to top]
Status: | unstable | |
---|---|---|
Sub property of | has device event:factor | |
RDF Property | ||
Object Property |
[#] [back to top]
The description of the terms in the Association Ontology 'dictionary' make reference to classes and properties elsewhere. This section of the Association Ontology
specification provides a placeholder reference for any Association Ontology mention of externally defined terms. For example, sometimes we might say that Counter
Ontology property has a domain or range of an externally defined class, or that a Association Ontology class is a sub-class of an external class, or 'disjoint with'
such a class (ie. has no common members). Such claims help fix the intended meaning of Association Ontology terms in relationship to other 'peer' vocabularies.
Currently, the Association Ontology sub classes:
Each term in the Association Ontology is annotated with properties from the SemWeb Vocab Status Ontology
Note that this mechanism is itself somewhat experimental and evolvin. The definitions of 'stable', 'unstable', 'archaic' and 'testing' cannot be defined as global absolutes, but only in relationship to the practices, expectations and social structures around some vocabulary. For their use in the Association Ontology, future versions of this specification could usefully offer more detail about what to expect from a term labelled 'stable'.
I would like to thank very much Toby Inkster and Kurt Jacobson to help to establish this multiple purpose association ontology. Furthermore, Dan Brickley and Libby Miller to provide the basis for this specification.
============================ Version 0.4 (September 2010) ============================ * ADDED: ao:device - a device, which is associated with an individual, e.g. a CD player with a CD it's currently playing back * ADDED: ao:application - an application, which is associated to an individual, e.g. a music player to a music track it's currently playing back * ADDED: ao:used_device - moved from the Counter Ontology to AO, generalised the rdfs:domain to event:Event and marked as sub property of ao:device * ADDED: ao:used_application - moved from the Counter Ontology to AO, generalised the rdfs:domain to event:Event and marked as sub property of ao:application * MODIFIED: added owl:Thing as rdfs:domain of ao:context ========================= Version 0.3 (August 2010) ========================= * ADDED: ao:context - a property to associate any context to an individual, e.g. a location, a time or an activity * ADDED: ao:activity - an activity, which is associated to an individual, e.g. dancing, sleeping, driving * ADDED: ao:location - a location, which is associated to an individual, e.g. my house, my country, my current whereabouts * ADDED: ao:time - a time, which is associated to an individual, e.g. morning, afternoon, evening ========================= Version 0.21 (July 2010) ========================= * REMOVED: wrongly set owl:inverseOf properties from all rdf:Property typed properties (ao:genre, ao:mood, ao:occasion) ========================= Version 0.2 (July 2010) ========================= * REMOVED: ao:association - moved to this property to the Similarity Ontology (http://purl.org/ontology/similarity/) * ADDED: ao:included_association - to enable the composition of association statements or to reuse them, e.g. to make them likeable in a specific context * ADDED: ao:LikeableAssociation - to enable voting, reviewing, feedbacking on association statements in a specific context ========================= Version 0.1 (July 2010) ========================= * ADDED: ao:association - to related a sim:Association to something * ADDED: ao:likeminded - to related likeminded people (foaf:Agent) to a sim:Association * ADDED: ao:genre - to have multiple purpose, general genre relation * ADDED: ao:mood - to have a multiple purpose, general mood relation * ADDED: ao:occasion - to have a multiple purpose, general occasion relation