MOAT defines a lightweight ontology to represent how different meanings (i.e. URIs of Semantic Web resources) can be related to a tag.
It first defines a Tag object, that extends the Tag class from Richard Newman's tag ontology. The main reason is that we consider there is a unique relationship between a Tag and a label so that a Tag has a unique MOAT identifier in the Semantic Web. Meanings are then related to a tag thanks to a Meaning class.
E.g. Representing a tag labelled “paris”, with two different meanings:
<moat:Tag rdf:about="http://tags.moat-project.org/tag/paris">
<moat:name><![CDATA[paris]]></moat:name>
<moat:hasMeaning>
<moat:Meaning>
<moat:meaningURI rdf:resource="http://sws.geonames.org/2988507/"/>
<foaf:maker rdf:resource="http://example.org/user/foaf/1"/>
</moat:Meaning>
</moat:has_meaning>
<moat:hasMeaning>
<moat:Meaning>
<moat:meaningURI rdf:resource="http://sws.geonames.org/4402452/"/>
<foaf:maker rdf:resource="http://example.org/user/bob/foaf"/>
<foaf:maker rdf:resource="http://somwhere.net/myblog/foaf.rdf#me"/>
</moat:Meaning>
</moat:has_meaning>
</moat:Tag>
End-users should not have to deal with the ontology, since it is mainly use to let a MOAT server and clients share information.
MOAT uses FOAF and its foaf:maker property to define which people consider a URI as the meaning of a Tag. This information can be useful when querying a MOAT server, e.g. to retrieve only meanings that have been given by your friends.
In order to link the (originally tagged) content to the meaningful URI, while the Tagging class can be used, we suggest to use SIOC and especially its sioc:topic property.
Finally, related work about ontologies and the Semantic Web can be found in Richard Newman's tag ontology (used in the MOAT ontology), and the SCOT project.