Difference between revisions of "BioPortal REST services"

From NCBO Wiki
Jump to navigation Jump to search
 
(390 intermediate revisions by 17 users not shown)
Line 1: Line 1:
This page documents the signatures for NCBO (and, more specifically, BioPortal) REST services. This list may not be exhaustive.
+
NCBO BioPortal v4.0 REST services are documented at: http://data.bioontology.org/documentation
 
 
'''Note''': ''Signatures for BioPortal services have changed in BioPortal 2.0.4 release on January 13th, 2009. This page has the new service URLs. If you have any questions, please contact [mailto:bioontology-support@lists.stanford.edu BioPortal Support].''
 
 
 
The '''prefix''' for all service URLs in the table below is http://rest.bioontology.org/bioportal/
 
 
 
= Services to access ontologies and ontology versions =
 
 
 
== List all the latest version of ontologies ==
 
 
 
* '''Signature''': ./ontologies
 
* '''Example''': http://rest.bioontology.org/bioportal/ontologies
 
 
 
==  Get a specific ontology based on a version id ==
 
* '''Signature''':  ./ontologies/{ontology version id}
 
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002
 
 
 
==  Download an ontology file ==
 
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version ID.
 
* '''Signature''':  ./ontologies/download/{ontology version id}
 
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002
 
 
 
==  Get all versions of an ontology form a virtual ontology id ==
 
* '''Signature''': ./ontologies/versions/{ontology id}
 
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104
 
 
 
==  Get latest version of an ontology id ==
 
* '''Signature''':  ./virtual/{ontology_id}
 
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104
 
 
 
==  List all ontology categories id ==
 
* '''Signature''':  ./categories
 
* '''Example''': http://rest.bioontology.org/bioportal/categories
 
 
 
= Concept services =
 
 
 
==  Get concept id ==
 
* '''Signature''': ./concepts/{ontology version id}/{concept id}
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource
 
 
 
==  Get all root concepts for an ontology id ==
 
* '''Signature''': ./concepts/{ontology version id}/root
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root
 
 
 
==  Get concept for latest ontology version id ==
 
* '''Signature''': ./virtual/{ontology id}/{concept id}
 
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource
 
 
 
= Search services =
 
 
 
==  Search BioPortal ==
 
* '''Signature''': ./search/{query}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene
 
