296
edits
Changes
→Pharmacoracle - a REST API based on the OWLAPI
Queries to Pharmacoracle are written in the [https://www.w3.org/TR/owl2-manchester-syntax/ Manchester syntax] in the same way as for the [https://protegewiki.stanford.edu/wiki/DLQueryTab DL Query Tab] of [https://protege.stanford.edu/ Stanford's desktop Protégé]. An advantage of this approach is that the queries replaces the need of a separate rules engine (rules are to some extent built into the OWL semantics). A disadvantage is that the performance in a production environment may be suboptimal (slow).
The Pharmacoracle infrastructure is written in Python. But the [http://owlcs.github.io/owlapi/ OWLAPI] is mainly JAVA technology, and making the Pharmacoracle totally JAVA, might speed up things. A link between OWL and Python is provided by [http://www.lesfleursdunormal.fr/static/_downloads/article_owlready_aim_2017.pdf Jean Baptiste Lamy's Owlready2], which we use to translate PharmGKB's JSON-LD to OWL, but it seems that the OWLAPI should be run separately.
The Pharmacoracle is used in our PGx analysis script [[Pharmacolyzer]], but can also be used directly.