For the last few ontology files (.OBO) we have loaded, only a smaller percentage of the terms are actually entered into the Chado cvterm table. For instance, of the attached CHEBI table (which has been pared down to 1,500 terms) only about 100 terms make it into the table. We see this as well with plant ontology, where only 15 terms made it in out of 1,000+ (obofoundry).
Was able to load ontologies correctly.
Hi @taytayp , any insights into what the problem was for those who encounter this error in the future?
Sure! The trick is that Tripal actually loads terms into multiple different cv's. What I thought was just gene_ontology was actually spread into three our four adjacent tables with slightly different names. Accounting for these and combing those tables results in the right number of terms.
Also worth noting that if you load an ontology that has relationships dependent on other ontologies that _haven't_ been loaded, those will be skipped without any error. In this example, loading Woody crop ontology without have UO, unit ontology, loaded will result in about 550 terms instead of the correct 730 terms.
Oh no, I'm sorry. If I had understood that was your issue I might have been able to steer you better. I have some guides written that might help the "multiple cv/db" thing make sense.
Also worth noting that if you load an ontology that has relationships dependent on other ontologies that haven't been loaded, those will be skipped without any error. In this example, loading Woody crop ontology without have UO, unit ontology, loaded will result in about 550 terms instead of the correct 730 terms.
I find htis interesting because in my experience, relationships that dont exist result in errors in the OBO loader. Particularly all the dependencies in the plant trait ontology #120 .
Anyway, glad you got it sorted.
A good resource! I didn't realize y'all had these.
It may have been that errors were thrown, now that I think about them, but I may not have noticed them. I'm chalking this issue up to 95% user error (that user being me).
We are currently looking into addressing the problem when terms from other vocabularies are used. I think the default behavior is to error out when a term cannot be added because it is from a different vocab.