- From: Nandana Mihindukulasooriya <nmihindu@fi.upm.es>
- Date: Tue, 5 Feb 2013 19:28:00 +0100
- To: Henry Story <henry.story@bblfish.net>
- Cc: Steve Battle <steve.battle@sysemia.co.uk>, "Linked Data Platform (LDP) Working Group" <public-ldp-wg@w3.org>
- Message-ID: <CAAOEr1m-uBGxqhv5a6m9yTie3b9GSTFEge+RVqisf_o7T-p=zg@mail.gmail.com>
Hi, On Mon, Feb 4, 2013 at 11:58 AM, Henry Story <henry.story@bblfish.net>wrote: > > Also while we are at it, is there a good efficient algorithm for > calculating this? > I think this is quite implementation specific (eg. generating over content vs incremented version number on updates) depending the application. Depending on many variables like the number of resources, the size of the graphs, etc. the most optimal algorithm differs. However, I think what we should agree and may be also put in the spec, what is the meaning of a weak etag in the context of LDP* . As RDF spec has already defined graph equivalency [1], we could say that when a server responses with the same weak etag it must ensure the graph equivalency. Servers will also have take care of the content negotiation when generating the etags so that they can be used in cache validation. HTTPbiz provides a very good section on generation of etags. "*The principle behind entity-tags is that only the service author knows the implementation of a resource well enough to select the most accurate and efficient validation mechanism for that resource, and that any such mechanism can be mapped to a simple sequence of octets for easy comparison. Since the value is opaque, there is no need for the client to be aware of how each entity-tag is constructed.* * * *For example, a resource that has implementation-specific versioning applied to all changes might use an internal revision number, perhaps combined with a variance identifier for content negotiation, to accurately differentiate between representations. Other implementations might use a collision-resistant hash of representation content, a combination of various filesystem attributes, or a modification timestamp that has sub-second resolution.*" [2] Best regards, Nandana [1] - http://www.w3.org/TR/rdf-concepts/#section-graph-equality [2] - https://tools.ietf.org/html/draft-ietf-httpbis-p4-conditional-21#section-2.2.1
Received on Tuesday, 5 February 2013 18:28:46 UTC