Integration of Neurolex xml descriptions into tree & searchable database: any recommended tools?

12 views
Skip to first unread message

Michel Audette

unread,
May 22, 2013, 5:50:53 PM5/22/13
to neur...@googlegroups.com, jbil...@odu.edu, Michel Audette
Dear members of the Neurolex community, 

my research group is investigating the application of the hierarchical Neurolex brain description to neurosurgery planning and simulation. Our short-term goal is to integrate the OWL/RTF XML files, which are downloadable for each anatomical structure, in order to build a hierarchical, component-wise (tree-like) representation of the neuroanatomy, and in particular the brain. We would also like to make this tree representation searchable. 

I would like to find out if the community endorses a specific set of software tools to integrate these various XML components, as well as database tools to make the final tree-like representation efficient in terms of storing and searching. Alternately, we plan to develop a C++ program built on an XML parser library; we have not given much thought to what tool we'll use for the database. 

Thanks for your kind consideration, 

Michel Audette, Ph.D.
Assistant Professor,
Department of Modeling, Simulation and Visualization Engineering,
Old Dominion University,
Norfolk, VA.
 

anita bandrowski

unread,
May 22, 2013, 6:20:14 PM5/22/13
to neur...@googlegroups.com, jbil...@odu.edu, Michel Audette
That is great, please let us know how to help you with the task.
From what you say, neurolex already does some of these.

There is already a hierarchy in place for the brain regions if you follow the part_of relationship. The is_a relationship also is complete, but not as informative.
There are a few places where this can be seen:
http://neurolex.org/wiki/Brain_Partonomy_%28general_mammalian%29
the accepted / curated version that is in NIFSTD, see
http://ontology.neuinfo.org/nifstd_visualizer.html

The data exists in a SPARQL endpoint here: http://neurolex.org/wiki/NeuroLex_SPARQL_endpoint




--
You received this message because you are subscribed to the Google Groups "neurolex" group.
To unsubscribe from this group and stop receiving emails from it, send an email to neurolex+u...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Anita Bandrowski, Ph.D.
NIF Project Lead
UCSD 858-822-3629
http://neuinfo.org
9500 Gillman Dr.#0446
la Jolla, CA 92093-0446

anita bandrowski

unread,
May 22, 2013, 8:29:30 PM5/22/13
to Audette, Michel A., neur...@googlegroups.com, BILLY, JOHN C.
Humm, I am not totally sure that you can just take the brain partonomy, perhaps Fahim or Stephen can comment.
The OWL file, which has the partonomy in it, can be downloaded and the anatomy part is a 'module' so it should be able to easily subset.
SPARQL will give you what you need from NeuroLex (it will generate large dumps of data), please run some sample queries and then let us know if you are stuck and we can try to help out.

Note, when you take the NeuroLex data, you are taking the most recent data, some of which has not been curated so it may be bad, when you take the NIFSTD version (owl files) they have been looked at, but may not be complete. So it seems a chose your poison situation.


On Wed, May 22, 2013 at 3:42 PM, Audette, Michel A. <maud...@odu.edu> wrote:
Dear Dr Bandrowski, 

thanks for your prompt and detailed reply. The partonomy is exactly what I had in mind, and the viewing software is extremely useful. Is this description complete, and is it possible for me to download it (do I get the whole tree if I choose to "view source"), as opposed to viewing this online? I'm also not familiar with SPARQL, so I'll have to follow up on this and report back with further questions. 

Thanks again for helping us navigate these tremendous resources. 

Warm wishes,

Michel

Michel Audette, Ph.D.
Assistant Professor,
Department of Modeling, Simulation and Visualization Engineering,
Old Dominion University,
Norfolk, VA.
 

From: ban...@gmail.com [ban...@gmail.com] on behalf of anita bandrowski [aband...@ucsd.edu]
Sent: Wednesday, May 22, 2013 6:20 PM
To: neur...@googlegroups.com
Cc: BILLY, JOHN C.; Audette, Michel A.
Subject: Re: Integration of Neurolex xml descriptions into tree & searchable database: any recommended tools?

Gupta, Amarnath

