PO Web Services / APIs

Plant Ontology terms and synonyms are available for use in mobile and desktop applications via RESTful web services. These services, fully accessible to software developers, are encoded in JSON format, a widely-used standard for providing data over the internet (learn more about RESTful web services and the JSON specification).

There are two services available at this time:

    Term (and Synonym) Search


    The term search web service provides term name and synonym search results, given a partial term name or
    synonym. For example, a search for "basal" will return multiple terms and/or synonyms with "basal" in
    the name.

How to invoke

Make an HTTP GET request to this URI:

http://iplant.plantontology.org/services/PO_web_service.php?request_type=term_search

Required querystring parameters:

  • search_value (string): the string or substring to search for in term names (and optionally in synonyms)

Optional parameters:

  • inc_synonyms: include term synonyms as eligible search candidates
  • inc_accession_synonyms: include accession ID's listed as synonyms
  • group_branches: group alphabetically sorted results by branch
  • exact_match: only return the exact match, if one exists
  • prioritize_exact_match: place any exact match at the top of the results
  • branch_filter (string): limits search results to either the "plant_anatomy" or
    "plant_growth_and_development_stage" branches of the PO; if not specified, both
    branches are allowed
  • max (integer): maximum number of search results returned; default is 10, ceiling is 50

Example:

http://iplant.plantontology.org/services/PO_web_service.php?request_type=term_search&search_value=leaf&inc_synonyms&branch_filter=plant_anatomy&max=20&prioritize_exact_match

Term Detail


The term detail web service provides multiple pieces of term data, given a PO accession ID. For example, a search
for "PO:0000252" will return the name, aspect, definition, comment, and any synonyms for that PO term.

How to invoke

Make an HTTP GET request to this URI:

http://iplant.plantontology.org/services/PO_web_service.php?request_type=term_detail

Required querystring parameters:

  • accession_id (string):
  • term key provided in the 'PO:000xxxx' format

Optional parameters:

  • inc_accession_synonyms: return synonyms whose name is also an accession ID
  • branch_filter (string): limits retrievable details to either the "plant_anatomy" or
    "plant_growth_and_development_stage" branches of the PO; if not specified, term details for terms in
    either branch will be returned

Example:

http://iplant.plantontology.org/services/PO_web_service.php?request_type=term_detail&accession_id=PO:0000252



A word about JSON parsers...     

Although these services are intended for use by software and not humans, if you would like to view the JSON output of these services directly in your browser, you will probably need to install a JSON-parsing plug-in:

Examples

Searching for terms in web and desktop applications



The term search method may be called from web and desktop applications to provide the user with a means of selecting appropriate
PO terminology...and to provide the application with the proper Accession IDs.

Displaying term details



The term detail method provides additional data for display or computation. The specific graphical layout is up to the developer.