<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.bioontology.org//mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Noy</id>
	<title>NCBO Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.bioontology.org//mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Noy"/>
	<link rel="alternate" type="text/html" href="https://www.bioontology.org//wiki/Special:Contributions/Noy"/>
	<updated>2026-06-05T13:04:35Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.9</generator>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_Mappings&amp;diff=10172</id>
		<title>BioPortal Mappings</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_Mappings&amp;diff=10172"/>
		<updated>2010-09-09T19:32:36Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Survey of BioPortal Mappings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page defines common mappings types in the [http://bioportal.bioontology.org NCBO BioPortal] and provides examples of different mappings that already exist in BioPortal. We welcome comments on this set of mapping relations. Please send email to [mailto:support@bioontology.org support@bioontology.org].&lt;br /&gt;
&lt;br /&gt;
= BioPortal Mapping Types =&lt;br /&gt;
&lt;br /&gt;
There are mappings of the following types in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''identical, the same''' : [http://www.w3.org/2002/07/owl#sameAs owl:sameAs]&lt;br /&gt;
** '''Definition''' (from [http://www.w3.org/TR/owl-ref/#sameAs-def OWL]): &amp;lt;tt&amp;gt;owl:sameAs&amp;lt;/tt&amp;gt; is used to state that two URI references refer to the same individual&lt;br /&gt;
* '''exact match''': [http://www.w3.org/2008/05/skos#exactMatch  skos:exactMatch]&lt;br /&gt;
** '''Definition''' (from [http://www.w3.org/TR/skos-reference/#mapping SKOS]): The property &amp;lt;tt&amp;gt;skos:exactMatch&amp;lt;/tt&amp;gt; is used to link two concepts, indicating a high degree of confidence that the concepts can be used interchangeably across a wide range of information retrieval applications. &amp;lt;tt&amp;gt;skos:exactMatch&amp;lt;/tt&amp;gt; is a transitive property, and is a sub-property of &amp;lt;tt&amp;gt;skos:closeMatch&amp;lt;/tt&amp;gt;. &lt;br /&gt;
* '''close match''': [http://www.w3.org/2008/05/skos#closeMatch  skos:closeMatch]&lt;br /&gt;
** '''Definition''' (from [http://www.w3.org/TR/skos-reference/#mapping SKOS]): The property &amp;lt;tt&amp;gt;skos:closeMatch&amp;lt;/tt&amp;gt; is used to link two concepts that are sufficiently similar that they can be used interchangeably in some information retrieval applications. In order to avoid the possibility of &amp;quot;compound errors&amp;quot; when combining mappings across more than two concept schemes, &amp;lt;tt&amp;gt;skos:closeMatch&amp;lt;/tt&amp;gt; is not declared to be a transitive property.&lt;br /&gt;
* '''related''' (but not necessarily similar): [http://www.w3.org/2000/01/rdf-schema#seeAlso  rdfs:seeAlso]&lt;br /&gt;
** '''Definition''' (from [http://www.w3.org/TR/2000/CR-rdf-schema-20000327/#s2.3.4 RDFS]): The property &amp;lt;tt&amp;gt;rdfs:seeAlso&amp;lt;/tt&amp;gt; specifies a resource that might provide additional information about the subject resource. &lt;br /&gt;
* '''homologous to''' (for anatomical terms): ''not defined yet''&lt;br /&gt;
** '''Definition''': The property links two anatomical terms from different species that refer to terms that have a common ancestor (evolutionary derived form a common ancestor).&lt;br /&gt;
&lt;br /&gt;
= Survey of BioPortal Mappings =&lt;br /&gt;
The table below presents the statistics and examples of BioPortal mappings as of July 2010.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''relationship'''&lt;br /&gt;
| width=&amp;quot;125&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''basis'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''Manual/Automatic'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''Source'''&lt;br /&gt;
| align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''Total mappings'''&lt;br /&gt;
|  width=&amp;quot;1025&amp;quot; align=&amp;quot;center&amp;quot; style=&amp;quot;background:#f0f0f0;&amp;quot;|'''Notes'''&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||identical UMLS CUIs||Manual||LEXEVS_UMLS_MAPPER||2,028,186||Mappings between terms in UMLS ontologies that were created automatically, linking terms with the same CUI. Because CUIs were assigned manually by UMLS editors, we treat these mapings as manual mappings&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;LEXEVS_UMLS_MAPPER&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||lexical similarity||Automatic||LOOM||1,449,303||Mappings were generated by the LOOM algorithm automatically based on close lexical match between preferred names of terms or a preferred name and a synonym&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;&amp;lt;a href=\&amp;quot;http://www.bioontology.org/wiki/index.php/LOOM\&amp;quot;&amp;gt;LOOM&amp;lt;/a&amp;gt;&amp;quot; and relationship_type = &amp;quot;lexical similarity&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||lexical similarity||Automatic||||2,562||Mappings were generated automatically based on the exact match of preferred names or synonyms for terms in FMA, ZFA, and mouse anatomy. Note: These mappings are likely homology mappings&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;exact match or synonym match&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||lexical similarity||Manual||||628||Mappings were generated manually by a user and uploaded to  BioPortal. The mappings were generated automatically based on lexical similarity but later manually reviewed by a domain expert. All mappings involve terms in the MGED ontology&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where (destination_ont=1131 or source_ont=1131) and map_type=&amp;quot;Manual&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| owl:sameAs||shared id||Manual||||271,000||Mappings between the terms that share the same ID&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;&amp;lt;a href=\&amp;quot;http://www.bioontology.org/wiki/index.php/LOOM\&amp;quot;&amp;gt;LOOM&amp;lt;/a&amp;gt;&amp;quot; and relationship_type = &amp;quot;direct reference&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rdfs:seeAlso||OBO xref||Manual||||17,776||Mappings based on OBO xref mappings, which indicate related terms&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;OBO xref&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:exactMatch||Dbxref||Manual||||7,028||Mappings based on the use of Dbxref to indicate term reuse in OBO Foundry ontologies. Very close to having identical ids, but because the ids are different, we use exact match rather than owl:sameAs&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;DbXref&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:exactMatch||||Manual||||68||Mappings generated manually by a user; all involve terms from NEMO&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;Upload&amp;quot;;  &amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||identical UMLS CUIs||Manual||||902||Mappings between non-UMLS ontologies where concepts do have cui. So, technically, similar to inter-cui mappings&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;&amp;lt;a href=\&amp;quot;http://umlsks.nlm.nih.gov/\&amp;quot; target=\&amp;quot;_blank\&amp;quot;&amp;gt;UMLS&amp;lt;/a&amp;gt;&amp;quot;;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||||Manual||BioPortal UI||117||Mappings created by users through the BioPortal user interface&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;BioPortal UI&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||||Manual||NCICB||3078||Manual mappings between Mouse anatomy and NCIT &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;NCICB&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||lexical similarity||Automatic||EFO||673||Mappings generated automatically based on lexical similarity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;&amp;lt;a href=\&amp;quot;http://www.ebi.ac.uk/efo\&amp;quot;&amp;gt;EFO&amp;lt;/a&amp;gt;&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| skos:closeMatch||||Manual||NLM||2,662||Manual mappings between Mouse anatomy and NCIT&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;select * from mappings where map_source = &amp;quot;NLM&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=10111</id>
		<title>Ontology Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=10111"/>
		<updated>2010-08-11T21:46:12Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Types of notes in BioPortal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Notes in BioPortal (Beta Service) = &lt;br /&gt;
&lt;br /&gt;
BioPortal uses ontology notes to describe a variety of user-specified comments and metadata on ontology, including new-term proposals, proposals for changes, comments and questions about classes, and so on. &lt;br /&gt;
&lt;br /&gt;
== Types of notes in BioPortal ==&lt;br /&gt;
The following are the types of notes in BioPortal. Please, email us at [mailto:support@bioontology.org support@bioontology.org] if you have suggestions for other note types (or specific parameters for the notes).&lt;br /&gt;
&lt;br /&gt;
* Basic comments (as they are in BioPortal currently)&lt;br /&gt;
* Proposals &lt;br /&gt;
** New term proposal&lt;br /&gt;
*** PrefName&lt;br /&gt;
*** Synonym&lt;br /&gt;
*** Definition&lt;br /&gt;
*** Superclass&lt;br /&gt;
*** Comment&lt;br /&gt;
** New relationship proposal&lt;br /&gt;
*** Relationship type: is-a, part-of&lt;br /&gt;
*** Relationship target&lt;br /&gt;
** New attribute value proposal&lt;br /&gt;
*** Attribute: documentation, definition, etc.&lt;br /&gt;
*** New value&lt;br /&gt;
*** Flag: replaces the current value (which one, in case of multiple values) or in addition to the current value(s)&lt;br /&gt;
*** (future implementation) Special kind of new attribute value proposal: Assigning UMLS semantic type &lt;br /&gt;
**** Semantic type&lt;br /&gt;
**** Semantic typeID&lt;br /&gt;
&lt;br /&gt;
* (future implementation) Structured annotations with user-defined structure&lt;br /&gt;
* (future implementation) Usage-guideline notes&lt;br /&gt;
&lt;br /&gt;
== Services to access and generate notes ==&lt;br /&gt;
('''Note''': We are currently working on these services. They are not available yet! If you have specific requirements that the list of services below does not satisfy, please contact us at [mailto:support@bioontology.org support@bioontology.org])&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:'''&lt;br /&gt;
** conceptid={conceptid} - returns notes associated with the given term.&lt;br /&gt;
** instanceid={instanceid} - returns notes associated with the given instance (individual).&lt;br /&gt;
** noteid={noteid} - returns notes associated with the given note id.&lt;br /&gt;
** threaded=[true|false] - returns notes in a threaded format where responses are nested in their parent notes. Default is false.&lt;br /&gt;
** Planned (not yet implemented):&lt;br /&gt;
*** notetype={notetype} - returns only the notes of the specific type.&lt;br /&gt;
*** includearchived=[true|false] - include archived notes. Default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by virtual id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology virtual id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:'''&lt;br /&gt;
** conceptid={conceptid} - returns notes associated with the given term.&lt;br /&gt;
** instanceid={isntanceid} - returns notes associated with the given instance (individual).&lt;br /&gt;
** noteid={noteid} - returns notes associated with the given note id.&lt;br /&gt;
** threaded=[true|false] - returns notes in a threaded format where responses are nested in their parent notes. Default is false.&lt;br /&gt;
** Planned (not yet implemented):&lt;br /&gt;
*** notetype={notetype} - returns only the notes of the specific type.&lt;br /&gt;
*** includearchived=[true|false] - include archived notes. Default is false.&lt;br /&gt;
&lt;br /&gt;
=== Sample of the XML returned for a note ===&lt;br /&gt;
&lt;br /&gt;
==== Possible Values ====&lt;br /&gt;
Some elements have a range of possible returned values.&lt;br /&gt;
* appliesTo/type: Ontology|Class|Individual|Property|Note&lt;br /&gt;
* noteBean/type: Comment|ProposalForNewEntity|ProposalForChangeHierarchy|ProposalForPropertyValueChange&lt;br /&gt;
** Notes with types other than Comment will have an element in noteBean/values that matches the noteBean/type. This contains information specific to these Notes types.&lt;br /&gt;
&lt;br /&gt;
==== A single 'Comment' note ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/virtual/notes/1104&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2010-04-26 13:02:57.418 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;list&amp;gt;&lt;br /&gt;
      &amp;lt;noteBean&amp;gt;&lt;br /&gt;
        &amp;lt;id&amp;gt;Note_0a78922c-3d1e-4689-8af8-48d10d4cdaa8&amp;lt;/id&amp;gt;&lt;br /&gt;
        &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;Comment&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;author&amp;gt;38143&amp;lt;/author&amp;gt;&lt;br /&gt;
        &amp;lt;created&amp;gt;1272070868364&amp;lt;/created&amp;gt;&lt;br /&gt;
        &amp;lt;updated&amp;gt;1272070868250&amp;lt;/updated&amp;gt;&lt;br /&gt;
        &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&amp;lt;/body&amp;gt;&lt;br /&gt;
        &amp;lt;createdInOntologyVersion&amp;gt;2&amp;lt;/createdInOntologyVersion&amp;gt;&lt;br /&gt;
        &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
          &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
            &amp;lt;fullId&amp;gt;http://bioontology.org/ontologies/BiomedicalResourceOntology.owl#Clinical_Data&amp;lt;/fullId&amp;gt;&lt;br /&gt;
            &amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
          &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
        &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
      &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
    &amp;lt;/list&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== A single 'New Term Proposal' note ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/virtual/notes/1104/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2010-04-26 18:13:24.407 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;list&amp;gt;&lt;br /&gt;
      &amp;lt;noteBean&amp;gt;&lt;br /&gt;
        &amp;lt;id&amp;gt;Note_f8bb4dc0-10b3-48b9-ab69-79aed042c0ff&amp;lt;/id&amp;gt;&lt;br /&gt;
        &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;ProposalForNewEntity&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;author&amp;gt;1234&amp;lt;/author&amp;gt;&lt;br /&gt;
        &amp;lt;created&amp;gt;1272319359680&amp;lt;/created&amp;gt;&lt;br /&gt;
        &amp;lt;updated&amp;gt;1272319377224&amp;lt;/updated&amp;gt;&lt;br /&gt;
        &amp;lt;subject&amp;gt;Test Proposal Reply&amp;lt;/subject&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;Testing new term submission&amp;lt;/body&amp;gt;&lt;br /&gt;
        &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
          &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
            &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
            &amp;lt;type&amp;gt;Ontology&amp;lt;/type&amp;gt;&lt;br /&gt;
          &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
        &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
        &amp;lt;values&amp;gt;&lt;br /&gt;
          &amp;lt;ProposalForNewEntity&amp;gt;&lt;br /&gt;
            &amp;lt;reasonForChange&amp;gt;Bad data&amp;lt;/reasonForChange&amp;gt;&lt;br /&gt;
            &amp;lt;contactInfo&amp;gt;palexander@stanford.edu&amp;lt;/contactInfo&amp;gt;&lt;br /&gt;
            &amp;lt;id&amp;gt;TERM_1100&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;preferredName&amp;gt;New Term&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
            &amp;lt;definition&amp;gt;Test new definition&amp;lt;/definition&amp;gt;&lt;br /&gt;
            &amp;lt;synonyms&amp;gt;&lt;br /&gt;
              &amp;lt;string&amp;gt;best term&amp;lt;/string&amp;gt;&lt;br /&gt;
              &amp;lt;string&amp;gt;amazing term&amp;lt;/string&amp;gt;&lt;br /&gt;
              &amp;lt;string&amp;gt;great term&amp;lt;/string&amp;gt;&lt;br /&gt;
            &amp;lt;/synonyms&amp;gt;&lt;br /&gt;
            &amp;lt;parent&amp;gt;&lt;br /&gt;
              &amp;lt;string&amp;gt;http://www.owl-ontologies.com/2009/9/24/Ontology1253802770.owl#Summary&amp;lt;/string&amp;gt;&lt;br /&gt;
            &amp;lt;/parent&amp;gt;&lt;br /&gt;
          &amp;lt;/ProposalForNewEntity&amp;gt;&lt;br /&gt;
        &amp;lt;/values&amp;gt;&lt;br /&gt;
      &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
    &amp;lt;/list&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== A single 'Change Relationship/Hierarchy Proposal' note ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/virtual/notes/1104&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2010-04-26 18:21:52.474 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;noteBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;Note_b4e749c8-5ca7-414f-a123-acd16ba656fe&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
      &amp;lt;type&amp;gt;ProposalForChangeHierarchy&amp;lt;/type&amp;gt;&lt;br /&gt;
      &amp;lt;author&amp;gt;1234&amp;lt;/author&amp;gt;&lt;br /&gt;
      &amp;lt;created&amp;gt;1272331290991&amp;lt;/created&amp;gt;&lt;br /&gt;
      &amp;lt;updated&amp;gt;1272331295114&amp;lt;/updated&amp;gt;&lt;br /&gt;
      &amp;lt;subject&amp;gt;Change Relationship&amp;lt;/subject&amp;gt;&lt;br /&gt;
      &amp;lt;body&amp;gt;Testing change hierarchy&amp;lt;/body&amp;gt;&lt;br /&gt;
      &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
        &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
          &amp;lt;fullId&amp;gt;http://bioontology.org/ontologies/BiomedicalResourceOntology.owl#Clinical_Data&amp;lt;/fullId&amp;gt;&lt;br /&gt;
          &amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
      &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
      &amp;lt;values&amp;gt;&lt;br /&gt;
        &amp;lt;ProposalForChangeHierarchy&amp;gt;&lt;br /&gt;
          &amp;lt;reasonForChange&amp;gt;Incorrect data&amp;lt;/reasonForChange&amp;gt;&lt;br /&gt;
          &amp;lt;contactInfo&amp;gt;palexander@stanford.edu/contactInfo&amp;gt;&lt;br /&gt;
          &amp;lt;relationshipTarget&amp;gt;&lt;br /&gt;
            &amp;lt;string&amp;gt;http://bioontology.org/ontologies/BiomedicalResourceOntology.owl#Software&amp;lt;/string&amp;gt;&lt;br /&gt;
          &amp;lt;/relationshipTarget&amp;gt;&lt;br /&gt;
          &amp;lt;oldRelationshipTarget&amp;gt;&lt;br /&gt;
            &amp;lt;string&amp;gt;isa&amp;lt;/string&amp;gt;&lt;br /&gt;
          &amp;lt;/oldRelationshipTarget&amp;gt;&lt;br /&gt;
        &amp;lt;/ProposalForChangeHierarchy&amp;gt;&lt;br /&gt;
      &amp;lt;/values&amp;gt;&lt;br /&gt;
    &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== A single 'Property Value Change Proposal' note ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/virtual/notes/1104&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2010-04-26 18:25:30.465 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;noteBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;Note_8cfde654-2c2c-42e3-8187-0f6c05c6deff&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
      &amp;lt;type&amp;gt;ProposalForPropertyValueChange&amp;lt;/type&amp;gt;&lt;br /&gt;
      &amp;lt;author&amp;gt;1234&amp;lt;/author&amp;gt;&lt;br /&gt;
      &amp;lt;created&amp;gt;1272331520036&amp;lt;/created&amp;gt;&lt;br /&gt;
      &amp;lt;updated&amp;gt;1272331522822&amp;lt;/updated&amp;gt;&lt;br /&gt;
      &amp;lt;subject&amp;gt;Tet Property Value Change&amp;lt;/subject&amp;gt;&lt;br /&gt;
      &amp;lt;body&amp;gt;Testing a proposal to change a property value&amp;lt;/body&amp;gt;&lt;br /&gt;
      &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
        &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
          &amp;lt;fullId&amp;gt;http://bioontology.org/ontologies/BiomedicalResourceOntology.owl#Clinical_Data&amp;lt;/fullId&amp;gt;&lt;br /&gt;
          &amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
      &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
      &amp;lt;values&amp;gt;&lt;br /&gt;
        &amp;lt;ProposalForPropertyValueChange&amp;gt;&lt;br /&gt;
          &amp;lt;reasonForChange&amp;gt;The value was entered incorrectly initially&amp;lt;/reasonForChange&amp;gt;&lt;br /&gt;
          &amp;lt;contactInfo&amp;gt;palexander@stanford.edu&amp;lt;/contactInfo&amp;gt;&lt;br /&gt;
          &amp;lt;newValue&amp;gt;200&amp;lt;/newValue&amp;gt;&lt;br /&gt;
          &amp;lt;oldValue&amp;gt;100&amp;lt;/oldValue&amp;gt;&lt;br /&gt;
          &amp;lt;propertyId&amp;gt;Cell_Count&amp;lt;/propertyId&amp;gt;&lt;br /&gt;
        &amp;lt;/ProposalForPropertyValueChange&amp;gt;&lt;br /&gt;
      &amp;lt;/values&amp;gt;&lt;br /&gt;
    &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== A nested thread of 'Comment' notes ====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/virtual/notes/1104&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2010-04-26 13:21:28.104 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;list&amp;gt;&lt;br /&gt;
      &amp;lt;noteBean&amp;gt;&lt;br /&gt;
        &amp;lt;id&amp;gt;Note_0a78922c-3d1e-4689-8af8-48d10d4cdaa8&amp;lt;/id&amp;gt;&lt;br /&gt;
        &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
        &amp;lt;type&amp;gt;Comment&amp;lt;/type&amp;gt;&lt;br /&gt;
        &amp;lt;author&amp;gt;38143&amp;lt;/author&amp;gt;&lt;br /&gt;
        &amp;lt;created&amp;gt;1272070868364&amp;lt;/created&amp;gt;&lt;br /&gt;
        &amp;lt;updated&amp;gt;1272070868250&amp;lt;/updated&amp;gt;&lt;br /&gt;
        &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&amp;lt;/body&amp;gt;&lt;br /&gt;
        &amp;lt;createdInOntologyVersion&amp;gt;2&amp;lt;/createdInOntologyVersion&amp;gt;&lt;br /&gt;
        &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
          &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
            &amp;lt;fullId&amp;gt;http://bioontology.org/ontologies/BiomedicalResourceOntology.owl#Clinical_Data&amp;lt;/fullId&amp;gt;&lt;br /&gt;
            &amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
          &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
        &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
        &amp;lt;associated&amp;gt;&lt;br /&gt;
          &amp;lt;noteBean&amp;gt;&lt;br /&gt;
            &amp;lt;id&amp;gt;Note_02e4b8cd-f582-411c-8561-035a0f7d1dd9&amp;lt;/id&amp;gt;&lt;br /&gt;
            &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
            &amp;lt;type&amp;gt;Comment&amp;lt;/type&amp;gt;&lt;br /&gt;
            &amp;lt;author&amp;gt;38144&amp;lt;/author&amp;gt;&lt;br /&gt;
            &amp;lt;created&amp;gt;1272070984380&amp;lt;/created&amp;gt;&lt;br /&gt;
            &amp;lt;updated&amp;gt;1272070984243&amp;lt;/updated&amp;gt;&lt;br /&gt;
            &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
            &amp;lt;body&amp;gt;Not sure I follow the argument here.&amp;amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&amp;lt;/body&amp;gt;&lt;br /&gt;
            &amp;lt;createdInOntologyVersion&amp;gt;2&amp;lt;/createdInOntologyVersion&amp;gt;&lt;br /&gt;
            &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
              &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
                &amp;lt;noteId&amp;gt;Note_0a78922c-3d1e-4689-8af8-48d10d4cdaa8&amp;lt;/noteId&amp;gt;&lt;br /&gt;
                &amp;lt;type&amp;gt;Note&amp;lt;/type&amp;gt;&lt;br /&gt;
              &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
            &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
            &amp;lt;associated&amp;gt;&lt;br /&gt;
              &amp;lt;noteBean&amp;gt;&lt;br /&gt;
                &amp;lt;id&amp;gt;Note_6bdc5fae-bd95-492c-ab47-0aaae7a2193a&amp;lt;/id&amp;gt;&lt;br /&gt;
                &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
                &amp;lt;type&amp;gt;Comment&amp;lt;/type&amp;gt;&lt;br /&gt;
                &amp;lt;author&amp;gt;38143&amp;lt;/author&amp;gt;&lt;br /&gt;
                &amp;lt;created&amp;gt;1272070985097&amp;lt;/created&amp;gt;&lt;br /&gt;
                &amp;lt;updated&amp;gt;1272070985195&amp;lt;/updated&amp;gt;&lt;br /&gt;
                &amp;lt;subject&amp;gt;RE:RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
                &amp;lt;body&amp;gt;I was only reacting to the definition of BRO:Clinical_Data in the current version: &amp;amp;quot;Any type of data obtained in the course of caring for humans outside of measurements obtained in clinical trials&amp;amp;quot;. I think I&amp;amp;apos;m agreeing with you that clinical trial data should be overlapping clinical data (whether its a superset I&amp;amp;apos;m not sure). So I&amp;amp;apos;m not clear why the definition that is in the current version is there. Somehow this might be related to the fact that BRO:Data_Object is subclassed partly by function (eg clinical data) and partly by data type (eg image). I would think images could also be a type of clinical data.&amp;lt;/body&amp;gt;&lt;br /&gt;
                &amp;lt;createdInOntologyVersion&amp;gt;2&amp;lt;/createdInOntologyVersion&amp;gt;&lt;br /&gt;
                &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
                  &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
                    &amp;lt;noteId&amp;gt;Note_02e4b8cd-f582-411c-8561-035a0f7d1dd9&amp;lt;/noteId&amp;gt;&lt;br /&gt;
                    &amp;lt;type&amp;gt;Note&amp;lt;/type&amp;gt;&lt;br /&gt;
                  &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
                &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
              &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
              &amp;lt;noteBean&amp;gt;&lt;br /&gt;
                &amp;lt;id&amp;gt;Note_1b490c3a-dd19-458a-9446-5184e42d03ab&amp;lt;/id&amp;gt;&lt;br /&gt;
                &amp;lt;ontologyId&amp;gt;1104&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
                &amp;lt;type&amp;gt;Comment&amp;lt;/type&amp;gt;&lt;br /&gt;
                &amp;lt;author&amp;gt;38145&amp;lt;/author&amp;gt;&lt;br /&gt;
                &amp;lt;created&amp;gt;1272070986051&amp;lt;/created&amp;gt;&lt;br /&gt;
                &amp;lt;updated&amp;gt;1272070986093&amp;lt;/updated&amp;gt;&lt;br /&gt;
                &amp;lt;subject&amp;gt;RE: Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
                &amp;lt;body&amp;gt;Hi David and all,&amp;amp;lt;br&amp;amp;gt;&amp;amp;lt;br&amp;amp;gt;Clinical Trial Data should probably be dealt with separately from Clinical Data&amp;amp;lt;br&amp;amp;gt;collected in the course of administering clinical care.&amp;amp;amp;nbsp; The use of Clinical&amp;amp;lt;br&amp;amp;gt;Trial data will be governed by the Consent that the patient signs as part of the&amp;amp;lt;br&amp;amp;gt;IRB Protocol that is set up to allow its collection, while the use Clinical Care&amp;amp;lt;br&amp;amp;gt;Data will be governed by the HIPAA notification that the patient receives, as&amp;amp;lt;br&amp;amp;gt;well as any IRB Protocols set up for the research involved.&amp;amp;lt;br&amp;amp;gt;&amp;lt;/body&amp;gt;&lt;br /&gt;
                &amp;lt;createdInOntologyVersion&amp;gt;2&amp;lt;/createdInOntologyVersion&amp;gt;&lt;br /&gt;
                &amp;lt;appliesToList&amp;gt;&lt;br /&gt;
                  &amp;lt;appliesTo&amp;gt;&lt;br /&gt;
                    &amp;lt;noteId&amp;gt;Note_02e4b8cd-f582-411c-8561-035a0f7d1dd9&amp;lt;/noteId&amp;gt;&lt;br /&gt;
                    &amp;lt;type&amp;gt;Note&amp;lt;/type&amp;gt;&lt;br /&gt;
                  &amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
                &amp;lt;/appliesToList&amp;gt;&lt;br /&gt;
              &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
            &amp;lt;/associated&amp;gt;&lt;br /&gt;
          &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
        &amp;lt;/associated&amp;gt;&lt;br /&gt;
      &amp;lt;/noteBean&amp;gt;&lt;br /&gt;
    &amp;lt;/list&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9953</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9953"/>
		<updated>2010-05-19T17:47:05Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* RDF Term Service */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./search/?query={uri-encoded query}[&amp;amp;{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the end of each word. For example, searching for &amp;quot;cut mela&amp;quot; would return all concepts whose name contains a word starting with &amp;quot;cut&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
**To ensure that the Web service works within your application, use the Alt signature as some ontologies may contain terms where the concept id is a URI. &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?&amp;amp;pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
== Changes to the Get all terms service ==&lt;br /&gt;
&lt;br /&gt;
Starting in BioPortal 2.3.1 (released March 15, 2010), the 'Get all terms' service has changed to support speedier and more complete term retrieval. To support this, several changes to the response XML and service signature are being made. Please see the following notes to update your existing applications to support these changes.&lt;br /&gt;
&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&lt;br /&gt;
&lt;br /&gt;
* '''Signature'''&lt;br /&gt;
** '''New parameters:''' Previously, offset and limit were used to control pagination of results. These parameters have been replaced as follows:&lt;br /&gt;
*** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
*** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
* '''Response''': The structure of the new 'Get all terms' response XML has been brought into line with other BioPortal REST term services. In addition, to assist in paging through result sets, 'page' metadata is provided. A list of classBeans is provided in the classBeanResultList element, which includes each classes' set of relations (examples of relations include SuperClass, SubClass, and rdfs:label). Please see the example below for a full demonstration of the new response.&lt;br /&gt;
&lt;br /&gt;
=  Instance Services =&lt;br /&gt;
&lt;br /&gt;
== Get all direct instances for a given term ==&lt;br /&gt;
* '''Signature''': ./concepts/instances/{ontlogyVersionId}[?conceptid={uri-encoded concept id}[&amp;amp;{optional args}]&amp;amp;email={email_address} &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/instances/38801?conceptid=SubstrateType&amp;amp;pagesize=1&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all direct instances for a given term.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/instances/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:17:21.226 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;5&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;1&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;1&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;5&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents class=&amp;quot;org.ncbo.stanford.bean.concept.InstanceBeanResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unknown_substrate_type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unknown_substrate_type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
									&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;MO_484&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;SubstrateType of unknown type.&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
						&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;instanceType&amp;gt;&lt;br /&gt;
							&amp;lt;list&amp;gt;&lt;br /&gt;
								&amp;lt;classBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/classBean&amp;gt;&lt;br /&gt;
							&amp;lt;/list&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
					&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Get an instance and its property/value pairs ==&lt;br /&gt;
* '''Signature''': ./instance/{ontlogyVersionId}[?instanceid={instanceid}&amp;amp;email={email_address}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/instance/38801?instanceid=glass&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns information about an instance and a list of property/value pairs.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/instance/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:10:48.760 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;glass&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;&lt;br /&gt;
				http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
			&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;glass&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;MO_742&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;The array is made on a glass slide.&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;instanceType&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;classBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/classBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
		&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/parents/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 17:58:14.230 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanocytic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanocytic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Melanocytic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Melanocytic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/42331/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/siblings/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:06:16.868 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Germ_Cell_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Germ Cell Tumor&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Hematopoietic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1032/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= Bio2RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file conforming to the requirements for integrating into the [http://sourceforge.net/projects/bio2rdf/ Bio2RDF] collection.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== RDF Term Service ==&lt;br /&gt;
'''Coming in late May, 2010!''' This service allows you to output a snippet of an ontology from BioPortal in the form of an RDF file. &lt;br /&gt;
* '''Signature''': ./bioportal/rdf/{ontology version id}/{concept id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/{ontology id}/{concept id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/{ontology id}/{concept id},{concept id},...,{concept id}?email=example@example.org&lt;br /&gt;
* '''Examples''': &lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/virtual/rdf/1321/NEMO_spatial:NEMO_0000024?email=example@example.org&lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/rdf/42743/NEMO_spatial:NEMO_0000023?email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology version id&lt;br /&gt;
** concept id&lt;br /&gt;
* '''Description''': returns a BioPortal concept as RDF/XML ontology snippet. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]. &lt;br /&gt;
** The RDF dump will use URIs that are based on which format the ontology is in:&lt;br /&gt;
*** '''OWL/RDF(S)''': preserve original URIs&lt;br /&gt;
*** '''Protégé &amp;amp; RRF''': http://purl.bioontology.org/ontology/{abbreviation}/{concept_id}&lt;br /&gt;
*** '''OBO''': http://purl.obolibrary.org/{idspace}_{localid}&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;rdf:RDF xmlns=&amp;quot;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf#&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;owl:Ontology rdf:about=&amp;quot;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:description&amp;gt;Neural ElectroMagnetic Ontologies (NEMO) describe classes of event-related brain potentials (ERP) and their properties, including spatial, temporal, functional (cognitive/behavioral) attributes, and data-level attributes (acquisition and analysis parameters).&amp;lt;/bioportal:description&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:abbreviation&amp;gt;NEMO&amp;lt;/bioportal:abbreviation&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:format&amp;gt;OWL&amp;lt;/bioportal:format&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:date&amp;gt;Wed May 19 09:56:21 PDT 2010&amp;lt;/bioportal:date&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:uri&amp;gt;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf&amp;lt;/bioportal:uri&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:displayLabel&amp;gt;Neural ElectroMagnetic Ontologies&amp;lt;/bioportal:displayLabel&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:versionNumber&amp;gt;.95&amp;lt;/bioportal:versionNumber&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:id&amp;gt;42743&amp;lt;/bioportal:id&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:ontologyId&amp;gt;1321&amp;lt;/bioportal:ontologyId&amp;gt;&lt;br /&gt;
    &amp;lt;/owl:Ontology&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;owl:Class rdf:about=&amp;quot;http://nemo.nic.uoregon.edu/ontologies/working/NEMO_spatial.owl#NEMO_0000023&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;rdfs:label&amp;gt;right_parietal_scalp_surface_region&amp;lt;/rdfs:label&amp;gt;&lt;br /&gt;
        &amp;lt;rdfs:subClassOf rdf:resource=&amp;quot;http://nemo.nic.uoregon.edu/ontologies/working/NEMO_spatial.owl#NEMO_0000006&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;skos:broader&amp;gt;NEMO_spatial:NEMO_0000006&amp;lt;/skos:broader&amp;gt;&lt;br /&gt;
        &amp;lt;skos:notation&amp;gt;NEMO_spatial:NEMO_0000023&amp;lt;/skos:notation&amp;gt;&lt;br /&gt;
        &amp;lt;skos:prefLabel&amp;gt;right_parietal_scalp_surface_region&amp;lt;/skos:prefLabel&amp;gt;&lt;br /&gt;
    &amp;lt;/owl:Class&amp;gt;&lt;br /&gt;
&amp;lt;/rdf:RDF&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Generated by the OWL API (version 3.0.0.1447) http://owlapi.sourceforge.net --&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== RDF Download Service ==&lt;br /&gt;
'''Coming in late May, 2010.''' This service allows you to download an entire ontology from BioPortal in the form of an RDF file.&lt;br /&gt;
* '''Signature''': ./bioportal/rdf/download/{ontology version id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/download/{ontology id}?email=example@example.org&lt;br /&gt;
* '''Examples''': &lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/virtual/rdf/download/1321?email=example@example.org&lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/rdf/download/42743?email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology version id&lt;br /&gt;
* '''Description''': returns a BioPortal ontology as RDF/XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]. &lt;br /&gt;
** The RDF dump will use URIs that are based on which format the ontology is in:&lt;br /&gt;
*** '''OWL/RDF(S)''': preserve original URIs&lt;br /&gt;
*** '''Protégé &amp;amp; RRF''': http://purl.bioontology.org/ontology/{abbreviation}/{concept_id}&lt;br /&gt;
*** '''OBO''': http://purl.obolibrary.org/{idspace}_{localid}&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Prototype Web service'''&lt;br /&gt;
** '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
** '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
** '''Required arguments:''' &lt;br /&gt;
*** ontology_id&lt;br /&gt;
** '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
** '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Prototype'''&lt;br /&gt;
** '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
** '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
** '''Required arguments:''' &lt;br /&gt;
*** ontology_id&lt;br /&gt;
** '''Optional arguments:''' &lt;br /&gt;
*** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
** '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
** '''Example Code:''' [http://www.bioontology.org/wiki/index.php/ExtractMappings Extract Mappings]&lt;br /&gt;
** '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= XML Schema Definitions for the REST services =&lt;br /&gt;
&lt;br /&gt;
XML Schema for [[#Term_services|concept]] and [[#Hierarchy_Services|hierarchy]] services have been provided courtesy Eamonn Maguire. An updated XML Schema document will be posted shortly.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9952</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9952"/>
		<updated>2010-05-19T17:46:02Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* RDF Download Service */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./search/?query={uri-encoded query}[&amp;amp;{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the end of each word. For example, searching for &amp;quot;cut mela&amp;quot; would return all concepts whose name contains a word starting with &amp;quot;cut&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
**To ensure that the Web service works within your application, use the Alt signature as some ontologies may contain terms where the concept id is a URI. &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?&amp;amp;pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
== Changes to the Get all terms service ==&lt;br /&gt;
&lt;br /&gt;
Starting in BioPortal 2.3.1 (released March 15, 2010), the 'Get all terms' service has changed to support speedier and more complete term retrieval. To support this, several changes to the response XML and service signature are being made. Please see the following notes to update your existing applications to support these changes.&lt;br /&gt;
&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&lt;br /&gt;
&lt;br /&gt;
* '''Signature'''&lt;br /&gt;
** '''New parameters:''' Previously, offset and limit were used to control pagination of results. These parameters have been replaced as follows:&lt;br /&gt;
*** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
*** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
* '''Response''': The structure of the new 'Get all terms' response XML has been brought into line with other BioPortal REST term services. In addition, to assist in paging through result sets, 'page' metadata is provided. A list of classBeans is provided in the classBeanResultList element, which includes each classes' set of relations (examples of relations include SuperClass, SubClass, and rdfs:label). Please see the example below for a full demonstration of the new response.&lt;br /&gt;
&lt;br /&gt;
=  Instance Services =&lt;br /&gt;
&lt;br /&gt;
== Get all direct instances for a given term ==&lt;br /&gt;
* '''Signature''': ./concepts/instances/{ontlogyVersionId}[?conceptid={uri-encoded concept id}[&amp;amp;{optional args}]&amp;amp;email={email_address} &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/instances/38801?conceptid=SubstrateType&amp;amp;pagesize=1&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all direct instances for a given term.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/instances/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:17:21.226 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;5&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;1&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;1&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;5&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents class=&amp;quot;org.ncbo.stanford.bean.concept.InstanceBeanResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unknown_substrate_type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unknown_substrate_type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
									&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;MO_484&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;SubstrateType of unknown type.&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
						&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;instanceType&amp;gt;&lt;br /&gt;
							&amp;lt;list&amp;gt;&lt;br /&gt;
								&amp;lt;classBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/classBean&amp;gt;&lt;br /&gt;
							&amp;lt;/list&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
					&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Get an instance and its property/value pairs ==&lt;br /&gt;
* '''Signature''': ./instance/{ontlogyVersionId}[?instanceid={instanceid}&amp;amp;email={email_address}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/instance/38801?instanceid=glass&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns information about an instance and a list of property/value pairs.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/instance/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:10:48.760 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;glass&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;&lt;br /&gt;
				http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
			&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;glass&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;MO_742&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;The array is made on a glass slide.&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;instanceType&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;classBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/classBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
		&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/parents/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 17:58:14.230 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanocytic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanocytic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Melanocytic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Melanocytic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/42331/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/siblings/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:06:16.868 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Germ_Cell_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Germ Cell Tumor&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Hematopoietic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1032/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= Bio2RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file conforming to the requirements for integrating into the [http://sourceforge.net/projects/bio2rdf/ Bio2RDF] collection.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== RDF Term Service ==&lt;br /&gt;
Coming Soon! This service allows you to output a snippet of an ontology from BioPortal in the form of an RDF file. &lt;br /&gt;
* '''Signature''': ./bioportal/rdf/{ontology version id}/{concept id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/{ontology id}/{concept id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/{ontology id}/{concept id},{concept id},...,{concept id}?email=example@example.org&lt;br /&gt;
* '''Examples''': &lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/virtual/rdf/1321/NEMO_spatial:NEMO_0000024?email=example@example.org&lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/rdf/42743/NEMO_spatial:NEMO_0000023?email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology version id&lt;br /&gt;
** concept id&lt;br /&gt;
* '''Description''': returns a BioPortal concept as RDF/XML ontology snippet. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]. &lt;br /&gt;
** The RDF dump will use URIs that are based on which format the ontology is in:&lt;br /&gt;
*** '''OWL/RDF(S)''': preserve original URIs&lt;br /&gt;
*** '''Protégé &amp;amp; RRF''': http://purl.bioontology.org/ontology/{abbreviation}/{concept_id}&lt;br /&gt;
*** '''OBO''': http://purl.obolibrary.org/{idspace}_{localid}&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;rdf:RDF xmlns=&amp;quot;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf#&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;owl:Ontology rdf:about=&amp;quot;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:description&amp;gt;Neural ElectroMagnetic Ontologies (NEMO) describe classes of event-related brain potentials (ERP) and their properties, including spatial, temporal, functional (cognitive/behavioral) attributes, and data-level attributes (acquisition and analysis parameters).&amp;lt;/bioportal:description&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:abbreviation&amp;gt;NEMO&amp;lt;/bioportal:abbreviation&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:format&amp;gt;OWL&amp;lt;/bioportal:format&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:date&amp;gt;Wed May 19 09:56:21 PDT 2010&amp;lt;/bioportal:date&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:uri&amp;gt;http://purl.bioontology.org/ontology/NEMO/NEMO_spatial:NEMO_0000023.rdf&amp;lt;/bioportal:uri&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:displayLabel&amp;gt;Neural ElectroMagnetic Ontologies&amp;lt;/bioportal:displayLabel&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:versionNumber&amp;gt;.95&amp;lt;/bioportal:versionNumber&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:id&amp;gt;42743&amp;lt;/bioportal:id&amp;gt;&lt;br /&gt;
        &amp;lt;bioportal:ontologyId&amp;gt;1321&amp;lt;/bioportal:ontologyId&amp;gt;&lt;br /&gt;
    &amp;lt;/owl:Ontology&amp;gt;&lt;br /&gt;
&lt;br /&gt;
    ...&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;owl:Class rdf:about=&amp;quot;http://nemo.nic.uoregon.edu/ontologies/working/NEMO_spatial.owl#NEMO_0000023&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;rdfs:label&amp;gt;right_parietal_scalp_surface_region&amp;lt;/rdfs:label&amp;gt;&lt;br /&gt;
        &amp;lt;rdfs:subClassOf rdf:resource=&amp;quot;http://nemo.nic.uoregon.edu/ontologies/working/NEMO_spatial.owl#NEMO_0000006&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;skos:broader&amp;gt;NEMO_spatial:NEMO_0000006&amp;lt;/skos:broader&amp;gt;&lt;br /&gt;
        &amp;lt;skos:notation&amp;gt;NEMO_spatial:NEMO_0000023&amp;lt;/skos:notation&amp;gt;&lt;br /&gt;
        &amp;lt;skos:prefLabel&amp;gt;right_parietal_scalp_surface_region&amp;lt;/skos:prefLabel&amp;gt;&lt;br /&gt;
    &amp;lt;/owl:Class&amp;gt;&lt;br /&gt;
&amp;lt;/rdf:RDF&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Generated by the OWL API (version 3.0.0.1447) http://owlapi.sourceforge.net --&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== RDF Download Service ==&lt;br /&gt;
'''Coming in late May, 2010.''' This service allows you to download an entire ontology from BioPortal in the form of an RDF file.&lt;br /&gt;
* '''Signature''': ./bioportal/rdf/download/{ontology version id}?email=example@example.org&lt;br /&gt;
* '''Alt Signature''': ./bioportal/virtual/rdf/download/{ontology id}?email=example@example.org&lt;br /&gt;
* '''Examples''': &lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/virtual/rdf/download/1321?email=example@example.org&lt;br /&gt;
** http://bioportal.bioontology.org/bioportal/rdf/download/42743?email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology version id&lt;br /&gt;
* '''Description''': returns a BioPortal ontology as RDF/XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]. &lt;br /&gt;
** The RDF dump will use URIs that are based on which format the ontology is in:&lt;br /&gt;
*** '''OWL/RDF(S)''': preserve original URIs&lt;br /&gt;
*** '''Protégé &amp;amp; RRF''': http://purl.bioontology.org/ontology/{abbreviation}/{concept_id}&lt;br /&gt;
*** '''OBO''': http://purl.obolibrary.org/{idspace}_{localid}&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Prototype Web service'''&lt;br /&gt;
** '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
** '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
** '''Required arguments:''' &lt;br /&gt;
*** ontology_id&lt;br /&gt;
** '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
** '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Prototype'''&lt;br /&gt;
** '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
** '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
** '''Required arguments:''' &lt;br /&gt;
*** ontology_id&lt;br /&gt;
** '''Optional arguments:''' &lt;br /&gt;
*** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
** '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
** '''Example Code:''' [http://www.bioontology.org/wiki/index.php/ExtractMappings Extract Mappings]&lt;br /&gt;
** '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= XML Schema Definitions for the REST services =&lt;br /&gt;
&lt;br /&gt;
XML Schema for [[#Term_services|concept]] and [[#Hierarchy_Services|hierarchy]] services have been provided courtesy Eamonn Maguire. An updated XML Schema document will be posted shortly.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9905</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9905"/>
		<updated>2010-05-03T17:22:25Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* The class OMV:Ontology */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Full list of properties for instances of &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ====&lt;br /&gt;
&lt;br /&gt;
Here is the full list of properties for instances of the class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;. It includes the properties that are added in the BioPortal metadata ontology, in addition to the ones that were inherited from OMV.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;designedForOntologyTask&amp;lt;/tt&amp;gt;: a textual description of the task for which the ontology was designed&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt;: organizations that endorsed the ontology (e.g., caBIG, OBO Foundry, WHO, etc.)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContributor&amp;lt;/tt&amp;gt;: names of contributors to the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasCreator&amp;lt;/tt&amp;gt;: the creator of the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasDomain&amp;lt;/tt&amp;gt;: a category that describes the ontology, from a pre-defined list of categories (e.g., Anatomy, names of specific organisms, Diseases, etc.)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasFormalityLevel&amp;lt;/tt&amp;gt;: is it a taxonomy, a formal ontology, etc.&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasLicense&amp;lt;/tt&amp;gt;: license under which the ontology is distributed&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasOntologyLanguage&amp;lt;/tt&amp;gt;: the language in which the ontology was developed&lt;br /&gt;
* &amp;lt;tt&amp;gt;usedOntologyEngineeringTool&amp;lt;/tt&amp;gt;: the tool that was used to develop the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;: version number&lt;br /&gt;
* &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;: the URI of the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym&amp;lt;/tt&amp;gt;: the ontology acronym&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;modificationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt;: description of the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;: the list of key classes in the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;: the list of keywords describing the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;: name of the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;status&amp;lt;/tt&amp;gt;: alpha, pre-production. production, etc.&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactEmail&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasContactEmail&amp;lt;/tt&amp;gt;: contact information for the ontology authors (can be a mailing list)&lt;br /&gt;
* &amp;lt;tt&amp;gt;urlPublications&amp;lt;/tt&amp;gt;: a link to the list of publications about the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;urlHomepage&amp;lt;/tt&amp;gt;: the homepage for the ontology (different from URI; this is a page intended for humans_ &lt;br /&gt;
* &amp;lt;tt&amp;gt;synonymProperty&amp;lt;/tt&amp;gt;: which property holds the synonyms for class names (default: &amp;lt;tt&amp;gt;[http://www.w3.org/2004/02/skos/core#altLabel  skos:altLabel]&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;preferredNameProperty&amp;lt;/tt&amp;gt;: which property holds the preferred names for classes (default: &amp;lt;tt&amp;gt;[http://www.w3.org/2000/01/rdf-schema#label rdfs:label]&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentationProperty&amp;lt;/tt&amp;gt;: which property holds the class definitions (default: &amp;lt;tt&amp;gt;[http://www.w3.org/2004/02/skos/core#definition skos:definition]&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;authorProperty&amp;lt;/tt&amp;gt;: which property holds the author of a class (default: &amp;lt;tt&amp;gt;[http://purl.org/dc/elements/1.1/creator dc:creator]&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Administration and maintenance in BioPortal; database information for finding the ontology in BioPortal. These properties are specific to the BioPortal implementation&lt;br /&gt;
* &amp;lt;tt&amp;gt;administeredBy&amp;lt;/tt&amp;gt;: the BioPortal user who administers the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;codingScheme&amp;lt;/tt&amp;gt;: used for UMLS terminologies&lt;br /&gt;
* &amp;lt;tt&amp;gt;fileNames&amp;lt;/tt&amp;gt;: the name of the file for downloading the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;filePath&amp;lt;/tt&amp;gt;: the location of the file for downloading the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;isFoundry&amp;lt;/tt&amp;gt;: is the ontology pulled from the OBO Foundry site?&lt;br /&gt;
* &amp;lt;tt&amp;gt;oboFoundryID&amp;lt;/tt&amp;gt;: the id of the ontology on the OBO Foundry site (used for OBO Pull)&lt;br /&gt;
* &amp;lt;tt&amp;gt;isManual&amp;lt;/tt&amp;gt;: is ontology uploaded directly to BioPortal or pulled from a different repository (such as OBO Foundry)&lt;br /&gt;
* &amp;lt;tt&amp;gt;isRemote/tt&amp;gt;: is the ontology uploaded to BioPortal or did the authors provide only metadata, but not the ontology itself&lt;br /&gt;
* &amp;lt;tt&amp;gt;uploadDate&amp;lt;/tt&amp;gt;: the date when the ontology was uploaded to BioPortal&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Properties for handling ontology versioning:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasPriorVersion&amp;lt;/tt&amp;gt;: a pointer to the earlier version of the ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVersionOfVirtualOntology&amp;lt;/tt&amp;gt;: a pointer to the &amp;quot;virtual ontology&amp;quot; instance -- the container for all versions of the same ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;id&amp;lt;/tt&amp;gt;: BioPortal internal version number&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
* New hierarchical relationship proposal (class &amp;lt;tt&amp;gt;changes:ChangeHierarchyProposal&amp;lt;/tt&amp;gt;): a proposal to change the location of the class in the hierarchy. It contains the following fields:&lt;br /&gt;
** Hierarchical relationship (property &amp;lt;tt&amp;gt;changes:relationType&amp;lt;/tt&amp;gt;): The hierarchical relationship that needs  to be changed (e.g., part-of or subclass-of)&lt;br /&gt;
** Old parent (property &amp;lt;tt&amp;gt;changes:oldParents&amp;lt;/tt&amp;gt;): the old parent in the hierarchy  (the proposal is usually attached to the old parent; so, by default the value for &amp;lt;tt&amp;gt; changes:oldParents &amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;) &lt;br /&gt;
** New parent (property &amp;lt;tt&amp;gt;changes:newParent&amp;lt;/tt&amp;gt;): where the class should be moved&lt;br /&gt;
** Keep the old parent? (property &amp;lt;tt&amp;gt;changes:moveOrCopy&amp;lt;/tt&amp;gt;): should the proposed new parent be added to the list of parents (copy) or should the old parent be removed and the class should be moved to the new parent (move)?&lt;br /&gt;
&lt;br /&gt;
* Change property value proposal (class &amp;lt;tt&amp;gt;changes:PropertyValueChangeProposal&amp;lt;/tt&amp;gt;): change a value for a property or create a new value. Contains the following fields:&lt;br /&gt;
** New value (property &amp;lt;tt&amp;gt;changes:newValue&amp;lt;/tt&amp;gt;): the new/added value for the property&lt;br /&gt;
** Old value (property &amp;lt;tt&amp;gt;changes:oldValue&amp;lt;/tt&amp;gt;): the property value the new value will be replacing (if any; if this property is false, then it is a proposal to add a new value, rather than replace an old one).&lt;br /&gt;
&lt;br /&gt;
* Retire a concept (class &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;): proposal to retire the concept to which it is attached&lt;br /&gt;
&lt;br /&gt;
* Split a concept into two concepts (class &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt;): a proposal to split the concept to which this note is attached into two concepts. The fields are:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
&lt;br /&gt;
''Note: &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt; will probably be a subclass of &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;.''&lt;br /&gt;
&lt;br /&gt;
* Merge this concept with another concept (class &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt;): Merge the selected concept into another concept. The expected side-effect is that the current concept will be retired (Thus, &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt; may need to be a subclass of &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;). The fields are:&lt;br /&gt;
** Merge with (property &amp;lt;tt&amp;gt;changes:targetEntity&amp;lt;/tt&amp;gt;): what to merge the current entity with.&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
In practice, for each source and target, we will have a property for:&lt;br /&gt;
* virtual ontology id&lt;br /&gt;
* ontology version id&lt;br /&gt;
* full concept id&lt;br /&gt;
''Note:'' Currently mappings are stored using the short id for the concept. We will need to replace the short ids with full ids when we store  the mappings in the back end.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9856</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9856"/>
		<updated>2010-04-13T04:43:25Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Search BioPortal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./search/?query={uri-encoded query}[&amp;amp;{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the end of each word. For example, searching for &amp;quot;cut mela&amp;quot; would return all concepts whose name contains a word starting with &amp;quot;cut&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' 'Get all terms' service has changed. The new signature and examples are reflected below. See [[#Changes_to_the_Get_all_terms_service]] for more information.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?pagesize={pagesize}&amp;amp;pagenum={pagenum}&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?&amp;amp;pagesize=50&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Arguments:''' &lt;br /&gt;
** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
== Changes to the Get all terms service ==&lt;br /&gt;
&lt;br /&gt;
Starting in BioPortal 2.3.1 (released March 15, 2010), the 'Get all terms' service has changed to support speedier and more complete term retrieval. To support this, several changes to the response XML and service signature are being made. Please see the following notes to update your existing applications to support these changes.&lt;br /&gt;
&lt;br /&gt;
* '''Examples''': A preview of the new service can be seen on the NCBO staging site:&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/40644/all?pagesize=50&amp;amp;pagenum=1&lt;br /&gt;
** http://rest.bioontology.org/bioportal/concepts/42431/all?pagesize=50&amp;amp;pagenum=500&lt;br /&gt;
&lt;br /&gt;
* '''Signature'''&lt;br /&gt;
** '''New parameters:''' Previously, offset and limit were used to control pagination of results. These parameters have been replaced as follows:&lt;br /&gt;
*** '''pagesize:''' An integer limiting how many results will be returned on a single page (a 'page' is equivalent to a single call to the REST service)&lt;br /&gt;
*** '''pagenum:''' An integer indicating which page of results to return.&lt;br /&gt;
&lt;br /&gt;
* '''Response''': The structure of the new 'Get all terms' response XML has been brought into line with other BioPortal REST term services. In addition, to assist in paging through result sets, 'page' metadata is provided. A list of classBeans is provided in the classBeanResultList element, which includes each classes' set of relations (examples of relations include SuperClass, SubClass, and rdfs:label). Please see the example below for a full demonstration of the new response.&lt;br /&gt;
&lt;br /&gt;
=  Instance Services =&lt;br /&gt;
&lt;br /&gt;
== Get all direct instances for a given term ==&lt;br /&gt;
* '''Signature''': ./concepts/instances/{ontlogyVersionId}[?conceptid={uri-encoded concept id}[&amp;amp;{optional args}]&amp;amp;email={email_address} &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/instances/38801?conceptid=SubstrateType&amp;amp;pagesize=1&amp;amp;pagenum=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all direct instances for a given term.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/instances/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:17:21.226 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;5&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;1&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;1&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;5&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents class=&amp;quot;org.ncbo.stanford.bean.concept.InstanceBeanResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unknown_substrate_type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unknown_substrate_type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unknown_substrate_type&lt;br /&gt;
									&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;MO_484&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;&lt;br /&gt;
											http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
										&amp;lt;instanceType&amp;gt;&lt;br /&gt;
											&amp;lt;list&amp;gt;&lt;br /&gt;
												&amp;lt;classBean&amp;gt;&lt;br /&gt;
													&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
													&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
													&amp;lt;/fullId&amp;gt;&lt;br /&gt;
													&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
													&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
													&amp;lt;relations /&amp;gt;&lt;br /&gt;
												&amp;lt;/classBean&amp;gt;&lt;br /&gt;
											&amp;lt;/list&amp;gt;&lt;br /&gt;
										&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
									&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;entry&amp;gt;&lt;br /&gt;
								&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;SubstrateType of unknown type.&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/entry&amp;gt;&lt;br /&gt;
						&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;instanceType&amp;gt;&lt;br /&gt;
							&amp;lt;list&amp;gt;&lt;br /&gt;
								&amp;lt;classBean&amp;gt;&lt;br /&gt;
									&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
									&amp;lt;fullId&amp;gt;&lt;br /&gt;
										http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
									&amp;lt;/fullId&amp;gt;&lt;br /&gt;
									&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
									&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
									&amp;lt;relations /&amp;gt;&lt;br /&gt;
								&amp;lt;/classBean&amp;gt;&lt;br /&gt;
							&amp;lt;/list&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
					&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Get an instance and its property/value pairs ==&lt;br /&gt;
* '''Signature''': ./instance/{ontlogyVersionId}[?instanceid={instanceid}&amp;amp;email={email_address}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/instance/38801?instanceid=glass&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns information about an instance and a list of property/value pairs.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/instance/38801&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:10:48.760 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;glass&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;&lt;br /&gt;
				http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
			&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;glass&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:NAME&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:NAME&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:NAME&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#glass&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;unique_identifier&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#unique_identifier&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;unique_identifier&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;MO_742&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdfs:comment&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/2000/01/rdfschema#comment&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdfs:comment&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;The array is made on a glass slide.&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;:DIRECTTYPE&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;:DIRECTTYPE&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;:DIRECTTYPE&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;propertyBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;rdf:type&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;http://www.w3.org/1999/02/22rdfsyntaxns#type&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;rdf:type&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/propertyBean&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;instanceBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;&lt;br /&gt;
								http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
							&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;relations /&amp;gt;&lt;br /&gt;
							&amp;lt;instanceType&amp;gt;&lt;br /&gt;
								&amp;lt;list&amp;gt;&lt;br /&gt;
									&amp;lt;classBean&amp;gt;&lt;br /&gt;
										&amp;lt;id&amp;gt;owl:Class&amp;lt;/id&amp;gt;&lt;br /&gt;
										&amp;lt;fullId&amp;gt;http://www.w3.org/2002/07/owl#Class&lt;br /&gt;
										&amp;lt;/fullId&amp;gt;&lt;br /&gt;
										&amp;lt;label&amp;gt;owl:Class&amp;lt;/label&amp;gt;&lt;br /&gt;
										&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
										&amp;lt;relations /&amp;gt;&lt;br /&gt;
									&amp;lt;/classBean&amp;gt;&lt;br /&gt;
								&amp;lt;/list&amp;gt;&lt;br /&gt;
							&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
						&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;instanceType&amp;gt;&lt;br /&gt;
				&amp;lt;list&amp;gt;&lt;br /&gt;
					&amp;lt;classBean&amp;gt;&lt;br /&gt;
						&amp;lt;id&amp;gt;SubstrateType&amp;lt;/id&amp;gt;&lt;br /&gt;
						&amp;lt;fullId&amp;gt;&lt;br /&gt;
							http://mged.sourceforge.net/ontologies/MGEDOntology.owl#SubstrateType&lt;br /&gt;
						&amp;lt;/fullId&amp;gt;&lt;br /&gt;
						&amp;lt;label&amp;gt;SubstrateType&amp;lt;/label&amp;gt;&lt;br /&gt;
						&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
						&amp;lt;relations /&amp;gt;&lt;br /&gt;
					&amp;lt;/classBean&amp;gt;&lt;br /&gt;
				&amp;lt;/list&amp;gt;&lt;br /&gt;
			&amp;lt;/instanceType&amp;gt;&lt;br /&gt;
		&amp;lt;/instanceBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/42331/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/parents/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 17:58:14.230 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanocytic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanocytic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Melanocytic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Melanocytic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1032/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/42331/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1032/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/42331/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/siblings/42331/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;20100408 18:06:16.868 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Germ_Cell_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Germ Cell Tumor&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Germ Cell Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;42331&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;fullId&amp;gt;&lt;br /&gt;
					http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Common_Hematopoietic_Neoplasm&lt;br /&gt;
				&amp;lt;/fullId&amp;gt;&lt;br /&gt;
				&amp;lt;label&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/label&amp;gt;&lt;br /&gt;
				&amp;lt;synonyms&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Neoplasm&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Common Hematopoietic Tumor&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1032/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file. This RDF dump will preserve original ontology names space and term URIs.&lt;br /&gt;
&lt;br /&gt;
Coming soon ...&lt;br /&gt;
&lt;br /&gt;
= Bio2RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file conforming to the requirements for integrating into the [http://sourceforge.net/projects/bio2rdf/ Bio2RDF] collection.&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= XML Schema Definitions for the REST services =&lt;br /&gt;
&lt;br /&gt;
XML Schema for [[#Term_services|concept]] and [[#Hierarchy_Services|hierarchy]] services is [[Media:ClassBean.xsd.zip|available]] (courtesy Eamonn Maguire).&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9750</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9750"/>
		<updated>2010-02-21T06:19:20Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Mapping Service */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/40644/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= XML Schema Definitions for the REST services =&lt;br /&gt;
&lt;br /&gt;
XML Schema for [[#Term_services|concept]] and [[#Hierarchy_Services|hierarchy]] services is [[Media:ClassBean.xsd.zip|available]] (courtesy Eamonn Maguire).&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=File:ClassBean.xsd.zip&amp;diff=9749</id>
		<title>File:ClassBean.xsd.zip</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=File:ClassBean.xsd.zip&amp;diff=9749"/>
		<updated>2010-02-21T06:10:53Z</updated>

		<summary type="html">&lt;p&gt;Noy: XML Schema for NCBO concept services&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;XML Schema for NCBO concept services&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9746</id>
		<title>Ontology Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9746"/>
		<updated>2010-02-19T00:14:46Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Types of notes in BioPortal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Notes in BioPortal = &lt;br /&gt;
&lt;br /&gt;
BioPortal uses ontology notes to describe a variety of user-specified comments and metadata on ontology, including new-term proposals, proposals for changes, comments and questions about classes, and so on. &lt;br /&gt;
&lt;br /&gt;
== Types of notes in BioPortal ==&lt;br /&gt;
The following are the types of notes in BioPortal. Please, email us at [mailto:support@bioontology.org support@bioontology.org] if you have suggestions for other note types (or specific parameters for the notes).&lt;br /&gt;
&lt;br /&gt;
* Basic comments (as they are in BioPortal currently)&lt;br /&gt;
* Assigning UMLS semantic type &lt;br /&gt;
** Semantic type&lt;br /&gt;
** Semantic typeID&lt;br /&gt;
* Proposals &lt;br /&gt;
** New term proposal&lt;br /&gt;
*** Generated ID&lt;br /&gt;
*** PrefName&lt;br /&gt;
*** Synonym&lt;br /&gt;
*** Definition&lt;br /&gt;
*** Superclass&lt;br /&gt;
*** Comment&lt;br /&gt;
** New relationship proposal&lt;br /&gt;
*** Relationship type: is-a, part-of&lt;br /&gt;
*** Relationship target&lt;br /&gt;
** New attribute value proposal&lt;br /&gt;
*** Attribute: documentation, definition, etc.&lt;br /&gt;
*** New value&lt;br /&gt;
*** Flag: replaces the current value (which one, in case of multiple values) or in addition to the current value(s)&lt;br /&gt;
*** Special kind of new attribute value proposal: Assigning UMLS semantic type &lt;br /&gt;
**** Semantic type&lt;br /&gt;
**** Semantic typeID&lt;br /&gt;
&lt;br /&gt;
* (for later) Structured annotations with user-defined structure&lt;br /&gt;
* (for later) Usage-guideline notes&lt;br /&gt;
&lt;br /&gt;
== Services to access and generate notes ==&lt;br /&gt;
('''Note''': We are currently working on these services. They are not available yet! If you have specific requirements that the list of services below does not satisfy, please contact us at [mailto:support@bioontology.org support@bioontology.org])&lt;br /&gt;
&lt;br /&gt;
=== Structure of the bean returned for a note ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;id&amp;gt;id&amp;lt;/id&amp;gt;&lt;br /&gt;
&amp;lt;type&amp;gt;termRequest&amp;lt;/type&amp;gt;&lt;br /&gt;
&amp;lt;author&amp;gt;author&amp;lt;/author&amp;gt;&lt;br /&gt;
&amp;lt;date&amp;gt;date&amp;lt;/date&amp;gt;&lt;br /&gt;
&amp;lt;appliesTo&amp;gt;id&amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
&amp;lt;values&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&lt;br /&gt;
       &amp;lt;property&amp;gt;preferredName&amp;lt;/property&amp;gt;&lt;br /&gt;
       &amp;lt;value&amp;gt;New term&amp;lt;/value&amp;gt;&lt;br /&gt;
   &amp;lt;/entry&amp;gt;&lt;br /&gt;
  ......&lt;br /&gt;
&amp;lt;/values&amp;gt;&lt;br /&gt;
&amp;lt;/NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by virtual id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology virtual id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by ontology version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a class in a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by virtual id if the ontology ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./virtual/notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a concept in the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes on another note ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{note id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a specific note (usually, replies in a discussion)&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Create a note for a concept in an ontology (by ontology version id) ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ''always by ontology version id''&lt;br /&gt;
* '''Description''': creates a note of a specific type with a specific set of values&lt;br /&gt;
** create a note, given&lt;br /&gt;
*** note type&lt;br /&gt;
*** author&lt;br /&gt;
*** date&lt;br /&gt;
*** appliedTo&lt;br /&gt;
*** values&lt;br /&gt;
**** relationship-value pairs&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9728</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9728"/>
		<updated>2010-02-05T18:57:51Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get latest version of an ontology id */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/40644/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9725</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9725"/>
		<updated>2010-02-04T17:54:45Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get siblings of a given concept in a specific ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/40644/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9724</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9724"/>
		<updated>2010-02-04T17:54:14Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get paths to roots/leaves from a concept in a specific ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9723</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9723"/>
		<updated>2010-02-04T17:54:03Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get paths to roots/leaves from a concept in a specific ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9722</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9722"/>
		<updated>2010-02-04T17:53:42Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get paths to roots/leaves from a concept in a specific ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/40644/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;40644&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9721</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9721"/>
		<updated>2010-02-04T17:53:30Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get parents/children of a given concept in a specific ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/40644/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/40644/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9720</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9720"/>
		<updated>2010-02-04T17:53:04Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get all terms using the specific ontology version id */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the [http://bioontology.org/wiki/index.php/Annotator_Web_service Annotator] and Resource Index can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
** subtreerootconceptid=&amp;lt;uri-encoded conceptid&amp;gt; - narrow the search to concepts residing in a sub-tree, where the &amp;quot;subtreerootconceptid&amp;quot; is the root node. This feature requires a SINGLE &amp;lt;ontologyid&amp;gt; passed in using the &amp;quot;onotlogyids&amp;quot; parameter.&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Term services =&lt;br /&gt;
(formerly referred to as Concept services)&lt;br /&gt;
&lt;br /&gt;
==  Get term ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./concepts/{ontology version id}?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** light=[1/0] - when set to 1, returns the &amp;quot;light&amp;quot; version of XML with only a basic info for the concept and its immediate children&lt;br /&gt;
** norelations=[1/0] - when set to 1, returns only the requested term information (id, label, fullid, type, synonyms, definitions) without the &amp;quot;relations&amp;quot; map. This is useful when you need to quickly retrieve just the base information about a term.&lt;br /&gt;
* '''Examples''':&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;light=0&amp;amp;email=example@example.org&amp;lt;br/&amp;gt;&lt;br /&gt;
http://rest.bioontology.org/bioportal/concepts/41009?conceptid=http%3A%2F%2Fihtsdo.owl%2Fsnomedct%2Fanatomy%23302509004&amp;amp;norelations=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/concepts/40644/&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-12-16 10:06:10.727 PST&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;classBean&amp;gt;&lt;br /&gt;
			&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
			&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
			&amp;lt;label&amp;gt;Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
			&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
			&amp;lt;synonyms&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Malignant Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
			&amp;lt;definitions&amp;gt;&lt;br /&gt;
				&amp;lt;string&amp;gt;A malignant, usually aggressive tumor composed of atypical,&lt;br /&gt;
					neoplastic melanocytes.&amp;lt;/string&amp;gt;&lt;br /&gt;
			&amp;lt;/definitions&amp;gt;&lt;br /&gt;
			&amp;lt;relations&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;UMLS_CUI&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;C0025202&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;owl:equivalentClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;'Common Neoplasm' and 'Melanocytic Neoplasm' and&lt;br /&gt;
							(Disease_Has_Abnormal_Cell only 'Melanoma Cell')&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ALT_DEFINITION&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							&amp;lt;def-source&amp;gt;NCI-GLOSS&amp;lt;/def-source&amp;gt;&lt;br /&gt;
							&amp;lt;def-definition&amp;gt;A form of skin cancer that arises in&lt;br /&gt;
								melanocytes, the cells that produce pigment.&amp;lt;/def-definition&amp;gt;&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;ICD-O-3_Code&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;8720/3&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;Semantic_Type&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Neoplastic Process&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;entry&amp;gt;&lt;br /&gt;
					&amp;lt;string&amp;gt;SubClass&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;list&amp;gt;&lt;br /&gt;
						&amp;lt;classBean&amp;gt;&lt;br /&gt;
							&amp;lt;id&amp;gt;Non-Cutaneous_Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
							&amp;lt;fullId&amp;gt;http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Non-Cutaneous_Melanoma&amp;lt;/fullId&amp;gt;&lt;br /&gt;
							&amp;lt;label&amp;gt;Non-Cutaneous Melanoma&amp;lt;/label&amp;gt;&lt;br /&gt;
							&amp;lt;type&amp;gt;Class&amp;lt;/type&amp;gt;&lt;br /&gt;
							&amp;lt;synonyms&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Extracutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Non-Cutaneous Melanoma&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/synonyms&amp;gt;&lt;br /&gt;
							&amp;lt;definitions&amp;gt;&lt;br /&gt;
								&amp;lt;string&amp;gt;Melanoma is a malignant tumor of melanocytes,&lt;br /&gt;
									cells that are derived from the neural crest.&amp;lt;/string&amp;gt;&lt;br /&gt;
							&amp;lt;/definitions&amp;gt;&lt;br /&gt;
							&amp;lt;relations&amp;gt;&lt;br /&gt;
								&amp;lt;entry&amp;gt;&lt;br /&gt;
									&amp;lt;string&amp;gt;code&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;list&amp;gt;&lt;br /&gt;
										&amp;lt;string&amp;gt;C8711&amp;lt;/string&amp;gt;&lt;br /&gt;
									&amp;lt;/list&amp;gt;&lt;br /&gt;
								&amp;lt;/entry&amp;gt;&lt;br /&gt;
							&amp;lt;/relations&amp;gt;&lt;br /&gt;
						&amp;lt;/classBean&amp;gt;&lt;br /&gt;
					&amp;lt;/list&amp;gt;&lt;br /&gt;
				&amp;lt;/entry&amp;gt;&lt;br /&gt;
			&amp;lt;/relations&amp;gt;&lt;br /&gt;
		&amp;lt;/classBean&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get all root terms for an ontology version id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get term for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the specific ontology version id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/40644/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
==  Get all terms using the virtual ontology id ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= RDF Dump Service =&lt;br /&gt;
&lt;br /&gt;
This service allows you to output a given ontology from BioPortal in the form of a N3 RDF file&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontology/dump_n3/{ontlogyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontology/dump_n3/40865?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9717</id>
		<title>BioPortal 2.3 Release Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9717"/>
		<updated>2010-02-03T01:41:04Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* New features */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== New features == &lt;br /&gt;
* BioPortal will process SKOS labels for preferred names and synonyms:&lt;br /&gt;
** The following is the default property for synonyms: http://www.w3.org/2004/02/skos/core#altLabel&lt;br /&gt;
** The following is the default property for preferred name: http://www.w3.org/2004/02/skos/core#prefLabel (rdfs:label otherwise)&lt;br /&gt;
* Ontologies used by Annotator &amp;amp; Hierarchy services will now be updated on a regular basis (around every week).&lt;br /&gt;
* The filtering of annotation by semantic types is available only for the ontologies which provide that information&lt;br /&gt;
* The Annotator scoring function has changed a bit. &lt;br /&gt;
* Users can now exclude the annotations created with synonym terms. &lt;br /&gt;
* Users can now exclude the annotations less than a certain length. &lt;br /&gt;
* There is a change in the XML returned by the Annotator service. The &amp;lt;sematicTypeBean&amp;gt; information is presented differently. The Get all terms REST service is also affected.&lt;br /&gt;
&lt;br /&gt;
Please refer to http://www.bioontology.org/wiki/index.php/Annotator_User_Guide for details on Annotator enhancements&lt;br /&gt;
&lt;br /&gt;
== New way to address UMLS ontologies ==&lt;br /&gt;
&lt;br /&gt;
We have harmonized the ontologies in the Annotator and BioPortal. The full list is available at: http://rest.bioontology.org/obs/ontologies. This change has implications when using the Annotator with UMLS ontologies.&lt;br /&gt;
* Currently, BioPortal (and, therefore, Annotator and Hierarchy services) can use 16 ontologies from UMLS. We will add UMLS ontologies to BioPortal on demand. Please send email to support@bioontology.org to request a specific UMLS ontology to be added to BioPortal. &lt;br /&gt;
* UMLS SAB is no longer valid as ontologyId. Please refer to http://bioportal.bioontology.org/ontologies/?filter=UMLS to map your SAB to the corresponding ontology version id. &lt;br /&gt;
* UMLS CUIs are no longer valid as conceptId. You can look up the conceptId corresponding to a CUI by using the NCBO search interface (http://bioportal.bioontology.org/search): type in the CUI and check &amp;quot;Include attributes in search&amp;quot;. You can also use the search REST service (http://www.bioontology.org/wiki/index.php/BioPortal_REST_services#Search_services) to search for the concept by CUI.  We are working on a new concept service that will accept CUI as conceptId in the near future.&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* ISA closure in the Annotator and Hierarchy services do not work properly for NCIT and Galen. This will be fixed in an upcoming release.&lt;br /&gt;
* Some mappings present in BioPortal are not yet available for use with the Annotator.&lt;br /&gt;
&lt;br /&gt;
== Other features and bug fixes ==&lt;br /&gt;
&lt;br /&gt;
* Implemented updates to Hierarchy (OBS Wrapper) Services to conform to the new OBS output XML structure&lt;br /&gt;
* Added case sensitivity check for the root concept (per #1793)&lt;br /&gt;
* Upgraded the deprecated Acegi Security to Spring Security&lt;br /&gt;
* Implemented support for OpenID Authentication&lt;br /&gt;
* New lexbig JAR intended to fix the problem with the graph not focused properly when there are 2 ontologies with the same uri.(Bioportal bug #1783)&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9716</id>
		<title>BioPortal 2.3 Release Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9716"/>
		<updated>2010-02-03T01:39:45Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Known issues */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== New features == &lt;br /&gt;
* BioPortal will process SKOS labels for preferred names, synonyms, etc.&lt;br /&gt;
* Ontologies used by Annotator &amp;amp; Hierarchy services will now be updated on a regular basis (around every week).&lt;br /&gt;
* The filtering of annotation by semantic types is available only for the ontologies which provide that information&lt;br /&gt;
* The Annotator scoring function has changed a bit. &lt;br /&gt;
* Users can now exclude the annotations created with synonym terms. &lt;br /&gt;
* Users can now exclude the annotations less than a certain length. &lt;br /&gt;
* There is a change in the XML returned by the Annotator service. The &amp;lt;sematicTypeBean&amp;gt; information is presented differently. The Get all terms REST service is also affected.&lt;br /&gt;
&lt;br /&gt;
Please refer to http://www.bioontology.org/wiki/index.php/Annotator_User_Guide for details on Annotator enhancements&lt;br /&gt;
&lt;br /&gt;
== New way to address UMLS ontologies ==&lt;br /&gt;
&lt;br /&gt;
We have harmonized the ontologies in the Annotator and BioPortal. The full list is available at: http://rest.bioontology.org/obs/ontologies. This change has implications when using the Annotator with UMLS ontologies.&lt;br /&gt;
* Currently, BioPortal (and, therefore, Annotator and Hierarchy services) can use 16 ontologies from UMLS. We will add UMLS ontologies to BioPortal on demand. Please send email to support@bioontology.org to request a specific UMLS ontology to be added to BioPortal. &lt;br /&gt;
* UMLS SAB is no longer valid as ontologyId. Please refer to http://bioportal.bioontology.org/ontologies/?filter=UMLS to map your SAB to the corresponding ontology version id. &lt;br /&gt;
* UMLS CUIs are no longer valid as conceptId. You can look up the conceptId corresponding to a CUI by using the NCBO search interface (http://bioportal.bioontology.org/search): type in the CUI and check &amp;quot;Include attributes in search&amp;quot;. You can also use the search REST service (http://www.bioontology.org/wiki/index.php/BioPortal_REST_services#Search_services) to search for the concept by CUI.  We are working on a new concept service that will accept CUI as conceptId in the near future.&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* ISA closure in the Annotator and Hierarchy services do not work properly for NCIT and Galen. This will be fixed in an upcoming release.&lt;br /&gt;
* Some mappings present in BioPortal are not yet available for use with the Annotator.&lt;br /&gt;
&lt;br /&gt;
== Other features and bug fixes ==&lt;br /&gt;
&lt;br /&gt;
* Implemented updates to Hierarchy (OBS Wrapper) Services to conform to the new OBS output XML structure&lt;br /&gt;
* Added case sensitivity check for the root concept (per #1793)&lt;br /&gt;
* Upgraded the deprecated Acegi Security to Spring Security&lt;br /&gt;
* Implemented support for OpenID Authentication&lt;br /&gt;
* New lexbig JAR intended to fix the problem with the graph not focused properly when there are 2 ontologies with the same uri.(Bioportal bug #1783)&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9715</id>
		<title>BioPortal 2.3 Release Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_2.3_Release_Notes&amp;diff=9715"/>
		<updated>2010-02-03T01:38:18Z</updated>

		<summary type="html">&lt;p&gt;Noy: New page: == New features ==  * BioPortal will process SKOS labels for preferred names, synonyms, etc. * Ontologies used by Annotator &amp;amp; Hierarchy services will now be updated on a regular basis (aro...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== New features == &lt;br /&gt;
* BioPortal will process SKOS labels for preferred names, synonyms, etc.&lt;br /&gt;
* Ontologies used by Annotator &amp;amp; Hierarchy services will now be updated on a regular basis (around every week).&lt;br /&gt;
* The filtering of annotation by semantic types is available only for the ontologies which provide that information&lt;br /&gt;
* The Annotator scoring function has changed a bit. &lt;br /&gt;
* Users can now exclude the annotations created with synonym terms. &lt;br /&gt;
* Users can now exclude the annotations less than a certain length. &lt;br /&gt;
* There is a change in the XML returned by the Annotator service. The &amp;lt;sematicTypeBean&amp;gt; information is presented differently. The Get all terms REST service is also affected.&lt;br /&gt;
&lt;br /&gt;
Please refer to http://www.bioontology.org/wiki/index.php/Annotator_User_Guide for details on Annotator enhancements&lt;br /&gt;
&lt;br /&gt;
== New way to address UMLS ontologies ==&lt;br /&gt;
&lt;br /&gt;
We have harmonized the ontologies in the Annotator and BioPortal. The full list is available at: http://rest.bioontology.org/obs/ontologies. This change has implications when using the Annotator with UMLS ontologies.&lt;br /&gt;
* Currently, BioPortal (and, therefore, Annotator and Hierarchy services) can use 16 ontologies from UMLS. We will add UMLS ontologies to BioPortal on demand. Please send email to support@bioontology.org to request a specific UMLS ontology to be added to BioPortal. &lt;br /&gt;
* UMLS SAB is no longer valid as ontologyId. Please refer to http://bioportal.bioontology.org/ontologies/?filter=UMLS to map your SAB to the corresponding ontology version id. &lt;br /&gt;
* UMLS CUIs are no longer valid as conceptId. You can look up the conceptId corresponding to a CUI by using the NCBO search interface (http://bioportal.bioontology.org/search): type in the CUI and check &amp;quot;Include attributes in search&amp;quot;. You can also use the search REST service (http://www.bioontology.org/wiki/index.php/BioPortal_REST_services#Search_services) to search for the concept by CUI.  We are working on a new concept service that will accept CUI as conceptId in the near future.&lt;br /&gt;
&lt;br /&gt;
== Known issues ==&lt;br /&gt;
* ISA closure in the Annotator and Hierarchy services do not work properly for NCIT and Galen. This will be fixed in an upcoming release.&lt;br /&gt;
* Some mappings present in BioPortal are not yet available for use with the Annotator.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9654</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9654"/>
		<updated>2010-01-16T00:53:13Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* All mappings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== Proposals ==&lt;br /&gt;
&lt;br /&gt;
Proposals are a special kind of notes. Through proposals, the members of the community communicate with ontology developers, making suggestions for changes. The community here can be the biomedical-ontology community at large, the users of the ontology, or a distributed community of ontology developers who use the notes capability to reach consensus.&lt;br /&gt;
&lt;br /&gt;
The main type of the proposal in the Bioportal context is the proposal to add a new term. Annotators often need new terms and the notes can serve as an issue tracker, of sorts. The new term proposal is usually attached to the class in the hierarchy that would become its superclass (as in ''&amp;quot;Add a new term here&amp;quot;''. When creating a proposals users must be able to:&lt;br /&gt;
&lt;br /&gt;
* get an id for the new term right away so that they can use this id in their annotations.&lt;br /&gt;
* specify some information for the new term, such as:&lt;br /&gt;
** preferred name&lt;br /&gt;
** synonyms&lt;br /&gt;
** definition&lt;br /&gt;
** superclass for the new term (by default, the class to which the proposal is attached)&lt;br /&gt;
** contact information (for contact during the curation process)&lt;br /&gt;
** comment&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
Each of the service  should return both the full id and the short id of the mapped concepts and we should probably provide the lookup capability by both types of ids (but definitely by the full id)&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
* remove all mappings for an ontology (or all mappings between two ontologies) -- to enable update of mappings when ontology evolves&lt;br /&gt;
** optional parameter: restricted to mappings created by a specific user and/or algorithm&lt;br /&gt;
* process bulk mappings:&lt;br /&gt;
** Given a tab-delimited file with mappings (source ontology id, source concept id, target ontology id, target concept id, mapping type) + provenance data, create the mappings&lt;br /&gt;
* search mappings:&lt;br /&gt;
** find mappings by specific author and/or algorithm&lt;br /&gt;
** grouped by ontology&lt;br /&gt;
** essentially a query to restrict mappings by any piece of metadata about them&lt;br /&gt;
* possibly additional aggregated data that is required to present the tag cloud on the ontology metadata page&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9653</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9653"/>
		<updated>2010-01-16T00:51:01Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* The class mappings:One_to_one_mapping */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
* New hierarchical relationship proposal (class &amp;lt;tt&amp;gt;changes:ChangeHierarchyProposal&amp;lt;/tt&amp;gt;): a proposal to change the location of the class in the hierarchy. It contains the following fields:&lt;br /&gt;
** Hierarchical relationship (property &amp;lt;tt&amp;gt;changes:relationType&amp;lt;/tt&amp;gt;): The hierarchical relationship that needs  to be changed (e.g., part-of or subclass-of)&lt;br /&gt;
** Old parent (property &amp;lt;tt&amp;gt;changes:oldParents&amp;lt;/tt&amp;gt;): the old parent in the hierarchy  (the proposal is usually attached to the old parent; so, by default the value for &amp;lt;tt&amp;gt; changes:oldParents &amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;) &lt;br /&gt;
** New parent (property &amp;lt;tt&amp;gt;changes:newParent&amp;lt;/tt&amp;gt;): where the class should be moved&lt;br /&gt;
** Keep the old parent? (property &amp;lt;tt&amp;gt;changes:moveOrCopy&amp;lt;/tt&amp;gt;): should the proposed new parent be added to the list of parents (copy) or should the old parent be removed and the class should be moved to the new parent (move)?&lt;br /&gt;
&lt;br /&gt;
* Change property value proposal (class &amp;lt;tt&amp;gt;changes:PropertyValueChangeProposal&amp;lt;/tt&amp;gt;): change a value for a property or create a new value. Contains the following fields:&lt;br /&gt;
** New value (property &amp;lt;tt&amp;gt;changes:newValue&amp;lt;/tt&amp;gt;): the new/added value for the property&lt;br /&gt;
** Old value (property &amp;lt;tt&amp;gt;changes:oldValue&amp;lt;/tt&amp;gt;): the property value the new value will be replacing (if any; if this property is false, then it is a proposal to add a new value, rather than replace an old one).&lt;br /&gt;
&lt;br /&gt;
* Retire a concept (class &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;): proposal to retire the concept to which it is attached&lt;br /&gt;
&lt;br /&gt;
* Split a concept into two concepts (class &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt;): a proposal to split the concept to which this note is attached into two concepts. The fields are:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
&lt;br /&gt;
''Note: &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt; will probably be a subclass of &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;.''&lt;br /&gt;
&lt;br /&gt;
* Merge this concept with another concept (class &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt;): Merge the selected concept into another concept. The expected side-effect is that the current concept will be retired (Thus, &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt; may need to be a subclass of &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;). The fields are:&lt;br /&gt;
** Merge with (property &amp;lt;tt&amp;gt;changes:targetEntity&amp;lt;/tt&amp;gt;): what to merge the current entity with.&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
In practice, for each source and target, we will have a property for:&lt;br /&gt;
* virtual ontology id&lt;br /&gt;
* ontology version id&lt;br /&gt;
* full concept id&lt;br /&gt;
''Note:'' Currently mappings are stored using the short id for the concept. We will need to replace the short ids with full ids when we store  the mappings in the back end.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9652</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9652"/>
		<updated>2010-01-16T00:48:19Z</updated>

		<summary type="html">&lt;p&gt;Noy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== Proposals ==&lt;br /&gt;
&lt;br /&gt;
Proposals are a special kind of notes. Through proposals, the members of the community communicate with ontology developers, making suggestions for changes. The community here can be the biomedical-ontology community at large, the users of the ontology, or a distributed community of ontology developers who use the notes capability to reach consensus.&lt;br /&gt;
&lt;br /&gt;
The main type of the proposal in the Bioportal context is the proposal to add a new term. Annotators often need new terms and the notes can serve as an issue tracker, of sorts. The new term proposal is usually attached to the class in the hierarchy that would become its superclass (as in ''&amp;quot;Add a new term here&amp;quot;''. When creating a proposals users must be able to:&lt;br /&gt;
&lt;br /&gt;
* get an id for the new term right away so that they can use this id in their annotations.&lt;br /&gt;
* specify some information for the new term, such as:&lt;br /&gt;
** preferred name&lt;br /&gt;
** synonyms&lt;br /&gt;
** definition&lt;br /&gt;
** superclass for the new term (by default, the class to which the proposal is attached)&lt;br /&gt;
** contact information (for contact during the curation process)&lt;br /&gt;
** comment&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
* remove all mappings for an ontology (or all mappings between two ontologies) -- to enable update of mappings when ontology evolves&lt;br /&gt;
** optional parameter: restricted to mappings created by a specific user and/or algorithm&lt;br /&gt;
* process bulk mappings:&lt;br /&gt;
** Given a tab-delimited file with mappings (source ontology id, source concept id, target ontology id, target concept id, mapping type) + provenance data, create the mappings&lt;br /&gt;
* search mappings:&lt;br /&gt;
** find mappings by specific author and/or algorithm&lt;br /&gt;
** grouped by ontology&lt;br /&gt;
** essentially a query to restrict mappings by any piece of metadata about them&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9651</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9651"/>
		<updated>2010-01-16T00:47:03Z</updated>

		<summary type="html">&lt;p&gt;Noy: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== Proposals ==&lt;br /&gt;
&lt;br /&gt;
Proposals are a special kind of notes. Through proposals, the members of the community communicate with ontology developers, making suggestions for changes. The community here can be the biomedical-ontology community at large, the users of the ontology, or a distributed community of ontology developers who use the notes capability to reach consensus.&lt;br /&gt;
&lt;br /&gt;
The main type of the proposal in the Bioportal context is the proposal to add a new term. Annotators often need new terms and the notes can serve as an issue tracker, of sorts. The new term proposal is usually attached to the class in the hierarchy that would become its superclass (as in ''&amp;quot;Add a new term here&amp;quot;''. When creating a proposals users must be able to:&lt;br /&gt;
&lt;br /&gt;
* get an id for the new term right away so that they can use this id in their annotations.&lt;br /&gt;
* specify some information for the new term, such as:&lt;br /&gt;
** preferred name&lt;br /&gt;
** synonyms&lt;br /&gt;
** definition&lt;br /&gt;
** superclass for the new term (by default, the class to which the proposal is attached)&lt;br /&gt;
** contact information (for contact during the curation process)&lt;br /&gt;
** comment&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
* remove all mappings for an ontology (or all mappings between two ontologies) -- to enable update of mappings when ontology evolves&lt;br /&gt;
** optional parameter: restricted to mappings created by a specific user and/or algorithm&lt;br /&gt;
* process bulk mappings:&lt;br /&gt;
** Given a tab-delimited file with mappings (source ontology id, source concept id, target ontology id, target concept id, mapping type) + provenance data, create the mappings&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9650</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9650"/>
		<updated>2010-01-16T00:45:41Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* All mappings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== Proposals ==&lt;br /&gt;
&lt;br /&gt;
Proposals are a special kind of notes. Through proposals, the members of the community communicate with ontology developers, making suggestions for changes. The community here can be the biomedical-ontology community at large, the users of the ontology, or a distributed community of ontology developers who use the notes capability to reach consensus.&lt;br /&gt;
&lt;br /&gt;
The main type of the proposal in the Bioportal context is the proposal to add a new term. Annotators often need new terms and the notes can serve as an issue tracker, of sorts. The new term proposal is usually attached to the class in the hierarchy that would become its superclass (as in ''&amp;quot;Add a new term here&amp;quot;''. When creating a proposals users must be able to:&lt;br /&gt;
&lt;br /&gt;
* get an id for the new term right away so that they can use this id in their annotations.&lt;br /&gt;
* specify some information for the new term, such as:&lt;br /&gt;
** preferred name&lt;br /&gt;
** synonyms&lt;br /&gt;
** definition&lt;br /&gt;
** superclass for the new term (by default, the class to which the proposal is attached)&lt;br /&gt;
** contact information (for contact during the curation process)&lt;br /&gt;
** comment&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
* remove all mappings for an ontology (or all mappings between two ontologies) -- to enable update of mappings when ontology evolves&lt;br /&gt;
** optional parameter: restricted to mappings created by a specific user and/or algorithm&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9413</id>
		<title>Ontology Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9413"/>
		<updated>2009-11-14T21:02:23Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Create a note for a concept in an ontology (by ontology version id) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Notes in BioPortal = &lt;br /&gt;
&lt;br /&gt;
BioPortal uses ontology notes to describe a variety of user-specified comments and metadata on ontology, including new-term proposals, proposals for changes, comments and questions about classes, and so on. &lt;br /&gt;
&lt;br /&gt;
== Types of notes in BioPortal ==&lt;br /&gt;
The following are the types of notes in BioPortal. Please, email us at [mailto:support@bioontology.org support@bioontology.org] if you have suggestions for other note types (or specific parameters for the notes).&lt;br /&gt;
&lt;br /&gt;
* Basic comments (as they are in BioPortal currently)&lt;br /&gt;
* Assigning UMLS semantic type &lt;br /&gt;
** Semantic type&lt;br /&gt;
** Semantic typeID&lt;br /&gt;
* Proposals &lt;br /&gt;
** New term proposal&lt;br /&gt;
*** Generated ID&lt;br /&gt;
*** PrefName&lt;br /&gt;
*** Synonym&lt;br /&gt;
*** Definition&lt;br /&gt;
*** Superclass&lt;br /&gt;
*** Comment&lt;br /&gt;
** New relationship proposal&lt;br /&gt;
*** Relationship type: is-a, part-of&lt;br /&gt;
*** Relationship target&lt;br /&gt;
** New attribute value proposal&lt;br /&gt;
*** Attribute: documentation, definition, etc.&lt;br /&gt;
*** New value&lt;br /&gt;
*** Flag: replaces the current value (which one, in case of multiple values) or in addition to the current value(s)&lt;br /&gt;
* (for later) Structured annotations with user-defined structure&lt;br /&gt;
* (for later) Usage-guideline notes&lt;br /&gt;
&lt;br /&gt;
== Services to access and generate notes ==&lt;br /&gt;
('''Note''': We are currently working on these services. They are not available yet! If you have specific requirements that the list of services below does not satisfy, please contact us at [mailto:support@bioontology.org support@bioontology.org])&lt;br /&gt;
&lt;br /&gt;
=== Structure of the bean returned for a note ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;id&amp;gt;id&amp;lt;/id&amp;gt;&lt;br /&gt;
&amp;lt;type&amp;gt;termRequest&amp;lt;/type&amp;gt;&lt;br /&gt;
&amp;lt;author&amp;gt;author&amp;lt;/author&amp;gt;&lt;br /&gt;
&amp;lt;date&amp;gt;date&amp;lt;/date&amp;gt;&lt;br /&gt;
&amp;lt;appliesTo&amp;gt;id&amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
&amp;lt;values&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&lt;br /&gt;
       &amp;lt;property&amp;gt;preferredName&amp;lt;/property&amp;gt;&lt;br /&gt;
       &amp;lt;value&amp;gt;New term&amp;lt;/value&amp;gt;&lt;br /&gt;
   &amp;lt;/entry&amp;gt;&lt;br /&gt;
  ......&lt;br /&gt;
&amp;lt;/values&amp;gt;&lt;br /&gt;
&amp;lt;/NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by virtual id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology virtual id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by ontology version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a class in a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by virtual id if the ontology ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./virtual/notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a concept in the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes on another note ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{note id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a specific note (usually, replies in a discussion)&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Create a note for a concept in an ontology (by ontology version id) ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ''always by ontology version id''&lt;br /&gt;
* '''Description''': creates a note of a specific type with a specific set of values&lt;br /&gt;
** create a note, given&lt;br /&gt;
*** note type&lt;br /&gt;
*** author&lt;br /&gt;
*** date&lt;br /&gt;
*** appliedTo&lt;br /&gt;
*** values&lt;br /&gt;
**** relationship-value pairs&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9412</id>
		<title>Ontology Notes</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Notes&amp;diff=9412"/>
		<updated>2009-11-14T21:00:40Z</updated>

		<summary type="html">&lt;p&gt;Noy: New page: = Ontology Notes in BioPortal =   BioPortal uses ontology notes to describe a variety of user-specified comments and metadata on ontology, including new-term proposals, proposals for chang...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Notes in BioPortal = &lt;br /&gt;
&lt;br /&gt;
BioPortal uses ontology notes to describe a variety of user-specified comments and metadata on ontology, including new-term proposals, proposals for changes, comments and questions about classes, and so on. &lt;br /&gt;
&lt;br /&gt;
== Types of notes in BioPortal ==&lt;br /&gt;
The following are the types of notes in BioPortal. Please, email us at [mailto:support@bioontology.org support@bioontology.org] if you have suggestions for other note types (or specific parameters for the notes).&lt;br /&gt;
&lt;br /&gt;
* Basic comments (as they are in BioPortal currently)&lt;br /&gt;
* Assigning UMLS semantic type &lt;br /&gt;
** Semantic type&lt;br /&gt;
** Semantic typeID&lt;br /&gt;
* Proposals &lt;br /&gt;
** New term proposal&lt;br /&gt;
*** Generated ID&lt;br /&gt;
*** PrefName&lt;br /&gt;
*** Synonym&lt;br /&gt;
*** Definition&lt;br /&gt;
*** Superclass&lt;br /&gt;
*** Comment&lt;br /&gt;
** New relationship proposal&lt;br /&gt;
*** Relationship type: is-a, part-of&lt;br /&gt;
*** Relationship target&lt;br /&gt;
** New attribute value proposal&lt;br /&gt;
*** Attribute: documentation, definition, etc.&lt;br /&gt;
*** New value&lt;br /&gt;
*** Flag: replaces the current value (which one, in case of multiple values) or in addition to the current value(s)&lt;br /&gt;
* (for later) Structured annotations with user-defined structure&lt;br /&gt;
* (for later) Usage-guideline notes&lt;br /&gt;
&lt;br /&gt;
== Services to access and generate notes ==&lt;br /&gt;
('''Note''': We are currently working on these services. They are not available yet! If you have specific requirements that the list of services below does not satisfy, please contact us at [mailto:support@bioontology.org support@bioontology.org])&lt;br /&gt;
&lt;br /&gt;
=== Structure of the bean returned for a note ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;id&amp;gt;id&amp;lt;/id&amp;gt;&lt;br /&gt;
&amp;lt;type&amp;gt;termRequest&amp;lt;/type&amp;gt;&lt;br /&gt;
&amp;lt;author&amp;gt;author&amp;lt;/author&amp;gt;&lt;br /&gt;
&amp;lt;date&amp;gt;date&amp;lt;/date&amp;gt;&lt;br /&gt;
&amp;lt;appliesTo&amp;gt;id&amp;lt;/appliesTo&amp;gt;&lt;br /&gt;
&amp;lt;values&amp;gt;&lt;br /&gt;
   &amp;lt;entry&amp;gt;&lt;br /&gt;
       &amp;lt;property&amp;gt;preferredName&amp;lt;/property&amp;gt;&lt;br /&gt;
       &amp;lt;value&amp;gt;New term&amp;lt;/value&amp;gt;&lt;br /&gt;
   &amp;lt;/entry&amp;gt;&lt;br /&gt;
  ......&lt;br /&gt;
&amp;lt;/values&amp;gt;&lt;br /&gt;
&amp;lt;/NoteBean&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for an ontology by virtual id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology virtual id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by ontology version id ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a class in a specific version of the ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes for a concept in an ontology by virtual id if the ontology ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/notes/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Alt Signature''': ./virtual/notes/{ontology version id}/?conceptid={uri-encoded concept id}&amp;amp;email={email_address}&lt;br /&gt;
* '''Description''': returns all notes for a concept in the virtual ontology, i.e., all notes associated with any version of this ontology &lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Get notes on another note ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./notes/{note id}?email={email_address}&lt;br /&gt;
* '''Description''': returns all notes that are attached to a specific note (usually, replies in a discussion)&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** noteType={noteType} -  returns only the notes of the specific type&lt;br /&gt;
** includeArchived=[true|false] - include archived notes; default is false.&lt;br /&gt;
&lt;br /&gt;
=== Create a note for a concept in an ontology (by ontology version id) ===&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ''always by ontology version id''&lt;br /&gt;
* '''Description''': creates a note of a specific type with a specific set of values&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9349</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9349"/>
		<updated>2009-10-22T01:24:15Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Marginal notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== Proposals ==&lt;br /&gt;
&lt;br /&gt;
Proposals are a special kind of notes. Through proposals, the members of the community communicate with ontology developers, making suggestions for changes. The community here can be the biomedical-ontology community at large, the users of the ontology, or a distributed community of ontology developers who use the notes capability to reach consensus.&lt;br /&gt;
&lt;br /&gt;
The main type of the proposal in the Bioportal context is the proposal to add a new term. Annotators often need new terms and the notes can serve as an issue tracker, of sorts. The new term proposal is usually attached to the class in the hierarchy that would become its superclass (as in ''&amp;quot;Add a new term here&amp;quot;''. When creating a proposals users must be able to:&lt;br /&gt;
&lt;br /&gt;
* get an id for the new term right away so that they can use this id in their annotations.&lt;br /&gt;
* specify some information for the new term, such as:&lt;br /&gt;
** preferred name&lt;br /&gt;
** synonyms&lt;br /&gt;
** definition&lt;br /&gt;
** superclass for the new term (by default, the class to which the proposal is attached)&lt;br /&gt;
** contact information (for contact during the curation process)&lt;br /&gt;
** comment&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9348</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9348"/>
		<updated>2009-10-22T01:18:57Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Marginal notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9347</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9347"/>
		<updated>2009-10-22T01:18:39Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Marginal notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
&lt;br /&gt;
=== The requirements for services that support marginal notes: ===&lt;br /&gt;
&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9346</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9346"/>
		<updated>2009-10-22T01:17:44Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* The class changes:Proposal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
* New hierarchical relationship proposal (class &amp;lt;tt&amp;gt;changes:ChangeHierarchyProposal&amp;lt;/tt&amp;gt;): a proposal to change the location of the class in the hierarchy. It contains the following fields:&lt;br /&gt;
** Hierarchical relationship (property &amp;lt;tt&amp;gt;changes:relationType&amp;lt;/tt&amp;gt;): The hierarchical relationship that needs  to be changed (e.g., part-of or subclass-of)&lt;br /&gt;
** Old parent (property &amp;lt;tt&amp;gt;changes:oldParents&amp;lt;/tt&amp;gt;): the old parent in the hierarchy  (the proposal is usually attached to the old parent; so, by default the value for &amp;lt;tt&amp;gt; changes:oldParents &amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;) &lt;br /&gt;
** New parent (property &amp;lt;tt&amp;gt;changes:newParent&amp;lt;/tt&amp;gt;): where the class should be moved&lt;br /&gt;
** Keep the old parent? (property &amp;lt;tt&amp;gt;changes:moveOrCopy&amp;lt;/tt&amp;gt;): should the proposed new parent be added to the list of parents (copy) or should the old parent be removed and the class should be moved to the new parent (move)?&lt;br /&gt;
&lt;br /&gt;
* Change property value proposal (class &amp;lt;tt&amp;gt;changes:PropertyValueChangeProposal&amp;lt;/tt&amp;gt;): change a value for a property or create a new value. Contains the following fields:&lt;br /&gt;
** New value (property &amp;lt;tt&amp;gt;changes:newValue&amp;lt;/tt&amp;gt;): the new/added value for the property&lt;br /&gt;
** Old value (property &amp;lt;tt&amp;gt;changes:oldValue&amp;lt;/tt&amp;gt;): the property value the new value will be replacing (if any; if this property is false, then it is a proposal to add a new value, rather than replace an old one).&lt;br /&gt;
&lt;br /&gt;
* Retire a concept (class &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;): proposal to retire the concept to which it is attached&lt;br /&gt;
&lt;br /&gt;
* Split a concept into two concepts (class &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt;): a proposal to split the concept to which this note is attached into two concepts. The fields are:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
&lt;br /&gt;
''Note: &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt; will probably be a subclass of &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;.''&lt;br /&gt;
&lt;br /&gt;
* Merge this concept with another concept (class &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt;): Merge the selected concept into another concept. The expected side-effect is that the current concept will be retired (Thus, &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt; may need to be a subclass of &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;). The fields are:&lt;br /&gt;
** Merge with (property &amp;lt;tt&amp;gt;changes:targetEntity&amp;lt;/tt&amp;gt;): what to merge the current entity with.&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9345</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9345"/>
		<updated>2009-10-22T01:17:23Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* The class changes:Proposal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
* New hierarchical relationship proposal (class &amp;lt;tt&amp;gt;changes:ChangeHierarchyProposal&amp;lt;/tt&amp;gt;): a proposal to change the location of the class in the hierarchy. It contains the following fields:&lt;br /&gt;
** Hierarchical relationship (property &amp;lt;tt&amp;gt;changes:relationType&amp;lt;/tt&amp;gt;): The hierarchical relationship that needs  to be changed (e.g., part-of or subclass-of)&lt;br /&gt;
** Old parent (property &amp;lt;tt&amp;gt;changes:oldParents&amp;lt;/tt&amp;gt;): the old parent in the hierarchy  (the proposal is usually attached to the old parent; so, by default the value for &amp;lt;tt&amp;gt; changes:oldParents &amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;) &lt;br /&gt;
** New parent (property &amp;lt;tt&amp;gt;changes:newParent&amp;lt;/tt&amp;gt;): where the class should be moved&lt;br /&gt;
** Keep the old parent? (property &amp;lt;tt&amp;gt;changes:moveOrCopy&amp;lt;/tt&amp;gt;): should the proposed new parent be added to the list of parents (copy) or should the old parent be removed and the class should be moved to the new parent (move)?&lt;br /&gt;
&lt;br /&gt;
* Change property value proposal (class &amp;lt;tt&amp;gt;changes:PropertyValueChangeProposal&amp;lt;/tt&amp;gt;): change a value for a property or create a new value. Contains the following fields:&lt;br /&gt;
** New value (property &amp;lt;tt&amp;gt;changes:newValue&amp;lt;/tt&amp;gt;): the new/added value for the property&lt;br /&gt;
** Old value (property &amp;lt;tt&amp;gt;changes:oldValue&amp;lt;/tt&amp;gt;): the property value the new value will be replacing (if any; if this property is false, then it is a proposal to add a new value, rather than replace an old one).&lt;br /&gt;
&lt;br /&gt;
* Retire a concept (class &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;): proposal to retire the concept to which it is attached&lt;br /&gt;
&lt;br /&gt;
* Split a concept into two concepts (class &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt;): a proposal to split the concept to which this note is attached into two concepts. The fields are:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
&lt;br /&gt;
''Note: &amp;lt;tt&amp;gt;changes:SplitProposal&amp;lt;/tt&amp;gt; will probably be a subclass of &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;.''&lt;br /&gt;
&lt;br /&gt;
* Merge this concept with another concept (class &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt;): Merge the selected concept into another concept. The expected side-effect is that the current concept will be retired (Thus, &amp;lt;tt&amp;gt;changes:MergeProposal&amp;lt;/tt&amp;gt; may need to be a subclass of &amp;lt;tt&amp;gt;changes:RetireProposal&amp;lt;/tt&amp;gt;). The fields are:&lt;br /&gt;
&lt;br /&gt;
** Merge with (property &amp;lt;tt&amp;gt;changes:targetEntity&amp;lt;/tt&amp;gt;): what to merge the current entity with.&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9344</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9344"/>
		<updated>2009-10-22T01:09:03Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* The class changes:Proposal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
* New hierarchical relationship proposal (class &amp;lt;tt&amp;gt;changes:ChangeHierarchyProposal&amp;lt;/tt&amp;gt;): a proposal to change the location of the class in the hierarchy. It contains the following fields:&lt;br /&gt;
** Hierarchical relationship (property &amp;lt;tt&amp;gt;changes:relationType&amp;lt;/tt&amp;gt;): The hierarchical relationship that needs  to be changed (e.g., part-of or subclass-of)&lt;br /&gt;
** Old parent (property &amp;lt;tt&amp;gt;changes:oldParents&amp;lt;/tt&amp;gt;): the old parent in the hierarchy  (the proposal is usually attached to the old parent; so, by default the value for &amp;lt;tt&amp;gt; changes:oldParents &amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;) &lt;br /&gt;
** New parent (property &amp;lt;tt&amp;gt;changes:newParent&amp;lt;/tt&amp;gt;): where the class should be moved&lt;br /&gt;
** Keep the old parent? (property &amp;lt;tt&amp;gt;changes:moveOrCopy&amp;lt;/tt&amp;gt;): should the proposed new parent be added to the list of parents (copy) or should the old parent be removed and the class should be moved to the new parent (move)?&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9343</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9343"/>
		<updated>2009-10-22T01:03:08Z</updated>

		<summary type="html">&lt;p&gt;Noy: Added requirements for proposals&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We will use two subclasses of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt;: &lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Proposal&amp;lt;/tt&amp;gt; (and its subclasses) to represent structured proposals &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Proposal&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
Many of the structured notes in BioPortal are '''proposals''' for ontology changes. We represent several types of change proposals:&lt;br /&gt;
&lt;br /&gt;
* New term proposal (class &amp;lt;tt&amp;gt;changes:NewEntityProposal&amp;lt;/tt&amp;gt;): a structured proposal to create a new term in an ontology. It contains the following fields:&lt;br /&gt;
** Generated ID (property &amp;lt;tt&amp;gt;changes:entityID&amp;lt;/tt&amp;gt;): an automatically generated id for the new term that the proposer can use while the ontology curators are adding the term to the ontology&lt;br /&gt;
** Preferred name (property &amp;lt;tt&amp;gt;changes:preferredName&amp;lt;/tt&amp;gt;): preferred name (label) for the new term&lt;br /&gt;
** Synonyms (property &amp;lt;tt&amp;gt;changes:synonyms&amp;lt;/tt&amp;gt;): synonyms for the new term&lt;br /&gt;
** Definition (property &amp;lt;tt&amp;gt;changes:definition&amp;lt;/tt&amp;gt;): proposed definition for the new term&lt;br /&gt;
** Superclass (property &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt;): proposed parents of the new term (the note is usually attached to the proposed parent; so, by default the value for &amp;lt;tt&amp;gt;changes:parent&amp;lt;/tt&amp;gt; is the same as the value for &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;&lt;br /&gt;
** Comment (property &amp;lt;tt&amp;gt;changes:reasonForChange&amp;lt;/tt&amp;gt;): a free-text comment explaining the reason for the proposed change&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9342</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9342"/>
		<updated>2009-10-22T00:51:40Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Representing marginal notes and reviews */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The only subclass of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; that we will currently use is the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
&lt;br /&gt;
== Representing reviews ==&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9341</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9341"/>
		<updated>2009-10-22T00:50:30Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Marginal notes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* the marginal notes created by a particular user&lt;br /&gt;
* the marginal notes of a particular type (e.g., new term proposals)&lt;br /&gt;
* any combination of the above (e.g., ''new term proposals from a user X'')&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9335</id>
		<title>BioPortal REST services</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=BioPortal_REST_services&amp;diff=9335"/>
		<updated>2009-10-19T22:25:09Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Get all concepts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page documents BioPortal Web Service signatures. The list below contains commonly accessed BioPortal Web services and is not intended to be an exhaustive list. If a feature you are interested in is not in the list below, please contact [mailto:support@bioontology.org BioPortal Support] to request the service or ask for more details on the full list of services. &lt;br /&gt;
&lt;br /&gt;
The '''prefix''' for all production service URLs in the table below is http://rest.bioontology.org/bioportal/&lt;br /&gt;
&lt;br /&gt;
* '''Note''': All NCBO REST web service calls MUST append a user identification query parameter with the pattern of &amp;quot;email=UserEmail&amp;quot; (note some clients may need to use URL encoding). For example, email=example@example.org or email=example%40example.org as an encoded email. Please start adding the user identification URL parameter to all your web service invocations. Later in 2009, we may start challenging REST service calls that do not have this parameter.  &lt;br /&gt;
&lt;br /&gt;
* '''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:support@bioontology.org BioPortal Support].''&lt;br /&gt;
&lt;br /&gt;
= Overview - Using NCBO Technology in Your Project =&lt;br /&gt;
See [http://www.bioontology.org/wiki/index.php/Using_NCBO_Technology_In_Your_Project Using NCBO Technology in your Project] for general information and widgets available for use.&lt;br /&gt;
&lt;br /&gt;
= Code Examples = &lt;br /&gt;
*Code examples for the ontology web services, developed in FlexViz, is available at: https://bmir-gforge.stanford.edu/gf/project/flexviz/frs/?action=index. To see the code in action, visit the [http://keg.cs.uvic.ca/ncbo/restservicestest/TestUI.html Test User Interface] that has been set-up using the FlexViz code.&lt;br /&gt;
&lt;br /&gt;
*Code examples for the Annotator and Resources can be found on pages specific for those tools.&lt;br /&gt;
&lt;br /&gt;
= BioPortal Announce Mailing List =&lt;br /&gt;
To receive notices of new BioPortal releases, changes to web services, or planned downtime subscribe to the [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-annouce] list.&lt;br /&gt;
&lt;br /&gt;
= Services to access ontologies and ontology versions =&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of ontologies ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get a specific ontology based on a version id ==&lt;br /&gt;
* '''Signature''':  ./ontologies/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''':  http://rest.bioontology.org/bioportal/ontologies/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download an ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given ontology version id.&lt;br /&gt;
* '''Signature''':   ./ontologies/download/{ontology version id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/download/39002?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Download the latest ontology file ==&lt;br /&gt;
* '''Description''': Download the file (.obo, .owl) corresponding to the given virtual ontology id.&lt;br /&gt;
* '''Signature''':   ./virtual/download/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/download/1090?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all versions of an ontology from a virtual ontology id ==&lt;br /&gt;
* '''Signature''': ./ontologies/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get latest version of an ontology id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2'' &lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology_id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  List all ontology categories ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''':   ./categories?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/categories&lt;br /&gt;
&lt;br /&gt;
==  List all ontology groups ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2''&lt;br /&gt;
* '''Signature''':   ./groups?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/groups&lt;br /&gt;
&lt;br /&gt;
= Services to access ontology views and ontology view versions =&lt;br /&gt;
&lt;br /&gt;
Since all the views on ontologies are ontologies themselves all the services that work on ontologies do &lt;br /&gt;
work for ontology views also with the same signature.&lt;br /&gt;
&lt;br /&gt;
For example to get a specific ontology view based on a version id would be possible by using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/download/{view version id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
or for getting all view versions of a virtual view can be achieved called using the signature:&lt;br /&gt;
&lt;br /&gt;
'''./ontologies/versions/{view id}?email={email_address}'''&lt;br /&gt;
&lt;br /&gt;
However, there are a couple of services that are special for views:&lt;br /&gt;
&lt;br /&gt;
== List all the latest version of views ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Signature''': ./views?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
== Get all versions of views from a virtual ontology id ==&lt;br /&gt;
'''NOTE''': ''To be released in BioPortal version 2.2'' &lt;br /&gt;
* '''Description''': Returns all versions of views defined on the latest version a virtual ontology, grouped by virtual view ids.&lt;br /&gt;
* '''Signature''': ./views/versions/{ontology id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/views/versions/1104?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
= Search services =&lt;br /&gt;
&lt;br /&gt;
==  Search BioPortal ==&lt;br /&gt;
* '''Signature''': ./search/{query}[?{optional args}]&amp;amp;email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/Gene?email=example@example.org&lt;br /&gt;
* 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?email=example@example.org]&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** ontologyids=&amp;lt;ontologyid&amp;gt;,&amp;lt;ontologyid&amp;gt;… - limits the search to specific ontologies (default: all ontologies)&lt;br /&gt;
** isexactmatch=[1/0] – match the entire concept name (default: 0)&lt;br /&gt;
** includeproperties=[1/0] – include attributes in the search (default: 0)&lt;br /&gt;
** pagesize=&amp;lt;pagesize&amp;gt; - the number of results to display in a single request (default: all)&lt;br /&gt;
** pagenum=&amp;lt;pagenum&amp;gt; - the page number to display (pages are calculated using &amp;lt;total results&amp;gt;/&amp;lt;pagesize&amp;gt;) (default: 1)&lt;br /&gt;
** maxnumhits=&amp;lt;maxnumhits&amp;gt; - the maximum number of top matching results to return (default: 1000)&lt;br /&gt;
* '''Description:''' &lt;br /&gt;
The search attempts to match both partial and exact queries, giving more weight to exact matches. In single-word searches, the wildcard character (*) is automatically appended to the end of the word. For example, searching for &amp;quot;lun&amp;quot; would return all concepts whose name contains a word that begins with &amp;quot;lun&amp;quot; (i.e. &amp;quot;Lung&amp;quot;, &amp;quot;Murine Lunate Bone&amp;quot;, &amp;quot;Base of the Lung&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
In phrase searches (multiple words), the wildcard character is appended to the last word. For example, searching for &amp;quot;cutaneous mela&amp;quot; would return all concepts whose name contains the word &amp;quot;cutaneous&amp;quot;, followed by any word that begins with &amp;quot;mela&amp;quot; (i.e. &amp;quot;Cutaneous Melanoma&amp;quot;, &amp;quot;Metastatic Non-Cutaneous Melanoma&amp;quot;, &amp;quot;Cutaneous Melanoma Clinical TNM Finding&amp;quot;, etc).&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/search/software/?ontologyids=1104&amp;amp;isexactmatch=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Sample Output''':&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/search/cutaneous%20mela&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-05-07 16:17:46.182 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;page&amp;gt;&lt;br /&gt;
			&amp;lt;pageNum&amp;gt;1&amp;lt;/pageNum&amp;gt;&lt;br /&gt;
			&amp;lt;numPages&amp;gt;1&amp;lt;/numPages&amp;gt;&lt;br /&gt;
			&amp;lt;pageSize&amp;gt;3&amp;lt;/pageSize&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsPage&amp;gt;3&amp;lt;/numResultsPage&amp;gt;&lt;br /&gt;
			&amp;lt;numResultsTotal&amp;gt;3&amp;lt;/numResultsTotal&amp;gt;&lt;br /&gt;
			&amp;lt;contents&lt;br /&gt;
				class=&amp;quot;org.ncbo.stanford.bean.search.SearchResultListBean&amp;quot;&amp;gt;&lt;br /&gt;
				&amp;lt;searchResultList&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://www.ebi.ac.uk/efo/EFO_0000389&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;EFO_0000389&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							cutaneous melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;cutaneous melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;&lt;br /&gt;
							http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;&lt;br /&gt;
							Cutaneous_Melanoma&lt;br /&gt;
						&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanoma&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;Cutaneous Melanoma&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
					&amp;lt;searchBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;recordType&amp;gt;&lt;br /&gt;
							RECORD_TYPE_PREFERRED_NAME&lt;br /&gt;
						&amp;lt;/recordType&amp;gt;&lt;br /&gt;
						&amp;lt;conceptId&amp;gt;DOID:2418&amp;lt;/conceptId&amp;gt;&lt;br /&gt;
						&amp;lt;conceptIdShort&amp;gt;DOID:2418&amp;lt;/conceptIdShort&amp;gt;&lt;br /&gt;
						&amp;lt;preferredName&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/preferredName&amp;gt;&lt;br /&gt;
						&amp;lt;contents&amp;gt;&lt;br /&gt;
							Cutaneous Melanocytic Neoplasm&lt;br /&gt;
						&amp;lt;/contents&amp;gt;&lt;br /&gt;
					&amp;lt;/searchBean&amp;gt;&lt;br /&gt;
				&amp;lt;/searchResultList&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyHitList&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39715&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1136&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Experimental Factor Ontology&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39833&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1009&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							Human disease&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
					&amp;lt;ontologyHitBean&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyVersionId&amp;gt;39478&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyId&amp;gt;1032&amp;lt;/ontologyId&amp;gt;&lt;br /&gt;
						&amp;lt;ontologyDisplayLabel&amp;gt;&lt;br /&gt;
							NCI Thesaurus&lt;br /&gt;
						&amp;lt;/ontologyDisplayLabel&amp;gt;&lt;br /&gt;
						&amp;lt;numHits&amp;gt;1&amp;lt;/numHits&amp;gt;&lt;br /&gt;
					&amp;lt;/ontologyHitBean&amp;gt;&lt;br /&gt;
				&amp;lt;/ontologyHitList&amp;gt;&lt;br /&gt;
			&amp;lt;/contents&amp;gt;&lt;br /&gt;
		&amp;lt;/page&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Concept services =&lt;br /&gt;
&lt;br /&gt;
==  Get concept  ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all root concepts for an ontology id ==&lt;br /&gt;
* '''Signature''': ./concepts/{ontology version id}/root?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/39002/root?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get concept for latest ontology version id ==&lt;br /&gt;
'''NOTE''': ''This signature will change in BioPortal release 2.2''&lt;br /&gt;
* '''New Signature''': ./virtual/ontology/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''New Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/{ontology id}/{concept id}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/1104/BRO:Resource?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
==  Get all concepts  ==&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./virtual/ontology/{ontology id}/all?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/ontology/1104/all?offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
*** This call will return 10 concepts, starting from position 1.&lt;br /&gt;
&lt;br /&gt;
=  Hierarchy Services =&lt;br /&gt;
&lt;br /&gt;
'''NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs/ontologies''' &lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[parents|children]/{ontlogyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/children/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/concepts/parents/13578/Melanoma?level=1&amp;amp;offset=1&amp;amp;limit=10&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': returns all parents of the concept, with the level indicating how far away the parent is from the concept. For instance, direct parents have level 1; their direct parents have level 2, etc. If no level is specified, the service returns all the levels up to the root. If the level is specified, the service returns only the parents at that level.&lt;br /&gt;
* '''Note:''' These services accept UMLS Abbreviated source name (SAB) for ontologyVersionId and UMLS Unique identifier for concept (CUI) for conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/virtual/parents/MSH/C0025202&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 10:55:33.494 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206769&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;MSH&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;C0206754&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get parents/children of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/[parents|children]/{ontlogyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/children/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
** '''Example''': http://rest.bioontology.org/bioportal/virtual/parents/1009/DOID:1909?level=1&amp;amp;offset=1&amp;amp;limit=3&amp;amp;email=example@example.org&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get paths to roots/leaves from a concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/[rootpath|leafpath]/{ontologyVersionId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs_hibernate/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/rootpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/leafpath/13578/Melanoma?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': return a set of path to the roots (resp. leaves) for a given concept in a specific ontology version. Paths are represented as a list of conceptIds, separated by periods (.) The first one in the list is a root (resp. leaf) in the hierarchy; the last one in the list is the direct parent (resp. direct child) of the concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:''' &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/rootpath/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:06:23.439 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Morphology.Melanocytic_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Melanoma&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Path&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;&lt;br /&gt;
							Getings_and_Disorders_Kind.Diseases_Disorders_and_Getings.Diseases_and_Disorders.Neoplasm.Neoplasm_by_Special_Category.Common_Neoplasm&lt;br /&gt;
						&amp;lt;/string&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get paths to root/leaves from a concept in the latest version of a given ontology  ==&lt;br /&gt;
* '''Signature''': ./virtual/[rootpath|leafpath]/{ontologyId}/{conceptId}[?email={email_address}&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/rootpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/leafpath/1009/DOID:1909?email=example@example.org&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
** limit=&amp;lt;integer&amp;gt; – limits the number of results&lt;br /&gt;
* '''Description''': The same as the previous services, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in a specific ontology version ==&lt;br /&gt;
* '''Signature''': ./concepts/siblings/{ontlogyVersionId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
**NOTE: To see which ontology versions have been processed for use with the Hierarchy services, see http://rest.bioontology.org/obs_hibernate/ontologies &lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/concepts/siblings/13578/Melanoma?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': returns the set of sibling concepts at the given level (i.e., siblings that have the same direct (level=1), grand-parents (level=2), etc.) for a given concept.&lt;br /&gt;
* '''Note:''' These services accepts UMLS Abbreviated source name (SAB) for ontlogyVersionId and UMLS Unique identifier for concept (CUI) fro conceptId.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;&lt;br /&gt;
		/bioportal/concepts/siblings/13578/Melanoma&lt;br /&gt;
	&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-04-21 11:15:13.427 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Germ_Cell_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
			&amp;lt;classBean&amp;gt;&lt;br /&gt;
				&amp;lt;ontologyVersionId&amp;gt;13578&amp;lt;/ontologyVersionId&amp;gt;&lt;br /&gt;
				&amp;lt;id&amp;gt;Common_Hematopoietic_Neoplasm&amp;lt;/id&amp;gt;&lt;br /&gt;
				&amp;lt;relations&amp;gt;&lt;br /&gt;
					&amp;lt;entry&amp;gt;&lt;br /&gt;
						&amp;lt;string&amp;gt;Level&amp;lt;/string&amp;gt;&lt;br /&gt;
						&amp;lt;int&amp;gt;1&amp;lt;/int&amp;gt;&lt;br /&gt;
					&amp;lt;/entry&amp;gt;&lt;br /&gt;
				&amp;lt;/relations&amp;gt;&lt;br /&gt;
			&amp;lt;/classBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==  Get siblings of a given concept in the latest version of a given ontology ==&lt;br /&gt;
* '''Signature''': ./virtual/siblings/{ontlogyId}/{conceptId}?level=&amp;lt;level&amp;gt;&amp;amp;email={email_address}&amp;amp;[&amp;amp;{optional args}]&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/virtual/siblings/1009/DOID:1909?level=1&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** level=&amp;lt;integer&amp;gt; - limits results to a given level in the hierarchy&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** offset=&amp;lt;integer&amp;gt; – results offset (used for pagination)&lt;br /&gt;
* '''Description''': The same as the previous service, but takes an ontology id and returns parents from the latest version of that ontology.&lt;br /&gt;
&lt;br /&gt;
= Annotator Service =&lt;br /&gt;
&lt;br /&gt;
The NCBO Annotator is a Web service that can be used to annotate text metadata with biomedical ontology concepts. The concepts are from ontologies in BioPortal and includes the Unified Medical Language System (UMLS) Metathesaurus, OBO Foundry candidate ontologies and many others. &lt;br /&gt;
&lt;br /&gt;
The Annotator can be tested via a Web interface available through [http://bioportal.bioontology.org/annotate BioPortal]. For more information on using the Annotator Web service, see: http://bioontology.org/wiki/index.php/Annotator_Web_service.&lt;br /&gt;
&lt;br /&gt;
= Resource Index Service =&lt;br /&gt;
&lt;br /&gt;
The Resource Index provides a mechanism to search for biomedical data based on ontology concepts. For more information on using the Resource Index service, see http://www.bioontology.org/wiki/index.php/Resource_Index.&lt;br /&gt;
&lt;br /&gt;
= Prototypes =&lt;br /&gt;
&lt;br /&gt;
== Notes Service ==&lt;br /&gt;
* '''Signature''': ./notes/ont/{ontology_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/notes/ont/1104&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Description''': returns BioPortal Notes as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;records type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt;&lt;br /&gt;
    I note that clinical data is specifically defined not to include clinical trial data. So is anyone already thinking about where at a high level subtrees might be added to deal with clinical trial data and clinical trial management systems? Or is it premature to do that? This is for the CTSAs.&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:21:00&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:21:00&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;75&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38143&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Question&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
  &amp;lt;record&amp;gt;&lt;br /&gt;
    &amp;lt;comment&amp;gt; Not sure I follow the argument here.&amp;amp;nbsp; Clinical trial data is covered under PHI so no distinction there.&amp;amp;nbsp; Data generated in the course of delivering routine standard of care may be needed in the course of a clinical trial.&amp;amp;nbsp; Does this make clinical trial data an overlapping superset of clinical data?&lt;br /&gt;
    &amp;lt;/comment&amp;gt;&lt;br /&gt;
    &amp;lt;created-at&amp;gt;2008-08-07 11:24:04&amp;lt;/created-at&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-id&amp;gt;1104&amp;lt;/ontology-id&amp;gt;&lt;br /&gt;
    &amp;lt;updated-at&amp;gt;2008-08-07 11:24:04&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-id nil=&amp;quot;true&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;subject&amp;gt;RE:Including clinical trial data as clinical data&amp;lt;/subject&amp;gt;&lt;br /&gt;
    &amp;lt;id&amp;gt;76&amp;lt;/id&amp;gt;&lt;br /&gt;
    &amp;lt;user-id&amp;gt;38144&amp;lt;/user-id&amp;gt;&lt;br /&gt;
    &amp;lt;parent-id&amp;gt;75&amp;lt;/parent-id&amp;gt;&lt;br /&gt;
    &amp;lt;ontology-version-id&amp;gt;38407&amp;lt;/ontology-version-id&amp;gt;&lt;br /&gt;
    &amp;lt;concept-id&amp;gt;BRO:Clinical_Data&amp;lt;/concept-id&amp;gt;&lt;br /&gt;
    &amp;lt;note-type&amp;gt;Comment&amp;lt;/note-type&amp;gt;&lt;br /&gt;
  &amp;lt;/record&amp;gt;&lt;br /&gt;
&amp;lt;/records&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Mapping Service ==&lt;br /&gt;
* '''Signature''': ./mappings/service/{ontology_id}/{concept_id}&lt;br /&gt;
* '''Example''': http://bioportal.bioontology.org/mappings/service/1083/&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** ontology_id&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** concept_id=if concept_id is included, the service will return all mappings to and from the given concept&lt;br /&gt;
* '''Description''': returns BioPortal Mappings as XML. This is a prototype web service, for updates subscribe to [https://mailman.stanford.edu/mailman/listinfo/bioportal-announce bioportal-announce]&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;hash&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-from type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:25:23&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbon&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:27594&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98216&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbon&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbon&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;   &lt;br /&gt;
    &amp;lt;mapping-from&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:27:05&amp;lt;/created-at&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Gold&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;CHEBI:29287&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98218&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;Chemical entities of biological interest&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Gold&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1007&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Gold&amp;lt;/source-id&amp;gt;&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;38377&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-from&amp;gt;&lt;br /&gt;
  &amp;lt;mapping-to type=&amp;quot;array&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;mapping-to&amp;gt;&lt;br /&gt;
      &amp;lt;comment nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/comment&amp;gt;&lt;br /&gt;
      &amp;lt;map-type&amp;gt;Human&amp;lt;/map-type&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;created-at&amp;gt;2008-05-09 08:35:27&amp;lt;/created-at&amp;gt;&lt;br /&gt;
      &amp;lt;updated-at&amp;gt;2008-08-05 17:26:06&amp;lt;/updated-at&amp;gt;&lt;br /&gt;
      &amp;lt;source-name&amp;gt;Carbohydrate&amp;lt;/source-name&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/source-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-id&amp;gt;Carbohydrate&amp;lt;/destination-id&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;98219&amp;lt;/id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;user-id&amp;gt;38139&amp;lt;/user-id&amp;gt;&lt;br /&gt;
      &amp;lt;relationship-type nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/relationship-type&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont-name&amp;gt;NanoParticle Ontology (NPO)&amp;lt;/destination-ont-name&amp;gt;&lt;br /&gt;
      &amp;lt;destination-name&amp;gt;Carbohydrate&amp;lt;/destination-name&amp;gt;&lt;br /&gt;
      &amp;lt;map-source nil=&amp;quot;true&amp;quot;&amp;gt;&amp;lt;/map-source&amp;gt;&lt;br /&gt;
      &amp;lt;destination-ont&amp;gt;1083&amp;lt;/destination-ont&amp;gt;&lt;br /&gt;
      &amp;lt;source-id&amp;gt;Carbohydrate&amp;lt;/source-id&amp;gt;&lt;br /&gt;
&lt;br /&gt;
      &amp;lt;destination-version-id&amp;gt;29531&amp;lt;/destination-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-version-id&amp;gt;29531&amp;lt;/source-version-id&amp;gt;&lt;br /&gt;
      &amp;lt;source-ont&amp;gt;1083&amp;lt;/source-ont&amp;gt;&lt;br /&gt;
    &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
  &amp;lt;/mapping-to&amp;gt;&lt;br /&gt;
&amp;lt;/hash&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
= Usage Logging =&lt;br /&gt;
* '''Signature''': ./usage?{args}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/usage?requesturl=ontologies&amp;amp;resourceparameters=13578&amp;amp;email=example@example.org&lt;br /&gt;
* '''Required arguments:''' &lt;br /&gt;
** none specifically, but at least one optional argument is required&lt;br /&gt;
* '''Optional arguments:''' &lt;br /&gt;
** requesturl=&amp;lt;string contained in request url&amp;gt; – limit results to a given string contained in REST service request url. Unique values for the requesturl are: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  /categories&lt;br /&gt;
  /concepts/{ontology version id}/{concept id}&lt;br /&gt;
  /concepts/{children or leafpath or parents or siblings}/{ontology version id}/{concept id}&lt;br /&gt;
  /diffs/{virtual id}&lt;br /&gt;
  /ontologies/{ontology version id} &lt;br /&gt;
  /ontologies/download/{ontology version id}&lt;br /&gt;
  /ontologies/versions/{ontology virtual id}&lt;br /&gt;
  /path/{ontology version id}/{concept id}&lt;br /&gt;
  /search/{search terms}&lt;br /&gt;
  /virtual/{virtual id}&lt;br /&gt;
  /virtual/ontology/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/rootpath/{virtual id}/{concept id}&lt;br /&gt;
  /virtual/siblings/{virtual id}/{concept id}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
** resourceparameters=&amp;lt;string contained in resource parameters&amp;gt; – limit results to a given string contained in resource parameters. For example, in the URL http://rest.bioontology.org/bioportal/search/melanoma, the word &amp;quot;melanoma&amp;quot; is considered a &amp;quot;resource parameter&amp;quot;.&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given starting date (default: no starting date)&lt;br /&gt;
** startdateaccessed=&amp;lt;date in format mm/dd/yyyy&amp;gt; – limit results to the given ending date (default: today's date)&lt;br /&gt;
* '''Description''': returns BioPortal REST services usage data as XML.&lt;br /&gt;
* '''Sample Output:'''&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
	&amp;lt;accessedResource&amp;gt;/bioportal/usage&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
	&amp;lt;accessDate&amp;gt;2009-07-27 14:21:19.728 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
	&amp;lt;data&amp;gt;&lt;br /&gt;
		&amp;lt;list&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;&lt;br /&gt;
					/search/Certain infectious and parasitic diseases/&lt;br /&gt;
				&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Certain%20infectious%20and%20parasitic%20diseases&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;1&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Hypertension/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;&lt;br /&gt;
					query=Hypertension&lt;br /&gt;
				&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;2&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
			&amp;lt;usageLoggingBean&amp;gt;&lt;br /&gt;
				&amp;lt;requestUrl&amp;gt;/search/Melanoma/&amp;lt;/requestUrl&amp;gt;&lt;br /&gt;
				&amp;lt;httpMethod&amp;gt;GET&amp;lt;/httpMethod&amp;gt;&lt;br /&gt;
				&amp;lt;resourceParameters&amp;gt;query=Melanoma&amp;lt;/resourceParameters&amp;gt;&lt;br /&gt;
				&amp;lt;requestParameters&amp;gt;&lt;br /&gt;
					pagenum=1&amp;amp;ontologyids=1265&amp;amp;pagesize=20&lt;br /&gt;
				&amp;lt;/requestParameters&amp;gt;&lt;br /&gt;
				&amp;lt;hitCount&amp;gt;3&amp;lt;/hitCount&amp;gt;&lt;br /&gt;
				&amp;lt;dateAccessed class=&amp;quot;sql-timestamp&amp;quot;&amp;gt;&lt;br /&gt;
					2009-07-27 00:00:00.0&lt;br /&gt;
				&amp;lt;/dateAccessed&amp;gt;&lt;br /&gt;
			&amp;lt;/usageLoggingBean&amp;gt;&lt;br /&gt;
		&amp;lt;/list&amp;gt;&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9308</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9308"/>
		<updated>2009-10-16T00:57:28Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Representing Metrics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes and reviews ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The only subclass of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; that we will currently use is the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
''Please refer to the [[Ontology Metrics]] page for the details of metrics representation in BioPortal.''&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9307</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9307"/>
		<updated>2009-10-16T00:56:09Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Storing metrics in BioPortal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we ''do not'' generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
== Metrics computation and ontology metadata ==&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Representing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9306</id>
		<title>Architecture</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Architecture&amp;diff=9306"/>
		<updated>2009-10-16T00:55:45Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Representing Mappings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= The General Architecture For Representing Metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
[[image:Ontology-knowledgebase.jpg|frame|&amp;lt;span id=&amp;quot;architecture&amp;quot;&amp;gt;'''The general architecture of the metadata representation in BioPortal.''' There are two main components:  (1) the &lt;br /&gt;
[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl BioPortal Metadata ontology] defines the types of metadata that BioPortal represents; (2) The [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl BioPortal Metadata knowledge base] imports the BioPortal Metadata ontology and contains the instances of its classes corresponding to the specific metadata values.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Ontologies.jpg|frame|&amp;lt;span id=&amp;quot;ontologies&amp;quot;&amp;gt;'''The set of ontologies and key classes for representing metadata in Bioportal'''. The BioPortal Metadata ontology is just another ontology in BioPortal. It imports the OMV ontology, the Protege changes ontology, and the Protege mappings ontology. The figure shows some key classes in the Bioportal Metadata ontology in the ones it imports, as well as some key relations between them.&amp;lt;/span&amp;gt;]] &lt;br /&gt;
[[image:Instances.jpg|frame|&amp;lt;span id=&amp;quot;instances&amp;quot;&amp;gt;'''Example of Metadata instances.''' Metadata instances describing two versions of the FMA and a view of the FMA&amp;lt;/span&amp;gt;]] &lt;br /&gt;
&lt;br /&gt;
We describe the types of metadata that BioPortal has and the representation of this metadata in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl '''BioPortal Metadata ontology''']. This ontology contains classes corresponding to the description of ontology metadata, mappings, reviews, marginal notes, projects, and users. The classes define specific properties for each type of metadata and the links between them. &lt;br /&gt;
&lt;br /&gt;
The concrete metadata that users contribute to BioPortal is represented in the [http://protege.stanford.edu/ontologies/metadata/BioPortalMetadataKnowledgeBase.owl '''BioPortal Metadata Knowledge Base'''] (see the [[#instances|example in the figure]]). This knowledge base does not define any classes, it simply imports the BioPortal Metadata Ontology (the [[#architecture|Architecture figure shows the overall architecture]]). The knowledge base contains instances of the classes defined in that ontology.&lt;br /&gt;
When a service or another API call requests metadata information, the implementation queries the BioPortal Metadata Knowledge Base for the corresponding instance information. &lt;br /&gt;
&lt;br /&gt;
We process the BioPortal Metadata ontology in exactly the same way as we process all other ontologies in BioPortal: it is represented in the BioPortal index, users can comment on it and reference it. The BioPortal Metadata Knowledge Base is also an OWL ontology, but it has a special status and BioPortal user interface does not directly display it in Bioportal. Instead, it queries it whenever it needs to access any metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata Ontology  ontology imports three other OWL ontologies:&lt;br /&gt;
# The '''Ontology Metadata Vocabulary (OMV)''' describes most of the metadata for ontologies themselves (e.g., domain, author, version number, ontology language, etc.)&lt;br /&gt;
# The '''Protégé Changes ontology''' provides the definitions for generic annotations (the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class) and ontology components that they annotate.&lt;br /&gt;
# The '''Mappings ontology''' provides vocabulary for describing one-to-one mappings between concepts and corresponding metadata&lt;br /&gt;
&lt;br /&gt;
The BioPortal Metadata ontology, by importing these three ontologies, can use all the classes and definitions from there and extend these definitions. The specific metadata is represented as instances of corresponding classes.&lt;br /&gt;
&lt;br /&gt;
= The BioPortal Metadata Ontology =&lt;br /&gt;
&lt;br /&gt;
The following ontologies are available for download and direct access at the Protege web site:&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/metadata/BioPortalMetadata.owl   The BioPortal Metadata ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/ChAO/changes.rdfs   The Changes ontology]'''&lt;br /&gt;
* '''[http://protege.stanford.edu/ontologies/mappings/mappings.rdfs   The Mappings ontology]'''&lt;br /&gt;
&lt;br /&gt;
= Classes and properties in the BioPortal Metadata ontology =&lt;br /&gt;
We will now describe some key classes used to represent metadata. &lt;br /&gt;
&lt;br /&gt;
== Representing ontology metadata and provenance information ==&lt;br /&gt;
&lt;br /&gt;
The metadata about ontologies themselves is represented mostly using the OMV vocabulary (namespace prefix “OMV”). OMV is the ontology developed jointly with the NeON consortium and accounts for much of the ontology metadata, including provenance information, static values (number of classes, etc.), licensing information, and so on. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
The main class in OMV is &amp;lt;tt&amp;gt;'''OMV:Ontology'''&amp;lt;/tt&amp;gt;. It contains a set of metadata for a particular version of the ontology. Some properties of interest, among others, are:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;...&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We also add some instances for ontology engineering tools and methodologies to account for OBO ontologies (OBO-Edit tool and the DAG ontology structure) and to include the OBO Foundry, caBIG, and others as endorsing organizations.&lt;br /&gt;
&lt;br /&gt;
=== The  class &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''VirtualOntology'''&amp;lt;/tt&amp;gt; collects the information about each virtual ontology in the repository, all its versions and views. There is one instance of the &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class for each virtual ontology in BioPortal. Each such instance has the following properties: &lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the ontology;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the ontology (e.g., “NCI Thesaurus&amp;quot;); we don’t technically have to have it as we can get it from the current version, but it may be useful to have it here for convenience (but need to remember to update it) &lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this ontology; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the views of this virtual ontology&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual ontology&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt;===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''Project'''&amp;lt;/tt&amp;gt; contains the information about each project. This information is represented as instances of the &amp;lt;tt&amp;gt; Project &amp;lt;/tt&amp;gt; class. Each project has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;projectName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;institution&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;homepage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;administrator&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;User&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasContactInformation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;usesOntologies&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;BioPortalUser&amp;lt;/tt&amp;gt; extends the class &amp;lt;tt&amp;gt;OMV:Person&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;foaf:Person&amp;lt;/tt&amp;gt;. In addition, each user has the following properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;userName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdReviews&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMarginalNotes&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;createdMappings&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;mappings:Mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Representing marginal notes and reviews ==&lt;br /&gt;
&lt;br /&gt;
'''Marginal notes and ontology reviews''' instances contain the content of the notes and reviews, their types, and the provenance information for them. The '''Protégé Changes ontology''' provides several key classes for representing ontology components and annotations and we extend these classes with several classes and properties relevant to BioPortal:&lt;br /&gt;
&lt;br /&gt;
[[image:Change-classes.jpg|frame|&amp;lt;span id=&amp;quot;change-classes&amp;quot;&amp;gt;'''Classes for annotations and objects that can be annotated.''' Classes in white boxes are imported from the Protégé changes ontology. Classes in grey boxes are added in the BioPortal Metadata ontology.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
The classes and properties below  describe annotations&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; represents anything that can be annotated, including ontology components, ontologies themselves, mappings, other annotations, etc. This class has the following key property:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;) links to all annotations that are associates with this object&lt;br /&gt;
&lt;br /&gt;
The subclasses of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:OntologyComponent&amp;lt;/tt&amp;gt; (represents classes and properties; we will use this class to encapsulate how we address individual classes and properties)&lt;br /&gt;
* the class &amp;lt;tt&amp;gt;Ontology&amp;lt;/tt&amp;gt; added in the BioPortal Metadata ontology to represent ontology as a whole as a target of a review&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;, includes marginal notes and reviews. &lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
Instances of the class &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt; represent reviews and marginal notes, as well as notes on mappings and other reviews. For now, marginal notes will be direct instances of &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; because we do not distinguish between different types of marginal notes, such as questions or proposals. This class has the following key properties:&lt;br /&gt;
* &amp;lt;tt&amp;gt;changes:annotates&amp;lt;/tt&amp;gt;, which is the inverse of the property &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt;. This property has instances of &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as its value. Thus, it refers to the exact version of a concept or an ontology for which annotation has been created.&lt;br /&gt;
* &amp;lt;tt&amp;gt;annotatesByVirtualID&amp;lt;/tt&amp;gt; contains the virtual id for the ontology or the concept that this annotation annotates. We need this property for efficient retrieval so that we can query by the id.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The only subclass of the class &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; that we will currently use is the class &amp;lt;tt&amp;gt;Review&amp;lt;/tt&amp;gt; that represents the reviews of the ontologies (see below).&lt;br /&gt;
&lt;br /&gt;
=== The class  &amp;lt;tt&amp;gt;bpMetadata:Review &amp;lt;/tt&amp;gt; ===&lt;br /&gt;
[[image:EvaluationDimension.jpg|frame|&amp;lt;span id=&amp;quot;review&amp;quot;&amp;gt;'''Representing a single ontology review with several dimensions''' &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
A class &amp;lt;tt&amp;gt;bpMetadata:Review&amp;lt;/tt&amp;gt; is  a subclass of &amp;lt;tt&amp;gt;changes:Annotation&amp;lt;/tt&amp;gt;. This class represents reviews of an ontology as a whole. Each review contains ratings and comments along each of the dimensions specified as the evaluation dimensions (class &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt;, with two properties: &amp;lt;tt&amp;gt;numericRating&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;textualReview&amp;lt;/tt&amp;gt;). It has the following properties, in addition to the provenance ones inherited from the &amp;lt;tt&amp;gt;Annotation&amp;lt;/tt&amp;gt; class:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;inTheContextOfProject&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Project&amp;lt;/tt&amp;gt;; inverse property:&amp;lt;tt&amp;gt; ontologyReviews&amp;lt;/tt&amp;gt;) indicates that a review was created in the context of a particular project&lt;br /&gt;
* the range for the property &amp;lt;tt&amp;gt;annotates&amp;lt;/tt&amp;gt; is restricted to &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;&lt;br /&gt;
*A property for each of the review dimensions. These properties are all subproperties of the property reviewOnDimension (range: &amp;lt;tt&amp;gt;EvaluationDimension&amp;lt;/tt&amp;gt; (see [[#review| figure]])):&lt;br /&gt;
** &amp;lt;tt&amp;gt;digreeOfFormalityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;documentationAndSupportReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;usabilityReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;domainCoverageReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;correctnessReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;qualityOfContentReview&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This list of properties can be changed or extended, and, thus, other implementations can custom-tailor the dimensions. Each property has an annotation property &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt; that contains a string that will be displayed for this dimension (e.g., &amp;quot;Domain coverage&amp;quot;). If the order in which these dimensions appear is important, the developers will need to update the Constant &amp;lt;tt&amp;gt;Names.DIMENSIONS&amp;lt;/tt&amp;gt; in the code.&lt;br /&gt;
&lt;br /&gt;
== Representing Mappings == &lt;br /&gt;
The '''Mappings ontology''' represents different types of mappings and the corresponding metadata. More details on the mapping metadata in a separate document. We define the mapping ontology for BioPortal to represent one-to-one mappings. &lt;br /&gt;
This ontology has the key classes described below.&lt;br /&gt;
[[image:MappingOntologyAndInstances.jpg|frame|&amp;lt;span id=&amp;quot;mappings&amp;quot;&amp;gt;'''Mappings and the mapping metadata.''' Note that we may choose to represent the source and target of mapping as an instance of &amp;lt;tt&amp;gt;changes:Ontology_Component&amp;lt;/tt&amp;gt; to factor out the way that we use to refer to specific versions of concepts &amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:One_to_one_mapping&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:One_to_one_mapping'''&amp;lt;/tt&amp;gt; represents a mapping between any two concepts (usually, from different ontologies) It has the following properties (all in the &amp;lt;tt&amp;gt;mappings&amp;lt;/tt&amp;gt; namespace:&lt;br /&gt;
* &amp;lt;tt&amp;gt;source&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;target&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;relation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;mapping_metadat&amp;lt;/tt&amp;gt;a (range: &amp;lt;tt&amp;gt;Mapping_Metadata&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;mappings:Mapping_Metadata&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
A class &amp;lt;tt&amp;gt;'''mappings:Mapping_Metadata'''&amp;lt;/tt&amp;gt; represents the metadata about each mapping:&lt;br /&gt;
* &amp;lt;tt&amp;gt;applicationContext&amp;lt;/tt&amp;gt; (range: String)&lt;br /&gt;
* &amp;lt;tt&amp;gt;authority&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;Authority&amp;lt;/tt&amp;gt;, a class with two subclasses &amp;lt;tt&amp;gt;Authority_Algorithm&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;Authority_Manual&amp;lt;/tt&amp;gt;; the former contains the details of the algorithm)&lt;br /&gt;
* &amp;lt;tt&amp;gt;comment&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;date&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;dependency&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;One_to_one_mapping&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;externalReferences&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;submittedBy&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
* &amp;lt;tt&amp;gt;verified&amp;lt;/tt&amp;gt; (range: ''undefined'')&lt;br /&gt;
Note that we change the range for &amp;lt;tt&amp;gt;mappings:source&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;mappings:target&amp;lt;/tt&amp;gt; to be &amp;lt;tt&amp;gt; changes:Ontology_Component&amp;lt;/tt&amp;gt;. Thus, we will re-use whatever solution we choose to represent targets of annotations. &lt;br /&gt;
Because one can also add comments to mappings, we add &amp;lt;tt&amp;gt;changes:AnnotatableThing&amp;lt;/tt&amp;gt; as another superclass of the class &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;. Thus, &amp;lt;tt&amp;gt;One_To_One_Mapping&amp;lt;/tt&amp;gt;  now has &amp;lt;tt&amp;gt;changes:associatedAnnotations&amp;lt;/tt&amp;gt; as one of its properties.&lt;br /&gt;
&lt;br /&gt;
== Representing Metrics ==&lt;br /&gt;
&lt;br /&gt;
== Representing Views == &lt;br /&gt;
&lt;br /&gt;
We treat a view as an ontology and therefore the representation of views parallels the representation of ontologies themselves. &lt;br /&gt;
[[image:ViewClasses.jpg|frame|&amp;lt;span id=&amp;quot;viewClasses&amp;quot;&amp;gt;'''Classes representing views and their versions.''' The classes for representing views are subclasses of the ontology classes. Inherited properties are represented as dotted lines.&amp;lt;/span&amp;gt;]]&lt;br /&gt;
The representation described here is flexible enough to address all &lt;br /&gt;
[http://www.bioontology.org/wiki/index.php/Requirements#Views the requirements] that we identified. While the representation is somewhat complex to allow the full flexibility (views on views, versions of views, etc.), the user interface will hide most of the complexity.&lt;br /&gt;
&lt;br /&gt;
Just as we have a [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class] as a container for all versions of a particular ontology, we have a class '''&amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;''' to represent a container of all versions of a particular view. For example, we can have a &amp;quot;Liver&amp;quot; view of the FMA. The instance of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; class  will point to all specific versions of the view. These specific versions are instances of the class '''&amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;''', which is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class]. Each instance of &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; (i.e., a specific version of the view), points to the specific version of the &amp;quot;base&amp;quot; ontology that was used to create this view.&lt;br /&gt;
&lt;br /&gt;
The two figures to the right show [#viewClasses|the key classes] in representing the views, and an example of [#viewInstances|a set of instances] that instantiate these classes. The color of the box for the instance in the second figure is the same as the color of its class in the first figure.&lt;br /&gt;
[[image:ViewInstances.jpg|frame|&amp;lt;span id=&amp;quot;viewInstances&amp;quot;&amp;gt;'''Instances representing a &amp;quot;Liver&amp;quot;  view and its versions.''' &amp;lt;/span&amp;gt;]] There is a &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; instance that contains the collections of all the versions of this view. Some of the versions of the view were created using v.1.0 of the FMA. One version of the Liver view was created using v2.0 of the FMA.&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; is the main class that represents the metadata about a specific version of the view.&lt;br /&gt;
This class is a subclass of the class [http://www.bioontology.org/wiki/index.php/Architecture#The_class_OMV:Ontology &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt;], which represents the metadata about a specific version of an ontology. Any specific version of a view is fundamentally just an ontology; thus it inherits all the metadata properties of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class (copied below for convenience):&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;name&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;acronym &amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;creationDate&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;description&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;documentation&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URL&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;endorsedBy&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OMV:Party&amp;lt;/tt&amp;gt;)&lt;br /&gt;
** one of the instances to fill in this value is OBOFoundry, an instance of &amp;lt;tt&amp;gt;OMV:Organisation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;domain&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyLanguage&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keyClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;keywords&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In addition to inheriting all the metadata properties from that describe all BioPortal ontologies, we need to provide additional metadata for each version of a view:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinition&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) has the textual representation of the view definition. This definition can be a query that was used to create the view, a set of traversal directive (as in Prompt), or any other way that specifies how the view was extracted. (''Question:'' is the type &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt; sufficient here or will we need something more structured?)&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewDefinitionLanguage&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewDefinitionLanguage&amp;lt;/tt&amp;gt;) defines the language that was used to define the view (e.g., the query language, such as SPARQL, for a view that was generated by a query). The instance of the class &amp;lt;tt&amp;gt; ViewDefinitionLanguage &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the language (name, creator, url) as well as the specific version that was used for the view.&lt;br /&gt;
* &amp;lt;tt&amp;gt;viewGenerationEngine&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;ViewGenerationEngine&amp;lt;/tt&amp;gt;) defines the engine that was used to compute the view. The instance of the class &amp;lt;tt&amp;gt; ViewGenerationEngine &amp;lt;/tt&amp;gt; will have all the pertinent attribute of the engine (name, creator, url) as well as the specific version that was used to generate the view.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; ===&lt;br /&gt;
&lt;br /&gt;
The class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt; collects the information about all the versions of a particular view. This class is a subclass of the [http://www.bioontology.org/wiki/index.php/Architecture#The__class_VirtualOntology &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt; class]. Thus, it inherits all of its properties. However, we restrict the range of values for the properties &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; to instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class. Here is the summary of the inherited properties for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;, with the corresponding restrictions:&lt;br /&gt;
* &amp;lt;tt&amp;gt;currentVersion&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) is a pointer to the metadata describing the current version of the view;&lt;br /&gt;
* &amp;lt;tt&amp;gt;ontologyName&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;String&amp;lt;/tt&amp;gt;) provides a name for the view (e.g., “Liver view for radiology&amp;quot;)&lt;br /&gt;
* &amp;lt;tt&amp;gt;virtualURI&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;URI&amp;lt;/tt&amp;gt;) provide a virtual URI for this view; it could also be an ontology ID, as used in BioPortal now&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasView&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the views of this view (i.e., views on views)&lt;br /&gt;
* &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt; (range &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt;) provides a collection of instances of the &amp;lt;tt&amp;gt;OntologyView&amp;lt;/tt&amp;gt; class corresponding to the versions of this virtual view&lt;br /&gt;
&lt;br /&gt;
There is also one additional property defined for the class &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;:&lt;br /&gt;
* &amp;lt;tt&amp;gt;isVirtualViewOf&amp;lt;/tt&amp;gt; (range: &amp;lt;tt&amp;gt;VirtualOntology&amp;lt;/tt&amp;gt;) is a pointer to the &amp;quot;base&amp;quot; ontology or ontologies from which the view is created (e.g., FMA). Note that we may later decide not to use this property as there may be a situation as the set of &amp;quot;base&amp;quot; ontologies is different for different versions of the view. For instance, one version is a view on FMA; but then we extend this version and join it with some classes from NCI Thesaurus. If we want to allow for such evolution, then we don't want to store the &amp;quot;base&amp;quot; ontology  (or ontologies) at the level of the &amp;lt;tt&amp;gt;VirtualView&amp;lt;/tt&amp;gt;. We can always infer this information from the specific versions that we access through the property &amp;lt;tt&amp;gt;hasVersion&amp;lt;/tt&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9305</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9305"/>
		<updated>2009-10-16T00:54:59Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Accessing the metrics of an ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described on the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9304</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9304"/>
		<updated>2009-10-16T00:54:48Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Accessing the metrics of an ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
** Specific metrics are described in the [[Ontology Metrics]] page&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=OntologyMetrics&amp;diff=9303</id>
		<title>OntologyMetrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=OntologyMetrics&amp;diff=9303"/>
		<updated>2009-10-16T00:54:37Z</updated>

		<summary type="html">&lt;p&gt;Noy: OntologyMetrics moved to Ontology Metrics: Easier linking.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Ontology Metrics]]&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9302</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9302"/>
		<updated>2009-10-16T00:54:37Z</updated>

		<summary type="html">&lt;p&gt;Noy: OntologyMetrics moved to Ontology Metrics: Easier linking.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we ''do not'' generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
== Metrics computation and ontology metadata ==&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Storing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9301</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9301"/>
		<updated>2009-10-16T00:52:38Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Accessing the metrics of an ontology version */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
* the metrics should be computed when the ontology is loaded into BioPortal&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9300</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9300"/>
		<updated>2009-10-16T00:52:19Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Submitting a new ontology */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Accessing the metrics of an ontology version ==&lt;br /&gt;
* get all available metrics for a specific ontology version&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9299</id>
		<title>Requirements</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Requirements&amp;diff=9299"/>
		<updated>2009-10-16T00:51:16Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Types of metadata in BioPortal */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
This document is part of [[BioPortal_Metadata|a series of documents describing the representation of metadata in BioPortal]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
We discuss two types of requirements for handling metadata in BioPortal: &lt;br /&gt;
#	the '''functional  requirements''' are the set of calls from the user-interface (and web services) that metadata must support; &lt;br /&gt;
#	the '''architectural requirements''' address the structure and evolution of metadata.&lt;br /&gt;
&lt;br /&gt;
Functional requirements include support for all the current functionality for the metadata use in BioPortal and the future use that we are envisioning in various scenarios and use cases. Specific details on functional requirements are outlined here. &lt;br /&gt;
&lt;br /&gt;
The following are the architectural requirements: &lt;br /&gt;
* Represent metadata as ontology instances&lt;br /&gt;
* Download metadata (and its various subsets) in RDF&lt;br /&gt;
* Be able to update the metadata ontologies “on the fly”&lt;br /&gt;
** Incremental updates, such as adding new properties, should be a simple “swap” of the metadata schema (the metadata ontology), without having to change any of the instances&lt;br /&gt;
* Be flexible about which properties show up on the ontology metadata page and on the columns in the table on the “Browse” page (The metadata ontology itself will define the set of these metadata features. Thus, other groups that wish to install BioPortal locally will need to customize only the metadata ontology in order to custom-tailor their installations.)&lt;br /&gt;
&lt;br /&gt;
= Types of metadata in BioPortal = &lt;br /&gt;
&lt;br /&gt;
We represent the following types of metadata in BioPortal:&lt;br /&gt;
# '''Ontology metadata''' (e.g., the ontology domain and coverage, provenance information, version information, additional references);&lt;br /&gt;
# '''Ontology metrics''' (mostly computable metrics such as the number of classes, etc.)&lt;br /&gt;
# '''Mappings''' between concepts in different ontologies;&lt;br /&gt;
# '''Ontology reviews''' along different review dimensions (e.g., domain coverage, usability, quality of content, etc.);&lt;br /&gt;
# '''Marginal notes''' on concepts and mappings in the ontologies containing users’ comments, questions, and discussions;&lt;br /&gt;
# '''Projects''' that use ontologies in BioPortal &lt;br /&gt;
# BioPortal '''Users'''&lt;br /&gt;
&lt;br /&gt;
These different types of metadata are inter-linked. For example, each user is characterized by the metadata that they contribute; reviews can be created in the context of a particular projects; marginal notes can be attached to mappings.&lt;br /&gt;
&lt;br /&gt;
= Glossary = &lt;br /&gt;
'''Virtual ontologies''': the list of ontologies in the repository, with one entry per each “logical” ontology. Basically, the list that appears on the “Browse” page in BioPortal (see [[#browse_page_figure|Figure]]).&lt;br /&gt;
&lt;br /&gt;
'''Core metadata properties''': metadata properties that appear on the [[#ontology_metadata_page_figure|&amp;quot;Ontology metadata” page]]. Not all properties associated with the ontology will generally appear there, as there are many minor ones that we don’t always want to display. Perhaps there can be a “more details” page that shows those.&lt;br /&gt;
&lt;br /&gt;
'''Summary metadata properties''': metadata properties that appear in the columns of the table on the “Browse” page and in the columns for versions and views on the metadata page for each ontology&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
[[image:BrowsePage.jpg|thumb|right|&amp;lt;span id=&amp;quot;browse_page_figure&amp;quot;&amp;gt;The &amp;quot;Browse&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:OntologyMetadataPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;ontology_metadata_page_figure&amp;quot;&amp;gt;The &amp;quot;Ontology metadata&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
[[image:ReviewsPage.jpg|thumb|right|&amp;lt;span id=&amp;quot;project_and_reviews_page_figure&amp;quot;&amp;gt;The &amp;quot;Project and reviews&amp;quot; page in Bioportal&amp;lt;/span&amp;gt;]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= Functional Requirements =&lt;br /&gt;
&lt;br /&gt;
Metadata drives much of the BioPortal user interface, with the exception of  the display of the ontologies themselves. The list below is not exhaustive and we expect it to grow. However, it does cover major categories of requirements and some details on each. In the section on [[Implementation Details]], we provide details on the implementation for all these calls.&lt;br /&gt;
&lt;br /&gt;
== Browse ontologies (as in [[#browse_page_figure|the “Browse” tab of BioPorta]]) ==&lt;br /&gt;
* get all virtual ontologies&lt;br /&gt;
* for each virtual ontology, get the summary properties to fill in the rest of the table:&lt;br /&gt;
** name&lt;br /&gt;
** version&lt;br /&gt;
** author&lt;br /&gt;
** uploaded on&lt;br /&gt;
** url&lt;br /&gt;
&lt;br /&gt;
== Ontology metadata ([[#ontology_metadata_page_figure|in ontology metadata page]]) ==&lt;br /&gt;
* display property-value pairs for the core metadata properties&lt;br /&gt;
* get a list of all views for the ontology &lt;br /&gt;
** for each view, get the summary properties, such as description, version number, status, url&lt;br /&gt;
* get a list of all versions for the ontology &lt;br /&gt;
** for each version, get the summary properties, such as description, version number, status, url&lt;br /&gt;
&lt;br /&gt;
== Submitting a new version of an ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the UI widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Submitting a new ontology ==&lt;br /&gt;
* get a list of core properties and their ranges (the range determines the widget)&lt;br /&gt;
** in order&lt;br /&gt;
* create a new metadata instance describing this ontology version&lt;br /&gt;
** and set property values&lt;br /&gt;
&lt;br /&gt;
== Search ==&lt;br /&gt;
* get a list of virtual ontologies to provide filters for search&lt;br /&gt;
&lt;br /&gt;
== Recent items ==&lt;br /&gt;
* provide the list of recent ontology uploads&lt;br /&gt;
* provide the list of recent marginal notes, mappings, reviews, projects&lt;br /&gt;
&lt;br /&gt;
== Reviews ==&lt;br /&gt;
* get all reviews for an ontology, indicating which reviews where created for a current version, and which were created for old versions&lt;br /&gt;
* when presenting a review, show ratings and text along different dimensions (Figure 1)&lt;br /&gt;
* create a review for an ontology&lt;br /&gt;
** in the context of a particular project&lt;br /&gt;
** without a project context&lt;br /&gt;
* determine which ontology has the highest ratings for a particular dimension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Marginal notes ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all marginal notes associated with this concept:&lt;br /&gt;
** marginal notes attached directly to the current version of this concept&lt;br /&gt;
** marginal notes attached to earlier versions&lt;br /&gt;
* the number of marginal notes for an ontology&lt;br /&gt;
** over a period of time?&lt;br /&gt;
* Create a marginal note and associate it with a version of a concept&lt;br /&gt;
&lt;br /&gt;
== All mappings ==&lt;br /&gt;
* for each virtual ontology, get the number of mappings to and from that ontology&lt;br /&gt;
* for each ontology, get all the mappings (grouped by target ontology)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mappings for a concept ==&lt;br /&gt;
* for each concept, given its URL (real or virtual?), get all mappings associated with this concept:&lt;br /&gt;
** mappings attached directly to the current version of this concept&lt;br /&gt;
** mappings attached to earlier versions&lt;br /&gt;
* create a new mapping and attach it to the current version of the concept&lt;br /&gt;
&lt;br /&gt;
== Views ==&lt;br /&gt;
&lt;br /&gt;
* each view is itself an ontology and can have metadata, be explorable, etc.&lt;br /&gt;
* a view is defined on a specific ''version'' of an ontology&lt;br /&gt;
* there is a notion of a &amp;quot;virtual view&amp;quot; (cf. &amp;quot;virtual ontology&amp;quot;): for example, a view of Liver-related concepts in FMA created for a particular purpose&lt;br /&gt;
** each virtual view will have at least one version, but can have several&lt;br /&gt;
** a virtual view has some metadata attached to it (name, contact, etc.)&lt;br /&gt;
** each version of the view also has its own metadata (inherited from ontology metadata, but with additional fields)&lt;br /&gt;
* we must be able to represent views on views&lt;br /&gt;
* we must be able to represent views that include more than one ontology&lt;br /&gt;
&lt;br /&gt;
== Projects ==&lt;br /&gt;
* get a list of projects&lt;br /&gt;
* for each project, get the property-value pairs:&lt;br /&gt;
** name&lt;br /&gt;
** description&lt;br /&gt;
** people&lt;br /&gt;
** institution&lt;br /&gt;
** homepage&lt;br /&gt;
* project-specific page&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9298</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9298"/>
		<updated>2009-10-16T00:49:45Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Generating metrics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we ''do not'' generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
== Metrics computation and ontology metadata ==&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Storing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9297</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9297"/>
		<updated>2009-10-16T00:48:54Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* Generating metrics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we do not generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
== Metrics computation and ontology metadata ==&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Storing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9296</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9296"/>
		<updated>2009-10-16T00:48:27Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* REST service access */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we do not generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Storing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
	<entry>
		<id>https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9295</id>
		<title>Ontology Metrics</title>
		<link rel="alternate" type="text/html" href="https://www.bioontology.org//mediawiki/index.php?title=Ontology_Metrics&amp;diff=9295"/>
		<updated>2009-10-16T00:48:12Z</updated>

		<summary type="html">&lt;p&gt;Noy: /* REST service access */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Ontology Metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
This page describes the metrics that BioPortal calculates for the ontologies in its repository. In general, BioPortal will calculate the metrics when the ontology is uploaded and will store it as part of  the [http://www.bioontology.org/wiki/index.php/BioPortal_Metadata Ontology Metadata]. There are two groups of metrics:&lt;br /&gt;
* '''Statistical''' metrics&lt;br /&gt;
* '''Quality-control''' and '''quality-assurance''' metrics&lt;br /&gt;
&lt;br /&gt;
Each ontology may have all, some, or no values filled in for its metrics. Some metrics are meaningful only for ontologies in a specific representation language (e.g., number of axioms matters only for OWL ontologies; there are no individuals to count in the ontologies in OBO format). &lt;br /&gt;
&lt;br /&gt;
== Statistical Metrics == &lt;br /&gt;
We calculate the following statistics on each ontology in BioPortal:&lt;br /&gt;
&lt;br /&gt;
* '''number of classes''': the number of classes in the ontology. For OWL ontologies&lt;br /&gt;
** does not include imported classes&lt;br /&gt;
** includes only named classes (no anonymous classes in this count)&lt;br /&gt;
* '''number of properties:''' the number of properties or slots in the ontology.&lt;br /&gt;
* '''number of individuals:''' the number of individuals in the ontology. Note:&lt;br /&gt;
** Individuals exist only in OWL and Protege ontologies.&lt;br /&gt;
** An individual in OWL is a resource that is neither a class, nor a property.&lt;br /&gt;
* '''number of axioms:''' the number of axioms in an OWL ontology.&lt;br /&gt;
* '''maximum depth:''' the maximum depth of the hierarchy tree. &lt;br /&gt;
** For OWL, RDFS, Protege, and RRF ontologies, we consider only the ''is-a'' relationship as a hierarchical relationship&lt;br /&gt;
** For OBO format ontologies, we consider the following relationships as hierarchical relationships: ''is-a'', ''has-part'', inverse of ''develops-from''&lt;br /&gt;
* '''average number of siblings:''' the average number of siblings at one level in the tree.&lt;br /&gt;
* '''maximum number of siblings:''' the maximum number of siblings in the ontology.&lt;br /&gt;
&lt;br /&gt;
== Quality-Control and Quality-Assurance Metrics ==&lt;br /&gt;
We calculate the following metrics that may give some indication of the quality of the ontology and help ontology authors improve the quality.&lt;br /&gt;
&lt;br /&gt;
* '''classes with only one subclass''': a list of classes that have only one subclass in the ''is-a'' hierarchy. While technically there is no problem in having only one subclass, this situation often indicates that either the hierarchy is under-specified, or the distinction between the class and the subclass is not appropriate.&lt;br /&gt;
* '''classes with too many subclasses''': a list of classes that have more direct subclasses than a certain threshold. The specific threshold is an internal parameter in BioPortal (currently set to 25). This situation may be an indication that additional distinctions and categorization are needed.&lt;br /&gt;
* '''classes with no definition''': a list of classes that have no value for the definition property. For ontologies in OBO and RRF formats, the property for definition is part of the language. For OWL ontologies, the authors specify this property as part of the ontology metadata (the default is &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;). If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
* '''univocality''': the consistency of expression of concepts in an ontology (developed by Karin Verspoor∗, Daniel Dvorkin, K. Bretonnel Cohen, and Lawrence E. Hunter, University of Colorado)&lt;br /&gt;
&lt;br /&gt;
== Auditing and other information ==&lt;br /&gt;
* '''auditing information''': a set of &amp;lt;author, classes&amp;gt; pairs that indicates which lists the classes that each author contributed to the ontology. We use the property that the ontology developers specify in their metadata to determine who is the author of the class. If the ontology author has not specified any property as a definition property, we do not fill out this value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please, contact us at [mailto:support@bioontology.org support@bioontology.org], if there are additional metrics of any kind that you would like to see.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Generating metrics = &lt;br /&gt;
&lt;br /&gt;
At the moment, we do not generate metrics as part of the ontology load process, but we will shortly. The process will be as follows: When BioPortal loads and parses a version of an ontology, it then starts a process that calculates the metrics and stores the values as part of the metadata about that ontology version.&lt;br /&gt;
&lt;br /&gt;
Metric generation relies on the following information being specified in the ontology metadata:&lt;br /&gt;
&lt;br /&gt;
'''For OBO and RRF ontologies:'''&lt;br /&gt;
* property used to specify the authors of a class&lt;br /&gt;
&lt;br /&gt;
'''For OWL ontologies:'''&lt;br /&gt;
* property used to specify preferred name (default &amp;lt;tt&amp;gt;rdfs:label&amp;lt;/tt&amp;gt;, and if not specified, then &amp;lt;tt&amp;gt;rdf:ID&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify synonyms (default &amp;lt;tt&amp;gt;skos:altLabel&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the definition of a class (default &amp;lt;tt&amp;gt;skos:definition&amp;lt;/tt&amp;gt;)&lt;br /&gt;
* property used to specify the author of a class (default &amp;lt;tt&amp;gt;dc:creator&amp;lt;/tt&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
= Storing metrics in BioPortal = &lt;br /&gt;
&lt;br /&gt;
The metrics in BioPortal are stored as part of the ontology metadata. Specifically, each instance of the &amp;lt;tt&amp;gt;OMV:Ontology&amp;lt;/tt&amp;gt; class, which describes the metadata about a single ontology version, has a number of properties that store the metrics. Some of these properties are imported from the Ontology Metadata Vocabulary, OMV (the &amp;lt;tt&amp;gt;omv:&amp;lt;/tt&amp;gt; prefix) and the rest are defined locally in the BioPortal Metadata Ontology (the &amp;lt;tt&amp;gt;metrics:&amp;lt;/tt&amp;gt; prefix). These properties include:&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfClasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfProperties&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfAxioms&amp;lt;/tt&amp;gt;&lt;br /&gt;
*&amp;lt;tt&amp;gt;OMV:numberOfIndividuals&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:averageNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumNumberOfSiblings&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoDocumentation&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:maximumDepth&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:preferredMaximumSubclassLimit&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithSingleSubclass&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithNoAuthor&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanXSubclasses&amp;lt;/tt&amp;gt;&lt;br /&gt;
* &amp;lt;tt&amp;gt;metrics:classesWithMoreThanOnePropertyValueForPropertyWithUniqueValue&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Accessing metrics in BioPortal =&lt;br /&gt;
&lt;br /&gt;
BioPortal users will be able to access ontology metrics in two ways:&lt;br /&gt;
* through the BioPortal user interface, as part of the Ontology Details tab (not implemented yet)&lt;br /&gt;
* through a dedicated REST service that returns a &amp;lt;tt&amp;gt;MetricsBean&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== REST service access == &lt;br /&gt;
&lt;br /&gt;
Applications can use the following REST service to access metrics information for a specific ontology version. &lt;br /&gt;
''Note: there is no version of this service that uses virtual ontology id yet.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''Signature''': ./ontologies/metrics/{ontologyVersionId}?email={email_address}&lt;br /&gt;
* '''Example''': http://rest.bioontology.org/bioportal/ontologies/metrics/40616?email=example@example.org&lt;br /&gt;
&lt;br /&gt;
The service returns a &amp;lt;tt&amp;gt;ontologyMetricsBean&amp;lt;/tt&amp;gt; that contains the version id for the ontology and the values for the metrics that have some values computed for them:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;success&amp;gt;&lt;br /&gt;
  &amp;lt;accessedResource&amp;gt;/bioportal/ontologies/metrics/40616&amp;lt;/accessedResource&amp;gt;&lt;br /&gt;
  &amp;lt;accessDate&amp;gt;2009-10-15 17:43:25.978 PDT&amp;lt;/accessDate&amp;gt;&lt;br /&gt;
  &amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;ontologyMetricsBean&amp;gt;&lt;br /&gt;
      &amp;lt;id&amp;gt;40616&amp;lt;/id&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfClasses&amp;gt;1577&amp;lt;/numberOfClasses&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfIndividuals&amp;gt;74&amp;lt;/numberOfIndividuals&amp;gt;&lt;br /&gt;
      &amp;lt;numberOfProperties&amp;gt;72&amp;lt;/numberOfProperties&amp;gt;&lt;br /&gt;
    &amp;lt;/ontologyMetricsBean&amp;gt;&lt;br /&gt;
  &amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/success&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Noy</name></author>
	</entry>
</feed>