- From: elf Pavlik <perpetual-tripper@wwelves.org>
- Date: Sun, 25 Oct 2015 09:44:12 +0100
- To: Social Web Working Group <public-socialweb@w3.org>
- CC: Amy G <amy@rhiaro.co.uk>, james M Snell <jasnell@gmail.com>
Hello, I would like to ask everyone interested for feedback on possible approach for separating concerns of Social Data Model and Social API. Currently I think in this direction: 1) Social API - client-server HTTP API (where server side applications can act as client, the way most micropub clients currently work) 2) Social Data Model - JSON based syntax and extensible vocabulary to model various domain of online social interaction I think of a scenario of offline first app, which doesn't use HTTP protocol having no network connection, as a useful situation to help us draw distinction between API and Data Model. Let's say someone gave me a single JSON file with *all their social data* (on USB drive or MicroSD card). My native desktop or mobile app, should only need to implement Social Data Model to make full sense out of this data, and locally read from and write to this single JSON file on a file system. Social API spec, should *only* specify what I do when I start using HTTP as read/write *interface* If we agree on such direction in drawing this distinction, than I see for example proposed unofficial draft of ActivityPump as stepping on responsibilities of Social Data Model by defining some particular social artifacts - Streams, lists of agents who do follow or get followed, list of entities which someone favorites. In my opinion all of those stay withing concern of *modeling* social data and either AS2.0 core or extension should address it. Future spec which addresses federation *may* define social data model *extensions* for expressing information about subscriptions, notifications and details about delivery. Still Social API preferably will leave out details about all the possible particular types of social artifacts and relations between them up to the extensible Social Data Model. I see LDP, Hydra and Linked Data Fragments specs as interesting examples of what HTTP API spec may want to focus on defining: * http://www.w3.org/TR/ldp/ * http://www.w3.org/TR/ldp-paging/ * http://www.hydra-cg.com/spec/latest/core/ * http://www.hydra-cg.com/spec/latest/linked-data-fragments/ Cheers! On 10/23/2015 07:26 PM, Social Web Working Group Issue Tracker wrote: > social-ISSUE-46 (separation-of-concerns): AS2.0 tries to address some Social API responsibilities [Activity Streams 2.0] > > http://www.w3.org/Social/track/issues/46 > > Raised by: Pavlik elf > On product: Activity Streams 2.0 > > I created two github issues where I explain this topic in more depth: > > * https://github.com/jasnell/w3c-socialwg-activitystreams/issues/221 > * https://github.com/w3c-social/SocialAPI/issues/1 > > It also relates to ISSUE-37 > > Now that we have first editor's draft of SocialAPI we can together decide which spec should address which responsibility. This way we can make sure that recommended technologies stay modular and we minimize coupling between them, as discussed during last teleconference and on recent mailing list thread. > > I encourage further conversations in linked github issues and in replies to auto created thread on mailing list. > > >
Received on Sunday, 25 October 2015 08:44:18 UTC