Practices around JSON formatting of JSON-LD messages

Are we really still talking about JSON vs JSON-LD? I thought this was discussed to death already.

Regardless of what side of the debate you are on, you must admit that the controversy around “to JSON-LD or not to JSON-LD” signals a failure of the standards process. Standards should not be controversial. They should seek common ground and thereby eliminate controversy and instead foster cooperation. The inclusion of JSON-LD in the ActivityPub standard is clearly controversial and thus, if you ask me, not standard-worthy material.

I am biased because I am on the “no to JSON-LD” side of the fence, but I think in this situation:

  1. A spec that arguably doesn’t take JSON-LD seriously.
  2. Practically no implementations exists that care about JSON-LD.
  3. Plain JSON is the worldwide de-facto standard for web APIs (not JSON-LD, which I had never even heard about before reading about ActivityPub, and I’ve been a software engineer for many years).
  4. JSON-LD is even controversial among the “theorists” of the spec (see this thread or the linked one earlier, or any of the other threads discussing JSON-LD).

We cannot continue pressing on and saying “But ActivityPub really should be using JSON-LD!”

The support for JSON-LD is just not there, not among implementors and not even (enough) among theorists. A standard cannot go on with a controversial thing like this. Again, standards should not be controversial.

Clearly a different path forward is needed, but I have no answers here as I don’t see a way to change the status quo of “ActivityPub uses JSON-LD but actually it’s optional and nobody uses it anyway so it’s just plain JSON in reality” without doing a breaking change in the ActivityPub standard (as discussed in the above linked thread), which would clearly be a no-go for existing implementations. Unfortunately this is a bit of a weakness of the decentralized approach, as nobody has authority (by design, of course) to put their foot down to set a common path forward.

So I have no answers, but this just makes the JSON vs JSON-LD discussion even more useless. I’m not sure what I’m hoping to achieve with this reply aside from trying to say: Perhaps we should spend our time on discussions more fruitfully rather than going down the same useless path again and again?

3 Likes