unread,
May 23, 2013, 3:27:40 AM5/23/13
to neur...@googlegroups.com, Audette, Michel A., BILLY, JOHN C.

Anita:

 

We should be able to query the data to get the brain partonomy to Dr. Audette from our DAG index, saving the trouble of fishing out the partonomy from the full OWL module.

 

Dr. Audette:

 

We will check this – there a possibility that the partonomic structure you get back is not a tree but a directed acyclic graph, that can still be serialized as XML. Let me get back to you in a couple of days.

 

Thanks,

 

Amarnath

 

 

From: neur...@googlegroups.com [mailto:neur...@googlegroups.com] On Behalf Of anita bandrowski
Sent: Wednesday, May 22, 2013 5:29 PM
To: Audette, Michel A.
Cc: neur...@googlegroups.com; BILLY, JOHN C.
Subject: Re: Integration of Neurolex xml descriptions into tree & searchable database: any recommended tools?

 

Humm, I am not totally sure that you can just take the brain partonomy, perhaps Fahim or Stephen can comment.

The OWL file, which has the partonomy in it, can be downloaded and the anatomy part is a 'module' so it should be able to easily subset.

Michel Audette

unread,
May 29, 2013, 5:20:12 PM5/29/13
to neur...@googlegroups.com, gu...@sdsc.edu, Audette, Michel A., BILLY, JOHN C.
Hi Amarnath, 

just wondering if you made progress with the challenge of fishing out the partonomy of the brain. Please get back to me when you get a chance. 

Thanks for your kind consideration. 

Cheers, 

Michel

Michel Audette, Ph.D.
Assistant Professor,
Department of Modeling, Simulation and Visualization Engineering,
Old Dominion University,
Norfolk, VA.
--

Gupta, Amarnath

unread,
May 30, 2013, 2:56:46 PM5/30/13
to Michel Audette, neur...@googlegroups.com, Audette, Michel A., BILLY, JOHN C.

Hi Michel:

 

I have given the task to our programmer and we should have it for you sometime next week.

 

Thanks,

 

Amarnath

 

 

Amarnath Gupta, Ph.D.

Director, Advanced Query Processing Lab

San Diego Supercomputer Center, MC 0505

University of California San Diego

La Jolla, CA 92093

 

Phone:(858)822-0994

 

 

 

From: Michel Audette [mailto:japanmont...@gmail.com]
Sent: Wednesday, May 29, 2013 2:20 PM
To: neur...@googlegroups.com; Gupta, Amarnath
Cc: Audette, Michel A.; BILLY, JOHN C.
Subject: Re: Integration of Neurolex xml descriptions into tree & searchable database: any recommended tools?

 

Hi Amarnath, 

Stephen Larson

unread,
Jul 25, 2013, 1:23:35 PM7/25/13
to John Billy, Stephen Larson, neur...@googlegroups.com
Can you post the full text of the new query you are using?

On Thursday, July 25, 2013, John Billy wrote:
Thanks for you reply.  I performed the query as you suggested and I am still getting the same unexpected results; similar to when using the Label as a property to search for.  I get exactly the same results using Id as a search. 
 
What do you think needs to be done to get the results for Cerebellum?
 
The expected results are as in the previous email:
Label         - Cerebellum
ID              - birnlex_1489
Definition   - Part of the rhombencephalon that lies in the posterior cranial fossa behind the brain stem, consisting of the cerebellar cortex, deep cerebellar nuclei and cerebellar white matter. A portion of the brain that helps regulate posture, balance, and coordination. (NIDA Media Guide Glossary)
 
 
John Billy

 



On Wed, Jul 24, 2013 at 2:49 PM, Stephen Larson <sla...@ncmir.ucsd.edu> wrote:
Hi John,

   Yes that's right.  The reason you get that is because you are not calling for the unique id of Cerebellum: birnlex_1489 -- you are calling for the name of it.  The name is ambiguous and can be used in many contexts.  The Id will point you to the main concept for cerebellum everytime.  Instead of 

?x property:Label "Cerebellum"^^xsd:string.

use

?x property:Id "birnlex_1489"^^xsd:string.

and you should have better results.

Thanks,
  Stephen


