Search Mailing List Archives
[bioontology-support] Using BioPortal to access portions (not whole subtrees) of ontologies... spanning from concept to concept by relations other than is-a
ray.fergerson at stanford.edu
Mon Jun 27 16:30:38 PDT 2011
If I understand correctly, I think that you should be able to do what (I
think) you want given the call below. However there may be more here than
meets the eye and it may require a higher bandwidth conversation to figure
this out. Trish Whetzel (copied) is the best person to talk to about this.
She has a great grasp of the various api's and is also experienced in
working with people to point them to solutions for their needs. I suggest
following up with her directly with specific questions.
From: bioontology-support-bounces at lists.stanford.edu
[mailto:bioontology-support-bounces at lists.stanford.edu] On Behalf Of
Andrew J. Buckler (BBMSC)
Sent: Thursday, June 16, 2011 5:31 PM
To: support at bioontology.org
Cc: Nigam Shah; Tiffany Ting Liu; David Paik
Subject: [bioontology-support] Using BioPortal to access portions (not
whole subtrees) of ontologies... spanning from concept to concept by
relations other than is-a
I am working with collaborators at Stanford (as per copy) on a project
using Ruby on Rails. We hope to interface to BioPortal for access to FMA,
GO, Snomed, and Radlex. We call these "linked ontologies" in the sense
that they are accessed via a "master" ontology called the Quantitative
Imaging Biomarker Ontology where most of the value is in the relations,
though the is-a hierarchy is also important. The use case we are working
to implement in Rails, expressed as pseudo-code, is as follows:
1. We start a term from the Quantitative Imaging Biomarker Ontology,
which is stored in BioPortal.
2. Perform a query to determine its relations, or stated
differently, the relations having this term in their Domain.
3. For each such Relation:
a. Perform a query to determine what terms are in the Range of the
b. Prompt the user to select from among the terms (by providing them a
c. If the selected term has children in the is-a hierarchy, we allow
the user either to stop at the term or traverse down the is-a hierarchy at
d. If the term is identified as being searchable in another ontology
(i.e., instead of being fleshed out in QIBO), provide the pick list from
that ontology (including the ability to select from among the children as
i. Store a "triple" with
the term of step 1, the relation at step 3, and the selected term of this
step (regardless of how deep in the is-a hierarchy they went to select
e. Else, for the selected term in the QIBO we recurse starting again at
step 1 above (which has the effect of navigating the ontology using the
relations identified in it to enumerate a sequence of terms for disparate
concepts but through the links, and for each term allowing as deep or
shallow into the respective is-a hierarchies as desired by the user).
Thus, we don't desire a full hierarchy when we make the query, rather we
just need the "short list" of relations for which this term is in the
domain (at step 2); the set of terms in the domain for this relation (at
step 3a); and the set of terms (only) one-level deeper in the is-a
hierarchy (at step 3c).
We wish to pull this data dynamically from the ontology at run-time.
This algorithm would build a dynamic display - and a database to match it
- according to the structure identified by following the relations.
Do you still think we can do this using the link below? It seems hard to
PS: If background helps, you can see an earlier, less specific question I
had asked Dr, Shah and his answer. At first this seemed like it would do
it, and in fact it may. However, in working together with my colleague
Tiffany, we're less sure than we were at first. Tiffany said that she
thinks this may be a way to extract information from an ontology in a
"static dump" sense. This wouldn't really be what we're aiming at: in
essence, we're looking for ontology relations "one layer at a time" so as
to traverse them and build a dynamic representation as per the use case.
From: Nigam Shah [mailto:nigam at stanford.edu]
Sent: Wednesday, June 01, 2011 6:00 PM
To: Andrew J. Buckler (BBMSC)
Cc: Tiffany Ting Liu; David Paik
Subject: Re: BioPortal REST services
However, the question arises as to how to get the relationships between
concepts, not just the concepts themselves. That is, the real value lies
in the knowledge representation in the QIBO where it relates the clinical
context in which measurements are made with the assay methods utilized to
make the measurements. As such, we need more than the terms (which I
understand to be the concepts); we need the relations also. Do the
methods described through Tiffany's link provide means to extract those?
Or do we need to augment this with something else.
All relationship other than is_a will show up as properties. So once you
get the terms, you can make a call to get all of its "links" .. parents,
children, and others.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the bioontology-support