Re: Hydra Design Goals: How important is RDF?

> On Oct 2, 2015, at 11:42 AM, Asbjørn Ulsberg <asbjorn@ulsberg.no> wrote:
> 
> 2015-10-02 16:52 GMT+02:00 Ruben Verborgh <ruben.verborgh@ugent.be>:
> 
>> We're not disagreeing that the serialization is important;
> 
> Good! :)
> 
>> we're talking here about whether or not RDF should underpin it.
> 
> Are we? I'm certainly not. If that's what I've communicated thus far,
> my communication skills are terrible. And if so, I'm sorry. With "How
> important is RDF", I don't mean "I want to remove RDF". What I'm
> trying to convey is the following:
> 
> Hydra should have a set of design goals. I think one of these designs
> goals should be the position RDF has in the technology. In JSON-LD, it
> was pretty early on made explicit that RDF was not a goal in and of
> itself (as you just wrote), but a means to a goal regarding
> self-descriptiveness (and hypermedia controls).

JSON-LD is really useful for developers, but it’s important that Hydra work at the model level, based on RDF, and not rely on specifics of JSON-LD serialization. In principle, it should be possible to use a Hydra API with a different RDF serialization, such as Turtle. The fact that there are a number of different RDF serialization formats shows that these can be ephemeral; tying to the data model (which, using triples/quads with URIs and Literals is pretty simple) allows Hydra to maintain it’s value even if another hot serialization format comes along (I hear people talking about YAML-LD, for example). IMO, tying an API too closely to the particulars of a serialization format is a mistake.

That said, some guidance for serializing using JSON-LD is appropriate, and a Primer which is entirely focused on developers using Hydra with a JSON-LD serialization will be valuable.

Gregg

> So although RDF enables this in wonderful and powerful ways, it's just
> a tool. It's a means to an end. So just because something is possible
> to express in RDF should not make its serialization in JSON
> unimportant.
> 
>> It brings us actually to a much more important point:
>> RDF is crucial, because it enables use cases like Martynas' and mine.
>> JSON makes it accessible for non-specialized developers.
>> And JSON-LD is the bridge between the two.
> 
> Yep.
> 
>> So how important is RDF? Very.
> 
> I agree!
> 
>> It gives specialized client developers what they need,
>> and—thanks to JSON-LD—also non-specialized developers.
> 
> Yes! My point exactly! How does JSON-LD accomplish this? In my
> opinion, by not being designed from an abstract perspective where
> serialization and such are unimportant details. Instead, JSON-LD
> acknowledges the fact that syntax is important and it should be made
> understandable regardless of the fact that it expresses RDF graphs and
> regardless of whether the consumer of the syntax has heard of RDF
> before or not.
> 
>> Without RDF, only one of those groups would be served.
> 
> Indeed. We should serve both! But I think we need to state this in a
> design goal, so "unimportant matters" such as serialization can't be
> ignored.
> 
> I hope I've made myself better understood now. Just to repeat: I do
> *not* want to switch out RDF in any way. I think RDF is very important
> and a huge enabler for both JSON-LD and Hydra. I just don't want it to
> end up as so important that it lessens the quality of other aspects of
> Hydra, like serialization.
> 
> I don't want "You can just map this in JSON-LD" or "To RDF, the syntax
> doesn't matter" to be arguments against discussing serialization or
> syntax. I don't think it's possible to ensure this without stating it
> explicitly in a design goal.
> 
> :-)
> 
> -- 
> Asbjørn Ulsberg           -=|=-        asbjorn@ulsberg.no
> «He's a loathsome offensive brute, yet I can't look away»
> 

Received on Friday, 2 October 2015 19:06:38 UTC