Introduction

In Bioconductor 3.19, ontoProc can work with OWL RDF/XML serializations of ontologies, via the owlready2 python modules.

The owl2cache function retrieves OWL from a URL or file and places it in a cache to avoid repetitious retrievals. The default cache is the one defined by BiocFileCache::BiocFileCache(). Here we work with the cell ontology. setup_entities2 will use basilisk to acquire owlready2 python modules that parse the OWL and produce an ontology_index instance (defined in CRAN package ontologyIndex).

library(ontoProc)
clont_path = owl2cache(url="http://purl.obolibrary.org/obo/cl.owl")
cle = setup_entities2(clont_path)
cle

The usual plotting approach works.

sel = c("CL_0000492", "CL_0001054", "CL_0000236", 
"CL_0000625", "CL_0000576", 
"CL_0000623", "CL_0000451", "CL_0000556")
onto_plot2(cle, sel)

Illustration with Human Phenotype ontology

We'll obtain and ad hoc selection of 15 UBERON term names and visualize the hierarchy.

hpont_path = owl2cache(url="http://purl.obolibrary.org/obo/hp.owl")
hpents = setup_entities2(hpont_path)
kp = grep("UBER", names(hpents$name), value=TRUE)[21:30]
onto_plot2(hpents, kp)

The prefixes of class names in the ontology give a sense of its scope.

t(t(table(sapply(strsplit(names(hpents$name), "_"), "[", 1))))

To characterize human phenotypes ontologically, CL, GO, CHEBI, and UBERON play significant roles.



vjcitn/ontoProc documentation built on Jan. 9, 2025, 3:21 p.m.