- From: McBennett, Pat <McBennettP@DNB.com>
- Date: Thu, 3 Jul 2014 11:11:40 -0500
- To: Markus Lanthaler <markus.lanthaler@gmx.net>, "public-hydra@w3.org" <public-hydra@w3.org>
I really like this proposal (so +1), but my only concern (and this is certainly not an objection), is that currently all our RDF is 'clean' (in that I have literally no blank nodes), and ideally I'd like to keep it that way, while of course still supporting Hydra collections.
I know I could easily introduce a named node myself (or skolemize), but would it make sense for the spec to at least allude to the controversy around blank nodes [1], [2], [3], [4], [5], and offered a non-normative approach (i.e. a convention) for those who wish to avoid them as much as possible (for example, the use of '/alice/friends/meta' below where the use of '/meta' is a simple convention to avoid blank nodes). Of course for those who don't care, allowing the use of blank nodes is fine too.
{
"@id": "/alice",
"collection": {
"@id": "/alice/friends",
"@type": "Collection",
"manages": {
"@id": "/alice/friends/meta",
"property": "schema:knows",
"subject": "/alice"
}
}
}
... and in Turtle:
</alice> hydra:collection </alice/friends> .
</alice/friends> a hydra:Collection ;
hydra:manages </alice/friends/meta> .
</alice/friends/meta> hydra:property schema:knows ;
hydra:subject </alice> .
Or is the concensus that this would just be cluttering the specification, and blank nodes are 'fine really' (as seems to be the consensus from the JSON-LD group [6])?
[1] http://richard.cyganiak.de/blog/2011/03/blank-nodes-considered-harmful/
[2] http://milicicvuk.com/blog/2011/07/14/problems-of-the-rdf-model-blank-nodes/
[3] http://www.w3.org/2009/12/rdf-ws/papers/ws23
[4] http://aidanhogan.com/docs/bnodes.pdf
[5] http://manu.sporny.org/2013/rdf-identifiers/
[6] https://github.com/mcollina/levelgraph-jsonld/issues/8
Pat.
> -----Original Message-----
> From: Markus Lanthaler [mailto:markus.lanthaler@gmx.net]
> Sent: Thursday, July 03, 2014 4:17 PM
> To: public-hydra@w3.org
> Subject: Call for consensus on collection design (ISSUE-41)
>
> Hello everyone,
>
> Over the past few weeks, we have debated the issues around collections and
> seem to have found a solution that works for everyone. The proposal is to
> introduce four new properties, namely hydra:collection (please note, not
> *has*Collection as we don't use that style for any other property),
> hydra:manages, hydra:subject, and hydra:object (hydra:property already
> exists). These properties then allow to link collections to entities as
> follows:
>
> {
> "@id": "/alice",
> "collection": {
> "@id": "/alice/friends",
> "@type": "Collection",
> "manages": {
> "property": "schema:knows",
> "subject": "/alice"
> }
> }
> }
>
> ... and in Turtle:
>
> </alice> hydra:collection </alice/friends> .
> </alice/friends> a hydra:Collection ;
> hydra:manages [
> hydra:property schema:knows ;
> hydra:subject </alice> .
> ] .
>
>
> This serves as a call for consensus on the proposed solution. Before I
> proceed with marking the issue as resolved and implementing the changes in
> the spec, I would like to ask if anyone has any concerns or objections against
> this proposal.
>
> Please submit your comments by Wednesday, July 9th.
>
>
> Thanks,
> Markus
>
>
>
> --
> Markus Lanthaler
> @markuslanthaler
>
>
>
Received on Thursday, 3 July 2014 16:12:12 UTC