Re: Versioning system for ontologies

Glad we're likely on the same page.  Not to belabour the point, but a
version control system without things like diff, means that the development
group will necessarily have to (re)develop basic change management
functionality (i.e. diff), in a (pejoratively) ad hoc manner.

Especially if they care about quality :D.

On Fri, Apr 19, 2013 at 1:24 PM, Alan Ruttenberg
<alanruttenberg@gmail.com>wrote:

>
>
>
> On Fri, Apr 19, 2013 at 1:17 PM, Ali SH <asaegyn+out@gmail.com> wrote:
>
>> Dear Alan,
>>
>> On Fri, Apr 19, 2013 at 1:08 PM, Alan Ruttenberg <
>> alanruttenberg@gmail.com> wrote:
>>
>>> What you say is certainly of interest. But I would call that change
>>> tracking and provenance maintenance rather than version control.
>>>
>>
>> I suspect then we may differ in that I interpret version control as a
>> component part of change tracking and provenance. I'm interested in
>> ensuring that the ontologies I (my group) have developed satisfy a set of
>> test cases and audit suites (e.g. competency questions, time
>> limits) through each version.
>>
>> I suppose for other use cases, vanilla version control may suffice, but i
>> would personally be curious about the quality of said ontologies.
>>
>
> I've very much for paying attention to ontology quality, and in my own
> practice have processes in place such as those you suggest. Let's say I'm
> pleasantly surprised the topic comes up, as it doesn't often enough ;-)
>
>
>>
>>
>>> As I said, whatever solution you take, don't forget about publishing
>>> your ontology according to the spec. There is a tendency, when using such
>>> systems, to forget about the basics and therefore reduce the network
>>> effects that accrue from using what we have sweated to specify, in favor of
>>> using ad-hoc, albeit proximally useful, systems.
>>>
>>
>> Absolutely! Though of course, one can interpret the above as
>> complementary additions, as opposed to ad hoc or proximally useful :P. It
>> depends on the intended ontology usage and requirements.
>>
>
> Both those terms are descriptive, not pejorative. I don't think we
> disagree.
>
>
>>
>> Best,
>> Ali
>>
>>
>>> -Alan
>>>
>>>
>>>
>>> On Fri, Apr 19, 2013 at 1:05 PM, Ali SH <asaegyn+out@gmail.com> wrote:
>>>
>>>> Hi Alan,
>>>>
>>>> What you suggest certainly provides a way of handling versioning, but
>>>> in many environments, the additional repository features seem to be
>>>> requirements. You almost always want to know who made a change, what the
>>>> change was, alongside other provenance information - and of course, make
>>>> this information machine readable (as opposed to a text note) seems
>>>> desirable for this community :P.
>>>>
>>>> As I'm sure you're aware, when considering the quality and evaluation
>>>> of ontologies, identifying the state of an ontology throughout its
>>>> lifecycle also becomes quite important. Rafael S. Goncalves, Maria Copeland
>>>> and their colleagues provide an interesting set of analyses on how
>>>> ontologies differ through multiple versions [1] [2] [3].
>>>>
>>>> Of tangential (but closely related) interest to versioning, people
>>>> might want to take a look at this year's Ontology Summit 2013 which focuses
>>>> on "Ontology Evaluation Across the Ontology Lifecycle" [4]. Of particular
>>>> interest may be the talk on the lifecycle stages (and from that one can
>>>> extrapolate requirements for versioning that would faciliatae higher
>>>> quality ontologies) - particularly Hanz Polzer and Mary Balboni's
>>>> contributions [5].
>>>>
>>>> PS - Thanks for the response, will follow up offlist :D!
>>>> [1]
>>>> http://owl.cs.manchester.ac.uk/research/topics/ncit/regression-%20analysis/
>>>> [2] http://ceur-ws.org/Vol-745/paper_40.pdf
>>>> [3]
>>>> http://ontolog.cim3.net/file/work/OntologySummit2013/2013-03-07_OntologySummit2013_OntologyEvaluation-IntrinsicAspects-2/OntologySummit2013_ontology-regression-testing--MariaCopeland_20130307.pdf
>>>> [4] http://ontolog.cim3.net/OntologySummit/2013/
>>>> [5] http://ontolog.cim3.net/cgi-bin/wiki.pl?ConferenceCall_2013_01_24
>>>>
>>>>
>>>> On Fri, Apr 19, 2013 at 12:49 PM, Alan Ruttenberg <
>>>> alanruttenberg@gmail.com> wrote:
>>>>
>>>>> Don't forget about OWL's versionIRI, which gives a way to express that
>>>>> different versions are of a single ontology. The most basic version control
>>>>> is to periodically save a file, put it at a location, and make the
>>>>> versionIRI point to it. Keep the ontologyIRI the same thoughtout. Use
>>>>> import with the version you care load. At the ontologyIRI put either the
>>>>> most recent version or the most recent version you release.
>>>>>
>>>>> There is no need for additional repository infrastructure, though that
>>>>> may add useful features. Whatever you do, make sure that at a minimum you
>>>>> version using vanilla specifications, given that they can support that.
>>>>>
>>>>> I generally recommend you do not change IRIs of terms as you change
>>>>> versions. Rather,  try to ensure that the referents of your URIs refer to
>>>>> the same intended entities, and obsolete them if they no longer refer well.
>>>>>
>>>>> Happy to discuss this offlist if you are interested in my experiences.
>>>>>
>>>>> Best,
>>>>> Alan
>>>>>
>>>>> On Friday, April 19, 2013, Ali SH wrote:
>>>>>
>>>>>> I'm also very interested in hearing answers to this.
>>>>>>
>>>>>> As Stephen mentions, treating an ontology analogously to source code
>>>>>> (which is close enough) means that you can use services such as github (or
>>>>>> google code). The downside is that an ontology lifecycle management is
>>>>>> *not* equivalent to source code management. Barring a native
>>>>>> solution for ontologies, they do come quite close.
>>>>>>
>>>>>> You might also be interested in following the development of the Open
>>>>>> Ontology Repository [1]
>>>>>> (a fork of the BioPortal platform), which among other things will be
>>>>>> addressing this issue as well.
>>>>>>
>>>>>> [1] http://ontolog.cim3.net/cgi-bin/wiki.pl?OpenOntologyRepository
>>>>>>
>>>>>> On Fri, Apr 19, 2013 at 11:57 AM, Stephen D. Williams <sdw@lig.net>wrote:
>>>>>>
>>>>>>>  Do you want to version it like source code?  Everyone has, is, or
>>>>>>> will move to Git for that.
>>>>>>> Or maintain the history of changes for reasoning and/or historical
>>>>>>> queries?  This is probably more needed for actual statements, but could
>>>>>>> make sense here too: "Answer this query based on the ontology at time X."
>>>>>>>
>>>>>>> Stephen
>>>>>>>
>>>>>>>
>>>>>>> On 4/19/13 7:05 AM, Prateek wrote:
>>>>>>>
>>>>>>>  Hello all,
>>>>>>>
>>>>>>>  I am trying to identify a system which will provide versioning and
>>>>>>> revision control capabilities specifically for ontologies. Does anyone have
>>>>>>> any experience and idea about which systems can help out or if systems like
>>>>>>> SVN, CVS can do the job?
>>>>>>>
>>>>>>>  Regards
>>>>>>>
>>>>>>>  Prateek
>>>>>>>
>>>>>>>  --
>>>>>>>
>>>>>>> - - - - - - - - - - - - - - - - - - -
>>>>>>> Prateek Jain, Ph. D.
>>>>>>> RSM
>>>>>>> IBM T.J. Watson Research Center
>>>>>>> 1101 Kitchawan Road, 37-244
>>>>>>> Yorktown Heights, NY 10598
>>>>>>> Linkedin: http://www.linkedin.com/in/prateekj
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Stephen D. Williams sdw@lig.net stephendwilliams@gmail.com LinkedIn: http://sdw.st/in
>>>>>>> V:650-450-UNIX (8649) V:866.SDW.UNIX V:703.371.9362 F:703.995.0407AIM:sdw Skype:StephenDWilliams Yahoo:sdwlignet Resume: http://sdw.st/gres
>>>>>>> Personal: http://sdw.st facebook.com/sdwlig twitter.com/scienteer
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>>
>>>>>> (•`'·.¸(`'·.¸(•)¸.·'´)¸.·'´•) .,.,
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>>
>>>> (•`'·.¸(`'·.¸(•)¸.·'´)¸.·'´•) .,.,
>>>>
>>>
>>>
>>
>>
>> --
>>
>>
>> (•`'·.¸(`'·.¸(•)¸.·'´)¸.·'´•) .,.,
>>
>
>


-- 


(•`'·.¸(`'·.¸(•)¸.·'´)¸.·'´•) .,.,

Received on Friday, 19 April 2013 17:33:43 UTC