Re: Meta implementing ActivityPub as intended? Not so fast IMHO.

Ășt 23. 5. 2023 v 8:42 odesĂ­latel Jonas Smedegaard <jonas@jones.dk> napsal:

> Quoting Melvin Carvalho (2023-05-22 23:58:04)
> > Facebook has a very good standards compliant implementation of linked
> data
> > and RDF with proper vocabularies etc.  It was impressive.
>
> I noticed that you stated the above several times recently.  I disagree.
>
> Meta has developed a service API, Graph API, which is *not* semantic.
> Then as an extension they have developed data language OpenGraph and
> query language GraphQL which *are* semantic, but while expressive enough
> that they *can* do things equivalent to RDF and SPARQL, and therefore
> *potentially* can be used to provide 5-star compliant linked data, they
> are only cetain to comply with themselves, not to comply with RDF nor
> "linked data" as RDF folks use that term.
>
> (Not how I above shift to focus om 5-star where your focus was on
> somthing data somehow linked, which then is deceptive to praise as being
> "compliant".)
>
> Why did Meta invent OpenGraph and GraphQL when SPARQL and RDF already
> existed?  Most notable as I see it is that GraphQL at its core supports
> tying an API key to each query, meaning that the owner of a data store
> can gather granular knowledge about each and every single use of it: I
> strongly suspect that OpenGraph is usable *only* directly connected to
> Meta services as a means for Meta to milk most possible knowledge from
> the use of prior knowledge.
>
> I would love to be proven wrong on my suspicion.
>
> Here's what some others have written related to this, that I could find
> quickly:
>
>
> https://stackoverflow.com/questions/50063202/what-is-the-difference-between-graphql-and-sparql
>
>
> https://stackoverflow.com/questions/16639799/is-there-a-difference-between-facebooks-open-graph-api-and-its-graph-api


Facebook implemented full WebID including linked data vocabularies and
turtle serialization.  It was completely interoperable with Solid apps.
Not only that, but they used full fragment IDs compatible with Solid.  It
was a remarkable achievement.

See here:

https://github.com/melvincarvalho/webid.im/blob/dbe88a7070a642b388a650b502c6292c71d62530/app/app.js#L1219

______

var FACE = $rdf.Namespace("https://graph.facebook.com/schema/~/");

avatar = g.any(kb.sym(friend), FOAF('img')) || g.any(kb.sym(friend),
FOAF('depiction'));
name = g.any(kb.sym(friend), FOAF('name'))  || g.any(kb.sym(friend),
FACE('name')) ;
______

I wrote a whole realtime messenger that could work with my solid friends,
and also pull in my facebook friends.

See how seamlessly I could interact with my linked data friends and my
facebook friends, creating a massive social graph.

I havent used it in a while, but back then it was just HTTP GET.  I think
later they put an oauth challenge in front of it.

This is interop that I could not dream of with most other systems.

It's a pity that facebook are closed source, proprietary and indulge in
questionable business practices.

But in terms of standards compliance they were doing a really good job, at
least back then.  Ahead of where the fediverse is today in terms of
standards compliance.

It will be interesting to see what they come up with technically.


>
>
>
>  - Jonas
>
> --
>  * Jonas Smedegaard - idealist & Internet-arkitekt
>  * Tlf.: +45 40843136  Website: http://dr.jones.dk/
>  * Sponsorship: https://ko-fi.com/drjones
>
>  [x] quote me freely  [ ] ask before reusing  [ ] keep private
>

Received on Tuesday, 23 May 2023 07:14:11 UTC