On Fri, Jul 19, 2013 at 10:29 AM, John Billy <jbil...@odu.edu> wrote:
To          : Stephen Larson                             
From      : Research Assistant of Michel Audette: John Billy                            
Date       : July 19, 2013                            
Subject   : Question about results of a SPARQL Query.
 
 
Dear Stephen Larson:
 
 
I performed a working SPARQL query and the results were not as expected.
 
 Working SPARQL Search

prefix xsd:< http://www.w3.org/2001/XMLSchema#>

prefix property: <http://neurolex.org/wiki/Property-3A>

 

select Distinct ?name ?id ?def where

{?x property:Label "Cerebellum"^^xsd:string.

?cells property:Located_in ?x.

?cells property:Label ?name.

?cells property:Id ?id.

?cells property:Definition ?def

Stephen Larson

unread,
Jul 24, 2013, 2:49:33 PM7/24/13
to John Billy, neur...@googlegroups.com
Hi John,

   Yes that's right.  The reason you get that is because you are not calling for the unique id of Cerebellum: birnlex_1489 -- you are calling for the name of it.  The name is ambiguous and can be used in many contexts.  The Id will point you to the main concept for cerebellum everytime.  Instead of 

?x property:Label "Cerebellum"^^xsd:string.

use

?x property:Id "birnlex_1489"^^xsd:string.

and you should have better results.

Thanks,
  Stephen
On Fri, Jul 19, 2013 at 10:29 AM, John Billy <jbil...@odu.edu> wrote:
To          : Stephen Larson                             
From      : Research Assistant of Michel Audette: John Billy                            
Date       : July 19, 2013                            
Subject   : Question about results of a SPARQL Query.
 
 
Dear Stephen Larson:
 
 
I performed a working SPARQL query and the results were not as expected.
 
 Working SPARQL Search

prefix xsd:< http://www.w3.org/2001/XMLSchema#>

prefix property: <http://neurolex.org/wiki/Property-3A>

 

select Distinct ?name ?id ?def where

{?x property:Label "Cerebellum"^^xsd:string.

?cells property:Located_in ?x.

?cells property:Label ?name.

?cells property:Id ?id.

?cells property:Definition ?def

}   

 
I am hoping to have the SPARQL query return:
 
Label         - Cerebellum
ID              - birnlex_1489
Definition   - Part of the rhombencephalon that lies in the posterior cranial fossa behind the brain stem, consisting of the cerebellar cortex, deep cerebellar nuclei and cerebellar white matter. A portion of the brain that helps regulate posture, balance, and coordination. (NIDA Media Guide Glossary)
 
But the query returned results for words other than Cerebellum alone, yet included the word cerebellum in them.  I got Label, Id, and defintions of 4 terms that included the word Cerebellum, but not Cerebellum.
 
Can you inform me how to get results for Cerebellum?
 
 
Thank you for your help.
                            


Sincerely,


John Billy

===========================
John Billy - Old Dominion University student
Email      - jbil...@odu.edu
===========================



On Mon, Jul 15, 2013 at 1:41 AM, Stephen Larson <sla...@ncmir.ucsd.edu> wrote:
Just to add to that, the following page may be helpful for SPARQL queries on NeuroLex:


Best,
  Stephen


On Thu, Jul 11, 2013 at 7:55 PM, Michel Audette <japanmont...@gmail.com> wrote:
Dear Nolan, 

thanks for your kind and detailed reply. John and I will mine the contents of your email extensively, and we will report back. 

Warm wishes, 

Michel


On Thu, Jul 11, 2013 at 1:47 PM, Nolan Nichols <nolan....@gmail.com> wrote:
Hi Michel,

I'll try to address your question about the FMA, and have also cc'ed Onard Mejino, who I work with at the UW and is the primary author of the FMA.

3.      Same questions would apply  for extracting data from the FMA and FME websites, if any of you can suggest how to proceed. 

For Question 1:

The FMA has more than one format and is developed using Protege Frames not OWL or RDF. You can load the Frames version into a database and access it from Protege, but it sounds like you want to go with Semantic Web.

There is a version of the FMA in OWL-Full, which is essentially an RDF file. However, this RDF file is too large to query directly with SPARQL, and thus must be uploaded to a Triplestore and queried through a SPARQL endpoint. If you want the file, it is available at: http://sig.biostr.washington.edu/projects/fma/release/v3.2.1/alt_formats.html

WRT populating the FME web interface, I believe this is based off of the Frames version of the FMA and the Protege API.

For Question 2

If you want to extract knowledge from the FMA through SPARQL queries, the recommended approach is to use an application we provide called the Query Integrator (QI). This tool allows users to author, execute, and save queries over any web accessible resource using a number of query languages. It is specially configured to access the FMA in a Triplestore via SPARQL. You can access it at: http://purl.org/sig/qi

The nice thing about the QI is that there are already a bunch of FMA queries, including ones for Neuro, and you can browse these to get an idea of how to formulate queries. Here are a few examples:

SELECT View of FreeSurfer Brain Atlas Labels

FMA brain regional parts

Let me know if you have any questions.

Cheers,

Nolan



NOTE: This message was trained as non-spam. If this is wrong, please correct the training as soon as possible.

Stephen Larson

unread,
Jul 30, 2013, 8:40:13 PM7/30/13
to John Billy, neur...@googlegroups.com
OK here's why this query doesn't do what you expect.  I've inlined the rationale below:


On Tue, Jul 30, 2013 at 11:56 AM, John Billy <jbil...@odu.edu> wrote:
Working SPARQL Search

prefix xsd:< http://www.w3.org/2001/XMLSchema#>

prefix property: <http://neurolex.org/wiki/Property-3A>

 

select Distinct ?name ?id ?def where

{?x property:Id "birnlex_1489"^^xsd:string.


>>  Into ?x goes the node that has the id "birnlex_1489".  This is the node you are looking for, the one that has information about the cerebellum.
 

?cells property:Located_in ?x.


>> BUT -- instead of getting something from ?x, we go to ask for ?cells -- any nodes that are connected by the "property:Located_in" to ?x
>> In other words, the cells that are within the cerebellum.
 

?cells property:Label ?name.

?cells property:Id ?id.

?cells property:Definition ?def


>>> We go on to extract, name, id and definition from all of the ?cells, NOT the ?x node that has the information about cerebellum.
 

}   

 
I am hoping to have the SPARQL query return:
 
Label         - Cerebellum
ID              - birnlex_1489
Definition   - Part of the rhombencephalon that lies in the posterior cranial fossa behind the brain stem, consisting of the cerebellar cortex, deep cerebellar nuclei and cerebellar white matter. A portion of the brain that helps regulate posture, balance, and coordination. (NIDA Media Guide Glossary)

Instead, you need to get name, id, and definition from the ?x node.  That query looks like this:

 
select Distinct ?name ?id ?def where
{?x property:Id "birnlex_1489"^^xsd:string.
?x property:Label ?name.
?x property:Id ?id.
?x property:Definition ?def
}   

Try that and see if you have better results.

Thanks,
  Stephen
 
 
 
John Billy


Stephen Larson

unread,
Aug 2, 2013, 5:34:37 PM8/2/13
to John Billy, neur...@googlegroups.com
You can retrieve the list of available properties from the SPARQL endpoint itself.  I've added a section on the documentation page that shows this query (at the bottom)


Thanks,
  Stephen


On Thu, Aug 1, 2013 at 8:45 AM, John Billy <jbil...@odu.edu> wrote:
Thank you.  Makes sense.
 
Will you tell me the syntax or property(Label, Id, Definition, etc.) that can be used in the SPARQL query?
 
I am asking for a guide to follow on what syntax is used to query for certain data in the data file.
 
Is there a guide that says what properties(Label, Id, Definition, etc.) can be used to query for their respective information?
 
You already let me know I was searching for the cells in the cerebellum.  What other terms could be placed in stead of cells? 
 
I am looking for a guide of syntax that Neurolex uses to perform SPARQL queries.  Do you know of a website link that informs the reader on how to perform SPARQL queries for Neurolex' data?
 
 
Thank you for your help,
 
 
John Billy
Reply all
Reply to author
Forward
0 new messages