Activity Vocabulary has tables which indicate several aspects (meta-properties?) of each property defined in Activity Streams 2.0. These aspects include:
- functional — is it single-value, or not?
- range — indicates the type of value the property term can have
- subproperty of — meaning that the term is a specialization of the referenced term
Here's a good example.
I haven't been able to find something like this for the properties added by ActivityPub.
For example, take following
. The ActivityPub Recommendation says:
A link to an [ActivityStreams] collection of the actors that this actor is following; see 5.4 Following Collection
...
Every actor SHOULD have a following collection. This is a list of everybody that the actor has followed, added as a side effect. The following collection MUST be either an OrderedCollection or a Collection and MAY be filtered on privileges of an authenticated user or as appropriate when no authentication is given.
And that's just about it. Based on the above, I would have thought the range was Collection
(like it is for replies
), but looking at the examples and data returned by a Mastodon instance, I see the following
property being set like this:
"following": "https://example.org/users/johndoe/following",
So what's the correct range for the following
property?
Also, can an Object have multiple values for following
, or is it "functional"?
In general, where are these aspects of all of the ActivityPub properties defined?