- From: Markus Lanthaler <markus.lanthaler@gmx.net>
- Date: Thu, 17 Apr 2014 23:55:07 +0200
- To: "'Ruben Verborgh'" <ruben.verborgh@ugent.be>, "'Gregg Kellogg'" <gregg@greggkellogg.net>
- Cc: <public-hydra@w3.org>
Hi, Before jumping onto the new thread (thanks Ruben for taking the lead), I'll try to answer a couple of questions in this thread. On Tuesday, April 15, 2014 7:37 PM, Ruben Verborgh wrote: > I'll show you my specific use case: I'm adding page support to Linked Data > Fragments. > I want to say that <http://data.linkeddatafragments.org/dbpedia> > is the first page of the dataset > <http://data.linkeddatafragments.org/dbpedia#dataset>. > > I have been working on this for some time, > and I can't help but wonder whether PagedCollection is really the correct > term/concept. The reason why it is called PagedCollection and not CollectionPage is that I see a PagedCollection as the sum of all the pages it consists of. This is somehow similar to RDF lists which consist of a number of blank nodes with rdf:first/rdf:next properties. Thus, I also didn't see any need to make it possible to link from a Collection to a (Collection)Page. Does this make any sense to you? > Maybe the following could be easier: > <dataset> hydra:firstPage <page1>. > <dataset> hydra:lastPage <page34>. > <page1> hydra:nextPage <page2>. > <page2> hydra:previousPage <page1>. > <page1> hydra:pageOf <dataset>. > So there is one collection; each of them has pages. > Note the relations firstPage and lastPage would be between a collection and > a page; Well... this certainly looks tidy but do you really need an "entry point" which just links to the first and last page but doesn't give you any members? > To complicate matters, I had originally this idea: > the entire dataset is <http://data.linkeddatafragments.org/dbpedia>; > but the representation at this URL only contains the triples in the first page. > > In other words, the representations of > - http://data.linkeddatafragments.org/dbpedia > and > - http://data.linkeddatafragments.org/dbpedia?page=1 > would be the same, even though the first identifies the entire dataset > and the second only identifies the first page. That's how a PagedCollection is supposed to be used in general. > nextPage and previousPage are between pages (not a collection and a page). > This would make the Hydra properties equivalent to the IANA rels first, last, > next, prev. Well, the current design is also consistent with the IANA link relations AFAICT. In fact, I think the current design is even more consistent with how the IANA link relations are typically used (e.g. in Atom). I just checked and found RFC5005: Feed Paging and Archiving [1]. It uses those relations exactly the same way as Hydra currently does and calls such feeds Paged Feeds. > Currently, the above would have to be expressed as: > <page2> hydra:firstPage <page1>. > <page2> hydra:lastPage <page34>. > <page1> hydra:nextPage <page2>. > <page2> hydra:previousPage <page1>. > Note how I cannot relate the dataset to its pages. ... because the "dataset" is the union of all pages.. at least if you want it to be the same thing. I'd probably separate them. Something like /the-data-set triplesCollection /the-(paged)collection Cheers, Markus [1] https://tools.ietf.org/html/rfc5005 -- Markus Lanthaler @markuslanthaler
Received on Thursday, 17 April 2014 21:56:28 UTC