OBOFoundry.github.io icon indicating copy to clipboard operation
OBOFoundry.github.io copied to clipboard

Consider adopting SRS guidelines on text definitions for OBO

Open cmungall opened this issue 6 years ago • 4 comments

See this paper by Selja Seppälä, @alanruttenberg and @phismith https://philpapers.org/archive/SEPGFW.pdf

I think this is a really good and clear set of guidelines for writing definitions. I have some minor quibbles about wording of a few but on the whole I am in agreement and in my experience adoptions of these guidelines would improve ontologies in very concrete and pragmatic ways.

AFAIAW there has not been discussion about integrating these into the OBO definitions principle. In the past, ontology reviews have been quite variable when it comes to interpreting the existing principle language.

I propose that minimally we add a clause stating that ontology developers SHOULD follow the SRS guidelines. Note I am using ISO language here, and this is weaker than a MUST, and therefore would not be binding and could not be used to disqualify an ontology.

We could also explore having compliance be even more binding, at least for a subset of these guidelines.

cmungall avatar Jul 04 '19 02:07 cmungall

Just finished reading the paper, and I really like it as well. I also have concerns about details, but this is a much better guideline than anything we are providing this far.

One issues with providing principles for textual definitions is that they are hard to review. What struck me when reading the paper is that it should be possible to turn many of these guidelines into computable rules. For example, It should be possible to detect if the definition can be broken down genus + differentia, and if the text identifying the genus matches the label of a parent class. I would be strongly supportive of adopting these one-by-one, trying to encode them as checks into ROBO , and asking ontology developers if 'warnings' produced by such rules are useful or not, and how refine them further.

bpeters42 avatar Jul 24 '19 11:07 bpeters42

This seems like a good path forward

(I might advocate for using Python for the NLP part, unless someone really wants to implement this in java or scala. It's not totally outside the scope of plans for dosdp-tools @balhoff... anyway we can discuss all that later).

cmungall avatar Jul 24 '19 11:07 cmungall

Is this still something desirable and actionable?

nlharris avatar Mar 17 '22 22:03 nlharris

Yes and yes. The oak validate-definitions command can be used here

cmungall avatar Nov 23 '22 14:11 cmungall