* You can use multiple query terms, separated by a space, for example: [http://rest.bioontology.org/bioportal/search/lung%20disease http://rest.bioontology.org/bioportal/search/lung disease]
 
* '''Optional arguments:'''
 
** ontologyids=<ontologyid>,<ontologyid>… - limits the search to specific ontologies (default: all ontologies)
 
** isexactmatch=[1/0] – match the entire concept name (default: 0)
 
** includeproperties=[1/0] – include attributes in the search (default: 0)
 
** pagesize=<pagesize> - the number of results to display in a single request (default: all)
 
** pagenum=<pagenum> - the page number to display (pages are calculated using <total results>/<pagesize>) (default: 1)
 
** '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&isexactmatch=1
 
 
 
=  Hierarchy Services =
 
 
 
Those services accepts 3 kinds of ontologyId:
 
* BioPortal ontology version id
 
* BioPortal ontology virtual id. In that case the latest version of the ontology is used (If the latest version of the ontology is not in our index for hierarchy services, returns an error).
 
* UMLS Abbreviated source name (SAB). In that case the conceptId must be a UMLS Unique identifier for concept (CUI) defined in that SAB.
 
 
 
==  Get parents|children of a given concept ==
 
* '''Signature''': ./concepts/[parents|children]/{ontlogyId}/{conceptId}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma
 
* '''Optional arguments:'''
 
** level=<integer> - limits results to a given level in the hierarchy
 
** offset=<integer> – results offset (used for pagination)
 
** limit=<integer> – limits the number of results
 
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?level=1&offset=1&limit=10
 
* '''Description''': return all parents (resp. children) of the concept, with the level indicating how far away the parent (child) is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the services return all the parents (resp. children) up to the ontology roots (resp. down to the ontology leaves). If the level is specified, the service returns only the parents (resp. children) at that level.
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/virtual/parents/MSH/C0025202
 
</accessedResource>
 
<accessDate>2009-04-21 10:55:33.494 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0206769</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>1</int>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0206754</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>1</int>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
 
 
==  Get paths to root from a concept in a specific ontology version ==
 
* '''Signature''': ./concepts/rootpath/{ontologyVersionId}/{conceptId}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
** limit=<integer> – limits the number of results
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/concepts/rootpath/13578/Melanoma
 
</accessedResource>
 
<accessDate>2009-04-21 11:06:23.439 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Melanoma</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Melanoma</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
==  Get paths to root from a concept in the latest version of a given ontology  ==
 
* '''Signature''': ./virtual/rootpath/{ontologyId}/{conceptId}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1032/Melanoma
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
** limit=<integer> – limits the number of results
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/virtual/rootpath/MSH/C0025202
 
</accessedResource>
 
<accessDate>2009-04-21 11:08:05.811 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0025202</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
C1256739.C1256741.C0012674.C0027651.C0027652.C0206769
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0025202</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
C1256739.C1256741.C0012674.C0027651.C0027652.C0027658.C0206093.C0206754
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
==  Get paths to leaves from a concept in a specific ontology version ==
 
* '''Signature''': ./concepts/leafpath/{ontologyVersionId}/{conceptId}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
** limit=<integer> – limits the number of results
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/concepts/leafpath/13578/Melanoma
 
</accessedResource>
 
<accessDate>2009-04-21 11:10:04.386 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Melanoma</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
Regressing_Non-Cutaneous_Melanoma.Regressing_Melanoma
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Melanoma</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>
 
Regressing_Melanoma_of_the_Skin.Regressing_Melanoma
 
</string>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
==  Get paths to leaves from a concept in the latest version of a given ontology  ==
 
* '''Signature''': ./virtual/leafpath/{ontologyId}/{conceptId}[?{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1032/Melanoma
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
** limit=<integer> – limits the number of results
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/virtual/leafpath/MSH/C0025202
 
</accessedResource>
 
<accessDate>2009-04-21 11:11:56.348 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0025202</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>C0025205</string>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0025202</id>
 
<relations>
 
<entry>
 
<string>Path</string>
 
<string>C0206735</string>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
==  Get siblings of a given concept in a specific ontology version ==
 
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=<level>[&{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1
 
* '''Required arguments:'''
 
** level=<integer> - limits results to a given level in the hierarchy
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/concepts/siblings/13578/Melanoma
 
</accessedResource>
 
<accessDate>2009-04-21 11:15:13.427 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Common_Germ_Cell_Neoplasm</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>1</int>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>13578</ontologyVersionId>
 
<id>Common_Hematopoietic_Neoplasm</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>1</int>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 
 
 
==  Get siblings of a given concept in the latest version of a given ontology ==
 
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=<level>[&{optional args}]
 
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1032/Melanoma?level=1
 
* '''Required arguments:'''
 
** level=<integer> - limits results to a given level in the hierarchy
 
* '''Optional arguments:'''
 
** offset=<integer> – results offset (used for pagination)
 
* '''Sample Output:'''
 
<pre>
 
<?xml version="1.0" encoding="UTF-8" ?>
 
<success>
 
<accessedResource>
 
/bioportal/virtual/siblings/MSH/C0206093
 
</accessedResource>
 
<accessDate>2009-04-21 11:30:12.183 PDT</accessDate>
 
<data>
 
<list>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0206720</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>2</int>
 
</entry>
 
</relations>
 
</classBean>
 
<classBean>
 
<ontologyVersionId>MSH</ontologyVersionId>
 
<id>C0206727</id>
 
<relations>
 
<entry>
 
<string>Level</string>
 
<int>2</int>
 
</entry>
 
</relations>
 
</classBean>
 
</list>
 
</data>
 
</success>
 
</pre>
 

Latest revision as of 22:00, 16 July 2016

NCBO BioPortal v4.0 REST services are documented at: http://data.bioontology.org/documentation