Phenomics / ontolib

A modern Java library for working with (biological) ontologies.
https://ontolib.readthedocs.org
Other
9 stars 2 forks source link

Add parser/transformer for obographs json #7

Open cmungall opened 7 years ago

cmungall commented 7 years ago

OBO Format is legacy, this is the replacement: https://github.com/geneontology/obographs/

For context: https://douroucouli.wordpress.com/2016/10/04/a-developer-friendly-json-exchange-format-for-ontologies/

It should be much easier to support this than the existing obo parser here: https://github.com/Phenomics/ontolib/tree/master/ontolib-io/src/main/antlr4/de/charite/compbio/ontolib/io/obo/parser

No antlr grammar required, it's just json

Note: once you have implemented this you automatically have OWL support too, if you add the obographs jar

holtgrewe commented 7 years ago

Looks interesting, although the focus of Ontolib ist narrower. Our main use case is in supporting ontology similarity searches.

I had no success finding the big ontologies on obofoundry in this format, so far. Could you point me there?

cmungall commented 7 years ago

On 27 Jul 2017, at 14:32, Manuel Holtgrewe wrote:

Looks interesting, although the focus of Ontolib ist narrower. Our main use case is in supporting ontology similarity searches.

I see. The benefit for you is less as you have already implemented an obo parser, but one of the goals is to prevent people having to do this (you actually did this in a robust fashion with a grammar, but most people use regexes that break).

I had no success finding the big ontologies on obofoundry in this format, so far. Could you point me there?

It's not yet well advertised until we gather sufficient feedback from experience bioinformaticians and ontology users such as yourself, as we don't want to publicize and then make breaking changes. You can try for some ontologies by following the http://purl.obolibrary.org/obo/foo/foo.json pattern, e.g. http://purl.obolibrary.org/obo/go/go.json - in some cases this works: http://purl.obolibrary.org/obo/go.json.

holtgrewe commented 7 years ago

Hm, ist there any documentation on allowed values in the strings?

The OBO format defines how dbxref etc. are structured and what allowed values are. This appears to be missing from the Json schemas.