w3c / activitystreams

Activity Streams 2.0
https://www.w3.org/TR/activitystreams-core/
Other
278 stars 62 forks source link

Question: Why did you come up with a dedicated Person type? #499

Open ppwfx opened 5 years ago

ppwfx commented 5 years ago

Please Indicate One:

Hey,

I just got a little question about your thought process. Why did you choose to have your own Person type (defined here https://www.w3.org/ns/activitystreams.jsonld) rather than extending an existing one (e.g. https://schema.org/Person.jsonld)?

This isn't meant to be a critic, I'm just curious.

cheers

markcellus commented 2 years ago

e.g. https://schema.org/Person.jsonld

... leads to 404. I suspect you meant https://schema.org/Person. :+1:

gobengo commented 2 years ago

@ppwfx schema.org/Person isn't a W3C Technical Recommendation

sebilasse commented 2 years ago

Nearly all the ActivityStreams types have an equivalent in schema.org – and since ActivityPub is JSON LD you could simply extend it on your own. Many different implementations do so. For example Mobilizon is extending the Place type with the https://schema.org/address See https://docs.joinmobilizon.org/contribute/activity_pub/#location

evanp commented 1 year ago

This was a big subject of conversation in the Social Web Working Group. I don't think I can summarize the entire conversation here.

I think the rough idea was: we couldn't have a dependency on a non-normative specification like schema.org, and at the time none of the entities working on schema.org would/could participate in the SWWG to resolve the issues.

There are some links in the related W3C issue tracker:

https://www.w3.org/Social/track/issues/15

There's a pretty good conversation here, too:

https://www.w3.org/wiki/Socialwg/2015-03-03-minutes

It's worth noting that the "person" type existed in Activity Streams 1.0, so it wasn't invented for AS2.

I'll add a page on the wiki at https://www.w3.org/wiki/Activity_Streams/Primer/Schema.org describing the history, since it seems to be one of the biggest things people ask. I'll add some information on using types from other vocabularies, like schema.org, also.

evanp commented 1 year ago

It's also worth noting that Activity Streams 1.0 was released in May 2011, and schema.org's first pre-release version was in June of the same year. So it might be worth asking why s.o didn't use the AS vocabulary! 😉

trwnh commented 8 months ago

One thing I'd like to ask or otherwise bring up: why not use VCard types? It's especially relevant because AS2-Core recommends that you SHOULD use VCard properties for Person, Group, and Organization... so it seems like those map perfectly onto VCard's Individual, Group, and Organization types. I can't think of a relevant semantic difference between these, and VCard 4 seems to have been around since 2006.