- From: Andrea Splendiani <andrea.splendiani@iscb.org>
- Date: Fri, 19 Sep 2014 17:38:31 +0200
- To: public-semweb-lifesci@w3.org
- Message-ID: <CA+m8e_KmSjEbTEgj540YdRTgDXXD0xm6hacnTANq6rGUK3dHMQ@mail.gmail.com>
Hi, I'm posting here a question I have posted in some other forums. How do you go about versioning ? I tend to think at the URI as pointing to the endurant, and this leaves to the "version" the meaning of "what was known/true about an entity at a given time". The latter is conveniently packed in a graph, whose URIs can be conveniently linked to the endurant URI. So http://example/ <http://purl.uniprot.org/uniprot/>P04637 is the protein URI that returns what is currently known about this protein. http:// <http://purl.uniprot.org/uniprot/>example <http://purl.uniprot.org/uniprot/>/ <http://purl.uniprot.org/uniprot/>P04637/V2 is the URI of a version (a set of statements) that return what is known for http:// <http://purl.uniprot.org/uniprot/>example <http://purl.uniprot.org/uniprot/>/ <http://purl.uniprot.org/uniprot/>P04637 at a given time. Note that http://example/ <http://purl.uniprot.org/uniprot/>P04637/V2 doesn't appear in results (except in predicates linking different versions, like "replaces") Basically I never have an assertion as: http:// <http://purl.uniprot.org/uniprot/>example <http://purl.uniprot.org/uniprot/>/ <http://purl.uniprot.org/uniprot/>P04637 hasVersion 2, but version is only used to filter which pack of information is relevant. So if I mix results from different versions (e.g. quads) I can filter what is relevant and where to me. Is this a common way of doing things ? If not, have you thought about it and if you took alternatives, why ? best, Andrea
Received on Friday, 19 September 2014 15:39:05 UTC