Socialwg/Collection Comparison
Examples
- Members of this WG: http://www.w3.org/2000/09/dbwg/details?group=72531&public=1
- Attendees of teleconference: https://www.w3.org/wiki/Socialwg/2014-11-04-minutes#Attendees
- Instant Messages on IRC channel during a day: http://socialwg.indiewebcamp.com/irc/social/today
- Past teleconferences: https://www.w3.org/wiki/Socialwg#Telecons
- Related organizations: https://www.w3.org/wiki/Socialwg#Related_Organizations
- Issues in a project: https://github.com/jasnell/w3c-socialwg-activitystreams/issues
- Comments thread: https://github.com/jasnell/w3c-socialwg-activitystreams/issues/23
- Mailing list archive: http://lists.w3.org/Archives/Public/public-socialweb/
- Whitelist for accepting comments (designed for webmention+vouch): https://ben.thatmustbe.me/whitelist
Scenario
Represent list of Social Web WG members as distinct resource with possibility of paging it.
User Stories
Some of the User Stories which require use of Collection
- https://www.w3.org/wiki/Socialig/Vocabulary_TF/Mapping_API_User_Stories_to_Vocabulary_terms#List_.2F_Collection
- https://www.w3.org/wiki/Socialig/Vocabulary_TF/Mapping_API_User_Stories_to_Vocabulary_terms#Stream
IndieWeb use of microformats
- http://microformats.org/wiki/h-feed
- http://indiewebcamp.com/collection
- http://microformats.org/wiki/xfn-hcard-supporting-friends-lists
Real world examples:
RSS
Atom
collection + json
Linked Data Platform
- http://www.w3.org/TR/ldp/#ldpc (W3C TR)
- http://www.w3.org/TR/ldp-paging/ (W3C CR)
Activity Streams 2.0
- http://www.w3.org/TR/activitystreams-core/#collections (W3C FPWD)
- http://www.w3.org/TR/activitystreams-vocabulary/#dfn-collection (W3C FPWD)
Real world examples:
- ???
Schema.org
- http://schema.org/ItemList
- heavily discussed as of 13-09-2014 http://lists.w3.org/Archives/Public/public-vocabs/2014Sep/0056.html
Real world examples:
- ???
Hydra
- http://www.hydra-cg.com/spec/latest/core/#collections (W3C CG Draft)
- https://www.w3.org/community/hydra/wiki/Collection_Design
- https://www.w3.org/community/hydra/wiki/Pagination
(intense discussions on pagination on mailing list)
!!!WORK IN PROGRESS, not verified by other participants of Hydra CG!!!
Real world examples:
- ???
Theoretical example of how an existing URL could return information (but does not currently)
GET http://www.w3.org/2013/socialweb/
{
"@context": {
"@vocab": "http://www.w3.org/ns/hydra/core#",
"ex": "http://example.net/#"
},
"@id": "http://www.w3.org/2013/socialweb/",
"@type": "ex:Organization",
"ex:name": "Social Web WG",
"ex:participant": {
"@id": "participants?page=1",
"totalItems": "49",
...
}
}
GET http://www.w3.org/2013/socialweb/participants?page=1
{
"@context": {
"@vocab": "http://www.w3.org/ns/hydra/core#",
"ex": "http://example.net/#"
},
"@id": "http://www.w3.org/2013/socialweb/participants?page=1",
"@type": "PagedCollection",
"totalItems": "49",
"itemsPerPage": "10",
"firstPage": "participants?page=1",
"nextPage": "participants?page=2",
"lastPage": "participants?page=5",
"member": [
"https://wwelves.org/perpetual-tripper",
"http://tantek.com",
"http://me.markus-lanthaler.com",
...
]
}
The examples above assume that the ex vocabulary was created with Hydra collections in mind, i.e., the range of ex:participant is hydra:Collection (or something more generic). If the range of ex:participant would be set to something like ex:Person, the collection would need to be referenced indirectly as follows:
GET http://www.w3.org/2013/socialweb/
{
"@context": {
"@vocab": "http://www.w3.org/ns/hydra/core#",
"ex": "http://example.net/#"
},
"@id": "http://www.w3.org/2013/socialweb/",
"@type": "ex:Organization",
"ex:name": "Social Web WG",
"collection": {
"@id": "participants?page=1",
"totalItems": "49",
...
"manages": {
"subject": "http://www.w3.org/2013/socialweb",
"property": "ex:participant"
}
}
}
SIOC
Real world examples:
- ???
Object Reuse and Exchange
suggested by Karen Coyle https://lists.w3.org/Archives/Public/public-vocabs/2015Mar/0061.html