Re: ActivityStreams Schema: Hierarchy of Types

If we simply recommend using one of N vocabularies, we have no effective interoperability.

We need to make some choices about this schema.

Evan Prodromou

> On Nov 5, 2014, at 00:16, James M Snell <> wrote:
> While I certainly agree that a vocabulary of this sort will be
> necessary (let's call it the "Social Object Vocabulary" to
> differentiate it from the "Activity Vocabulary"), this becomes a very
> slippery path... if we're not careful, we'll just end up rehashing the
> same ground covered by other efforts (vcard, foaf,, org
> ontology, etc). As much as possible, we ought to be looking at these
> existing vocabularies before attempting to hash out anything else.
> For instance, we simply don't need an as:Person when we already have
> things like foaf:Agent,, vcard:Individual,
> prov:Agent, and likely many others. One thing that would likely help
> is to start documenting the abstract generalized concepts then mapping
> those to the existing vocabularies, we can then see where the gaps
> exist. I've started working on that here:
> - James
>> On Tue, Nov 4, 2014 at 12:58 PM, Owen Shepherd <> wrote:
>> As I work on the proposed spec which I'll be submitting imminently as a
>> basis for our social API, it occurs to me that we really ought to (A) work
>> out our base types (as Evan brought up earlier this week), and (B) work our
>> our classification system.
>> I figure that we have three broad groups of Objects:
>> "Actors" - people, robots, etc. The "users" of our social system, whether
>> sentient or not.
>> "Content objects" - notes, articles, videos, etc. These are "passive"
>> objects - they can only be created and acted on by the previous
>> With "Media" as a subclass for things like videos and audio, which share a
>> common property set
>> "Other" - Things like groups, which don't really fall into either of the two
>> previous categories
>> This gives us an ontology somewhat like this (where each indent level
>> implies a subclass relationship)
>> as:Object - Base type
>> as:Actor?
>> A "producer"/"consumer" in AS ontology
>> as:Person - A human being
>> Others for "bots"?
>> as:<Something> (Content objects; This is kind of like what Tantek would call
>> a post)
>> Can have things like comments, list of people who like, etc
>> as:Note - shortform text (e.g. a tweet)
>> as:Article - longform text
>> as:Media(Object?) - Various types of multimedia (all share common
>> properties)
>> as:Audio
>> as:Video
>> as:Image
>> ...
>> as:Location
>> as:Collection
>> ...
>> as:Group
>> This then gives us a basis for declaring common properties (e.g. a Person
>> doesn't have comments, but all content objects do)
>> Thoughts?
>> Owen

Received on Wednesday, 5 November 2014 13:12:44 UTC