Ok, the first annotations are up (crudely). The choice of what to start with was fairly arbitrary, though these had the advantage of being very simple. The paper cited is just a survey of Tetragnatha species that turned up first in the alphabetized list of publications. I have about 150 more annotations sitting in a spreadsheet waiting for the infrastructure to settle down. Of course there is also a lot more to do with both the OWL generation (publications currently have nothing but their doi’s or internal ids) and the display (e.g., each of the labels correponds URI that could be linked, though OntoBee pages aren’t the most friendly).
The server is a bit slow, meaning I’m close to hitting the limits of the AWS micro-instance I’ve been serving from for the past 18 months. Probably time to start planning the upgrade (which also may involve switching from Ubuntu to Debian).
For now though, I’ll enjoy what’s there and add more goodies within the limits.
Like the first strands that lead to an web, here are the first links from annotation to application and API support. I hope you will find this web useful.
First (more or less) completely generated assertion capturing a spider behavior with behavior, taxon, anatomy terms and link to a publication identified by DOI.
It’s been a long slog the past few weeks. I’ve been pulling IRI’s for taxon, anatomy, substrates (entities that aren’t part_of an actor) that are associated with participants in a behavior, as well as IRIs for behavior and publication for assertions. Yesterday, I finally had all (at least most) of the pieces together – I was now ready to start matching term IRIs against the support ontologies and copying OWL ‘entities’ from the support ontologies into the target ontology that will become the OWL file that’s loaded onto the server.
The first step was to merge all the support ontologies and run a classifier over them – primary to determine the class hierarchy. The merging went smoothly and didn’t take too long, but trying the OWLAPI’s structural reasoner on the 7436381 assertions that resulted from merging the 8 support ontologies seemed a bit too much for it. After 45 minutes on a 4-core i7, I decided it was time to try something else.
ELK has been attracting some interest in the biological ontologies community in the past couple of years as a very fast way to do reasoning for ontologies that can stay within the limits of the OWL-EL language profile. As it turns out, the current version of ELK currently implements only a subset, but that subset is more than sufficient my very limited immediate needs.
The first task for the reasoner was simply to extract the superclass closure (all the classes above) Arachnida in the NCBI taxonomy hierarch, followed by all subclasses of the same taxon. Those, along with Arachnida itself (which is a taxonomic class as well as a OWL class) are copied into the target ontology, along with the axioms specifying their super/sub class relations and their labels (= Linnean names).
It all works – owlbuilder is generating an owl file that loads in Protege (after making sure the DOI cleanup was getting called in the right place), and contains a couple of other classes pertaining to an as yet incomplete representation of a posture in Tetragnatha straminea. Nothing special about this behavior or species (surprised the first species wasn’t a jumping spider?), just the first publication that came up in the literature search all those years ago was about a couple of Tetragnatha species. You’ll be hearing more about this behavior and a couple of other behaviors in this species and some congeners as I fill in the pieces and start pushing real data to the server.