Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[bioontology-support] concept definitions in API?

Ray Fergerson ray.fergerson at stanford.edu
Mon Mar 23 14:55:31 PDT 2015


This is a bit confusing. The generic "include" parameter on all commands
says what fields get returned in the response for that command. It does
not determine what fields are searched by the search command.

Ray 

-----Original Message-----
From: Ben Leinfelder [mailto:leinfelder at nceas.ucsb.edu] 
Sent: Monday, March 23, 2015 2:47 PM
To: Ray Fergerson
Cc: support at bioontology.org
Subject: Re: [bioontology-support] concept definitions in API?

Hi Ray,
Those are fantastic explanations - my apologies for overlooking the
definition field in the ontology submission form - you shouldn't have to
guess when I can just tell you!

What I was meaning to express with my example queries was that I requested
the definition field (whatever that meant) returned in the results.
>From your api docs:
> Parameter: include
> Possible values: :all {comma-separated list of attributes, EX: 
> attr1,attr2}
> Description: By default, the API will show a subset of the available
attributes for a given media type. This behavior can be overridden by
providing include=all to show all attributes or
include=attribute1,attribute2 to include a specific list. 

So I thought using this parameter would explicitly include the fields
listed: include=prefLabel,definition

It is perplexing I sometimes get a definition field returned in my results
for certain classes, even though I have no skos:definition properties on
those classes.

At any rate, I'll update the submission and carry on. 

Thanks for the help,
-ben


On Mar 23, 2015, at 2:34 PM, Ray Fergerson <ray.fergerson at stanford.edu>
wrote:

> This behavior is a bit confusing. The short answer to your question is 
> that if you use the "also_seach_properties=true" parameter you will 
> get the behavior you want.
> 
> Before going into the long answer, you state below that you explicitly 
> included definitions in the search. I don't think that this is possible.
> We do have a "require definitions" property but this just requires 
> that the class have a definition. It does not require that the search 
> find a match in the definition. You should get matches on definitions 
> by default (however, see below).
> 
> And now for the longer answer, if you care. BioPortal uses as a 
> default the skos:definition property as the property containing a 
> definition. If you do not use skos:definition in your ontology, when 
> you submit the ontology you need to specify which property contains 
> the definition. The private D1-CARBON-FLUX ontology does not do this 
> so BioPortal finds no definition. The fact that this ontology has 
> another property named "definition" is irrelevant (for BioPortal).
> 
> Having said all this, it would be more user friendly if we could "guess"
> the definition property. This question has come up before. I will look 
> into doing this. Also you could edit the submission to define the 
> definition property properly. (Say that three times fast.) The system 
> should the reparse the ontology and create a BioPortal definition 
> which will be searched automatically.
> 
> Ray
> 
> -----Original Message-----
> From: bioontology-support
> [mailto:bioontology-support-bounces at lists.stanford.edu] On Behalf Of 
> Ben Leinfelder
> Sent: Monday, March 23, 2015 12:58 PM
> To: support at bioontology.org
> Subject: [bioontology-support] concept definitions in API?
> 
> Hi folks,
> I'm looking into some unexpected results when querying classes with 
> the BioPortal API.
> 
> Take this class in the D1_CARBON_FLUX ontology:
> 	
> https://purl.org/dataone/ontologies/observation/D1_carbon_flux_1.owl#O
> WLCl ass_1a9b59a0_d424_41c6_afe0_0a1f46378d5f
> 
> This query  for "plankton" returns the concept...
> 	
> https://data.bioontology.org/search?ontologies=D1-CARBON-FLUX&suggest=
> true &include=prefLabel,definition&q=plankton&apikey=XXXX
> 
> .but does not include the "definition" field even when explicitly 
> requested in the query string. I only get these:
> 	"prefLabel": "Plankton_Carbon_Pool",
> 	"@id":
> "https://purl.org/dataone/ontologies/observation/D1_carbon_flux_1.owl#
> OWLC lass_1a9b59a0_d424_41c6_afe0_0a1f46378d5f",
> 	"@type": "http://www.w3.org/2002/07/owl#Class",
> 
> But I can see the definition in the BioPortal web interface and, of 
> course, in the OWL file directly.
> 	
> http://bioportal.bioontology.org/ontologies/D1-CARBON-FLUX/?p=classes&
> conc 
> eptid=https%3A%2F%2Fpurl.org%2Fdataone%2Fontologies%2Fobservation%2FD1
> _car 
> bon_flux_1.owl%23OWLClass_1a9b59a0_d424_41c6_afe0_0a1f46378d5f&jump_to
> _nav
> =true
> 
> What's odd, is that I can retrieve definition for some other classes 
> (e.g., "carbon_flux"):
> 	
> https://data.bioontology.org/search?ontologies=D1-CARBON-FLUX&suggest=
> true &include=prefLabel,definition&q=carbon_pool&apikey=XXXX
> 
> Am I doing something wrong with the API? 
> 
> Thank you!
> -ben
> 
> _______________________________________________
> bioontology-support mailing list
> bioontology-support at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/bioontology-support
> 




More information about the bioontology-support mailing list