Re: How do you go about versioning ?

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:31:37 UTC