- From: Joachim Baran <joachim.baran@gmail.com>
- Date: Fri, 19 Sep 2014 09:40:22 -0700
- To: Andrea Splendiani <andrea.splendiani@iscb.org>
- Cc: HCLS <public-semweb-lifesci@w3.org>
- Message-ID: <CAObSwHV1tQPu1yoP3ey6HRWJd11KRojC81kXQ=wpFhKh+FPJBQ@mail.gmail.com>
Hi! I think it would still work -- if you consider versions more complex than just a single number. For example, the major/minor/patch versioning number approach would permit you to have your concept under major version number 1. Then all subsequent minor/patch updates still give you the latest concept when asked for major version 1 only. That is a lot how versioning in software package systems works. With that approach, you never ever have to go beyond major version 1 and you get exactly the behavior as you desire. Having said that, if the concept does change radically, you just transition to major version number 2 and get a whole new world of knowledge to populate. Does that make sense? Best wishes, Kim On 19 September 2014 09:31, Andrea Splendiani <andrea.splendiani@iscb.org> wrote: > Hi, I don't think that would work in general. > One of the issues that I have is that, in general, I don't want to change > all references because a release changes. > So if I link to CONCEPT1, that's the id. If CONCEPT1 gets new properties > in time, it is still CONCEPT1 and I don't want to break the link. > But basically, I use versioned URIs only for retrieval (they are named > graphs ids) they "never" appear in the data (in case they do in metadata, > but that's an additional layer). > > ciao, > Andrea > > On Fri, Sep 19, 2014 at 6:14 PM, Joachim Baran <joachim.baran@gmail.com> > wrote: > >> Hi! >> >> I would reorder the URI as "http://eample/V2/P1234". That way you make >> it more explicit that you are talking about data set releases, each of >> which is defined by its own URI prefix. That way you can have two P1234 >> residing side-by-side even though they might be completely different. >> >> Should the version always be part of an URI? I would say yes -- despite >> seeing your argumentation about the temporal interpretation of URIs that >> you gave. >> >> Kim >> >> On 19 September 2014 08:38, Andrea Splendiani <andrea.splendiani@iscb.org >> > wrote: >> >>> 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 16:40:49 UTC