NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=Concept[@preferredName=C42614]

Can you retrieve all Data Elements using a common EVS concept code or name, but restrict results to only those where the concept is “Primary” in the CDE’s Object Class?

Answer: Yes. This can be done through any of the caDSR 4.0 APIs as well as for restricting to Property or a Value Meaning in the CDEs Enumerated Value Domain.

Examples:

1. Retrieve Data Elements with Object Class “Primary” concept named “Blood and Blood Products” (result in HTML)

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40/GetHTML?query=DataElement,DataElementConcept,ObjectClass,ConceptDerivationRule&ComponentConcept[Concept[@preferredName=C19448]][@primaryFlag=Yes]

EXTENSION 1: An extension of this use case is to find all Data Elements where the concept is used either as a primary OR qualifier concept. This is accomplished by removing last qualifier in the query:

Code Block
[@primaryFlag=Yes]

Removing this criteria in Example 1 returns 104 results instead of 88.

2. Retrieve Data Elements with Property “Primary” concept named “E-Mail Address”

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40/GetHTML?query=DataElement,DataElementConcept,Property,ConceptDerivationRule&ComponentConcept[Concept[@longName=E-mail%20Address]][@primaryFlag=Yes]

EXTENSION 2: To retrieve the next higher order "type" administered items, remove the name of the item(s) before it in the query argument list:  i.e. to get DECs with E-Mail address as primary concept, remove "DataElement" (the first item in the query argument list in Example 2):

Retrieve Data Element Concepts with Property “Primary” concept named “E-Mail Address”

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40/GetHTML?query=DataElementConcept,Property,ConceptDerivationRule&ComponentConcept[Concept[@longName=E-mail%20Address]][@primaryFlag=Yes]

3. Retrieve Data Elements with Value Domain's Value Meaning "Primary" concept code= C19448 (Blood and Blood Products”) (result in XML)

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40/GetXML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,PermissibleValue,ValueMeaning,ConceptDerivationRule&ComponentConcept[Concept[@longName=Blood and Blood Products]][@primaryFlag=Yes]

Can you enter multiple "and" or "in" values for search criteria when using the REST (XML-HTTP) API?

Answer. No

Given a data element, how do you retrieve the corresponding "EVS concept codes" for the values in the Value Domain?

Let's say we have a data element with longName "My DE" and the permissible values Never, Former, Current etc and the CDE browser shows the code for Never as C70543, for Former as C0750523, and for Current as C25471. Your application can navigate the objects starting at the value domain as such to work your way to the corresponding "code."

For example:

Each enumerated value domain ("My DE") has a getValueDomainPermissibleValueCollection
Each ValueDomainPermissibleValue in the collection has a getPermissibleValue ("F")
Each permissibleValue has a getValueMeaning ("Former")
Each valueMeaning has a getConceptDerivationRule in which the list of concepts and their ordering is stored
Each conceptDerivationRule has a getComponentConceptCollection (the primary concept and any qualifier concepts, in this case "Former" has only a Primary Concept)
Each componentConcept in the collection has a getConcept (returns the Concept Object)
Each concept has an attribute, preferredName in which the corresponding EVS concept code is stored ("C0750523").

 

 

Wiki Markup
{scrollbar:icons=false}