Re: How to avoid that collections "break" relationships (ISSUE-41)

Hi Markus,

>> hydra:hasCollection with "property" and "subject" seems better;
>> it allows clients to derive that (all?) "allice :knows" triples will be there.
>> However, "hasCollection" is unnecessary in that case,
>> because "subject" already gives the needed information.
> 
> That's true. But I think it still makes a lot of sense to include this
> forward link, i.e., /alice --[hasCollection]--> Collection instead of just
> having the indirect reverse link /alice <--[subject]--(bnode)<--[manages]--Collection.
> 
> It's simply much more straightforward to find it that way, especially if you
> don't use a triple store.

It might be more straightforward, but is this something you can spec?
The semantics are already there without the extra link.
Clients just have to do the effort then (and it's not that hard).
In other words, we should not treat "subject" links as stronger links
than "object" links.

>> The benefit of option (1) is that it is subject-centered.
>> It says "this is a document with these properties",
>> which seems easier to reuse in other contexts than a chain (2).
>> On the other hand, (2) will show up if you enumerate all properties of </alice>.
>> (But hey, we can equally enumerate all properties where </alice> is object.)
> 
> Doesn't the original proposal (hasCollection + manages) give you the best of both?

Yes, but see remark above… can we mandate this?
It might be better to prepare clients that hasCollection is not (always) there.

Best,

Ruben

Received on Thursday, 5 June 2014 11:54:55 UTC