From: Hilmar L. <hl...@dr...> - 2017-05-31 15:17:11
|
Hi all, I’m wondering whether the OBO community has developed commonly followed conventions for versioning releases of ontologies. It seems that in the past one of the practices followed was to use the release date (such as in the format ‘YYYY-MM-DD’) as the release version, and consequently as a prefix in owl:versionIRI. I haven’t broadly surveyed the OBO ontologies yet to see whether that’s still broadly used or not. The OBO Foundry principle on the subject (http://www.obofoundry.org/principles/fp-004-versioning.html <http://www.obofoundry.org/principles/fp-004-versioning.html>) is unfortunately rather unhelpful (it seems to say “anything goes as long as you can state it”). Whether or not the date-based YYYY-MM-DD is still the most commonly used convention, it strikes me as a poor choice (because – not without irony – it is bare of any semantics), and hence I’d like to move the ontologies I’m involved with (which have been using this convention) to a better one. In the software (including scientific software) realm, semantic versioning (http://semver.org <http://semver.org/>) is being increasingly widely adopted, and as a result will likely be already familiar in some way or another to many people involved with ontology engineering. I’m wondering whether arguments for or against adopting semantic versioning have been discussed for OBO ontologies in the past. Obviously, OWL gives us the language to expressly assert compatibility semantics between different versions of an ontology, so one might ask why use or bother with a convention for release versions that leaves those semantics implicit and thus much more ambiguous and up to individual interpretation. For me, my response to that is that it’s not an either/or – version naming and expressly asserting compatibility semantics can, and IMHO should be complementary. The name of a version is primarily for communication between humans, not machines, and the precision in human communication matters too. At present, ontology versions used in publications, to the extent that I’m aware, are _at best_ cited by date. Not all dated release versions of all ontologies are archived for perpetuity (in fact most are not), and therefore after only a few years the ontology or ontologies used in such papers become not only essentially irreproducible, but also no notion can be recovered at all about the extent an archived version would or not be compatible with one used in the paper. This is dramatically different from software used in papers (setting aside the issue that authors frequently forget to include the version of a software tool they used). I’m curious about thoughts about this in the community, and am wondering what the OBO Foundry’s position is on developing a much stronger principle on release versioning. -hilmar -- Hilmar Lapp -:- lappland.io |