|
Re: collections: msg#00166network.syndication.atom.protocol
2006/8/10, Duncan Cragg:
Eric forgot to explicit one point: a collection's feed representation could very well be subscribed (i.e. dedicated towards both editor and subscriber clients). This will be the case if, for example: - the collection is not secured (wiki), or if the "subscription feed" is secured, - the server has no notion of "drafts" "Subscriber clients" won't use rel="edit" links, neither probably paging (in the sense of the atom-protocol, which is different from the one of the "feed history" extension), so subscripbing to "collection feeds" isn't a problem. Now, do Collections normally just contain URIs of Entries, or the full Do what you want. If your feed is only orented towards "editor clients", then use the most minimal form you can (rel="alternate" link or atom:content), to save some bandwidth. Indeed, can I boldly suggest that the spec explicitly says the There won't be a "typical collection feed". There might be one in the "bloggy wiki" world, but APP aims at a wider use. Which leads me on to another point I was hoping to clear up in my mind: If you didn't create the entry (it was created with/by another client), then you don't have the "Location header on create", you only have the rel="edit" link, so? ;-) However, the spec is silent on "loops": the collection feed contains an entry with an Edit IRI equal to "a", when you retrieve it as an Atom Entry Document, it contains a rel="edit" link with href="b". First, should you retrieve that "b" entry? when you retrieve it as an Atom Entry Document, it in turn contains a rel="edit" link with href="a", so which one is the Edit IRI? "a" or "b"? This is not RESTful, but it's the price to pay if you don't want to do WebDAV ("negotiation" using the "DAV" general header) or having an <app:editable/> flag in the entry. In sec 8.1, it states 'Clients MUST NOT assume that the URI provided by When you do "optimistic concurrency" à la Google's GData ;-) For example, the "Location URI" will be, e.g., "my-entry", as well as the "link-rel-edit" IRI. Then, when you first update the entry, the "link-rel-edit" IRI becomes "my-entry/1", then "my-entry/2" after the second update, then "my-entry/3", etc. At creation time, the "link-rel-edit" IRI could also already be "my-entry/1" and therefore be different from the Location URI. However, this kind of "optimistic concurrency" mechanism is really implementation dependant and the spec should deal with it nor even suggest or imply it: this is not part of the protocol. Another minor issue I asked about before is the use of 'edit' in the Why? URIs are "opaque", I can use the ones I want. However, maybe "editing" would be better than "edit"… Finally (sorry to use up attention credits!), why is there link-rel-edit Because a "media link entry" has to link to the "media resource"… …oh, well, sorry, this is the rel="edit-media" link… …isn't the idea of using rel="edit" for both the entry (type="application/atom+xml") and the "media resource" (type="…something-else…") clearer? See http://www.intertwingly.net/wiki/pie/PaceUnifiedEntryEditing, not perfect, but better (I believe) than the current draft… …however, the WG seems to disagree… Indeed, Collection->Member/Entry should perhaps be link-rel-member?! This would be a rel="self" link, isn't it? …but where would the notion of "editability" come from, then? Creating such a protocol is not easy… it claims (or actually many people claim it is) to be RESTful while it takes many shortcuts that break its "RESTfulness"… The more I think about it, the more I tend to believe that WebDAV is actually what people need (or actually a "profile", maybe without COPY, MOVE of MKCOL and with some additions like the ADDMEMBER method, some "standard" properties in PROPFIND and PROPPATCH –such as atom:id, atom:title, atom:updated, etc.–) -- Thomas Broyer |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Re: Security Considerations: 00166, Robert Sayre |
|---|---|
| Next by Date: | Re: PaceOrderCollectionsByAppModified2: 00166, Eric Scheid |
| Previous by Thread: | Re: collectionsi: 00166, Duncan Cragg |
| Next by Thread: | Re: collections: 00166, Sylvain Hellegouarch |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |