- From: <henry.story@bblfish.net>
- Date: Fri, 24 Apr 2015 18:25:28 +0200
- To: James M Snell <jasnell@gmail.com>
- Cc: Social Web Working Group <public-socialweb@w3.org>
> On 24 Apr 2015, at 17:53, James M Snell <jasnell@gmail.com> wrote: > >> In what I now know is the "normative" section of the spec it states under >> Collection ( http://www.w3.org/TR/activitystreams-vocabulary/#dfn-collection >> ) >> >>> A Collection is a subclass of Object that represents ordered or unordered >>> sets of Object or Link instances. The model for collections within the >>> Activity Vocabulary is designed largely around the abstract model of >>> "logical feeds" and "pages" discussed in [RFC5005], Section 1.2. >> >> But since all of this is related to paging, why not rather work a bit more >> closely with what >> the LDP group has done under the leadership of Arnaud Le Hors who works for >> the >> same company you are working for ( IBM ) and that is available here: >> >> https://dvcs.w3.org/hg/ldpwg/raw-file/default/ldp-paging.html >> > > Note that paging in Activity Streams predates LDP Paging by several > years so it's really no surprise that there is overlap. I'm not aware > of a single AS implementation that does paging the LDP way so there's > not much experience to draw from. If you have specific suggestions on > how to achieve better alignment, please do illustrate with examples. Activity Streams 1.0 as far as I can tell was not in RDF, so it is not that different from RFC5005 or paging in Atom XML, just that it is done in JSON. It is not because AS1 or Atom has done something that this means it can be transposed 1 to 1 to RDF by a simple syntactic shift. We saw that with the link relation in atom XML that does not really need a Link class to go with it. The proof is that both the LDP paging spec and your paging spec claim to come from the same RFC5005 and yet are diverging. This does not mean both are correct, but it does mean that you can't claim more historical rights to be the decendant of AS1 than the LDP can. The criteria we need to use here have to be based on the ontology. So I'll open an issue that we should look for alignment here, because that could save us a lot of time finding all the flaws of this implementation. Btw. I think there are quite a few LDP paging implementations too. > >> This also references the same RFC5005 . It seems a bit of a waste of >> people's time here >> to have to go through the same work twice here for no clear reason. >> >> Furthermore Paging is very much a protocol related feature, which can be >> applied to pretty much all information retrieval, as it was shown in the LDP >> group. As a result adding paging to activity streams is not really the right >> place for it. It should be a generic feature of the spec. >> > > Which spec exactly? I'm sorry but whatever point you're trying to make > here isn't very clear at all. A special paging spec, as it is done in LDP, where you related pages of documents rather than try to bend the ontology to fit into "paging" collections. For example the nice thing about the LDP paging spec is that it does not require a huge amount of text about how merging pages happens. Merging pages works just as with merging any two RDF graphs. In your interpretation of RFC5005 you need to write some quite complex and difficult to understand text about this [[ When multiple, separate Collection instances share the same identity (represented in the JSON-LD serialization using the @id property) and each specifies distinct, non-overlapping subsets of member items (using the items property), the membership of the logical collection is the intersection of each of the subsets. However, when there is overlap in the items contained by multiple Collection instances (e.g. when Objector Link intances with the same identity appear in more than one Collection), member instances with the most recently updated timestamps -- as determined by examining first the updated and then published properties -- must be considered to be the most current representations. If those members do not have either an updated or published property specified, then the containing Collection object's updated and publishedproperties are used. If no timestamps are available to use for comparison, implementations may use other means to determine the precedence of member instance representations. When the members of a Collection are ordered, the ordering imposed applies only to the subset of members contained within that one specific Collection instance. ]] There should be no need for this type of thinking. Paging should be a way to present the data, it should not end up working its way into the ontology. Doing that just will end up making the work for coders unecessarily complicated. The whole point of RDF is to help us get out of these syntactic twists and turns that add no value. Henry Social Web Architect http://bblfish.net/
Received on Friday, 24 April 2015 16:25:59 UTC