NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

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

...

Using the API, developers can allow an application to connect to caDSR and search the database. The API is available for downloadat the Domain Class Browser.

The caDSR REST-like (XML-HTTP) API and CDE Browser provide access to, and a means of linking to, caDSR metadata through a standard internet browser.

caDSR REST-like results can be displayed in HTML in either or XML format - XML and can be displayed in an internet browser or by means of an XSLT stylesheet. The caDSR 4.0 Technical Guide describes the caDSR REST-like (XML-HTTP) API and provides a catalog of the caDSR operations and search criteria. To switch formats simply change the URL in the address line from "getHTML" to "getXML.A few examples in both XML and HTML of caDSR operations are provided below. The attached MS Word documents for the examples show sample results and the "http" statements used to produce the results, and provide information about how to interpret the results. See also the REST API FAQs

Info
titleMultiple AND IN Note

You cannot enter multiple "and" or "in" values for search criteria when using the REST (XML-HTTP) API.

Setting Result Set and Page Size for REST-like API

...

  • You can expand or limit the result set using the resultCounter parameter. By default, the result set for a RESTlike call is limited to 1,000 records, with the set number of records appearing per page, either as the default or as a specified page size.
  • To change the maximum number of results returned for a query, add the resultCounter=## parameter to the call.  For details and an example, see Setting Result Set and Page Size for REST-like API on the caDSR API REST-like Examples page of this wiki.
  • If your total results are less than the page size, the first page of results contain all the returned items.
  • The resultCounter and pageSize capabilities are available for use in RESTlike API calls.
  • For REST-like (XML-HTTPS) calls, page size information is cached, so that if you make a call that identifies a particular page size, subsequent calls will also use that same page size, even without the parameter.
  • To change the number of results appearing on each page, include a different pageSize parameter in a call, or clear the cache to return to the default.

...

Info

Page size information is cached, so that if you make a call that identifies a particular page size, subsequent calls will also use that same page size, even without the parameter. To change the number of results appearing on each page, include a different size parameter in a call, or clear the cache to return to the default.

Examples

Example 1 - Find Data Element by Public ID and Version

Find a Data Element where Public Id = 2178693 and Version=2.1 and display the basic metadata attributes.

Either the CDE Browser or the caDSR REST API can be used to satisfy this query and results from both are shown below.

Example 1a Results Displayed in the CDE Browser

This method can be used to retrieve Data Elements only when you know both the Public ID and Version number.  (If you have trouble with the following link in Firefox, cut and paste it into IE.)

Code Block
https://cdebrowser.nci.nih.gov/CDEBrowser/search?dataElementDetails=9/&cdeId=2178693&version=2.1&PageId=DataElementsGroup&queryDE=yes&FirstTimer=yes

Or alternatively

Code Block
http://freestyle.nci.nih.gov/freestyle/do/cdebrowser?publicId=2178693&version=2.1

Sample CDE Browser Output from Example 1

Example 1b Results Displayed in XML

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=DataElement[@publicId=2178693][@version=2.1]

...

Retrieving the Corresponding EVS Concept Codes for the Value Domain

Given a data element, you can retrieve the corresponding EVS concept codes for the values in a 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").

Examples

Example 1 - Find Data Element by Public ID and Version

Find a Data Element with where Public Id = 2178693 , and Version=2.1 and display the basic metadata attributes, version is not known.

Since the version is not known, this query can only be handled via a Either the CDE Browser or the caDSR REST API query getting all versions.

The URL for the results from the caDSR 4.1 REST API is:

can be used to satisfy this query and results from both are shown below.

Example 1a Results Displayed in the CDE Browser

This method can be used to retrieve Data Elements only when you know both the Public ID and Version number.  (If you have trouble with the following link in Firefox, cut and paste it into IE.)

Code Block
https://cdebrowser
Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41CDEBrowser/GetXMLsearch?query=DataElement[@publicId=2178693]

Sample caDSR REST API XML Output from Example 2

dataElementDetails=9/&cdeId=2178693&version=2.1&PageId=DataElementsGroup&queryDE=yes&FirstTimer=yes

Or alternativelyOr the query can retrieve only the latest version

Code Block
http://cadsrapifreestyle.nci.nih.gov/freestyle/cadsrapi41do/GetXML?query=DataElement[@publicId=2178693][@latestVersionIndicator=Yes]

Example 3 - Find Data Element by Public Id, display all related components

Find a Data Element with Public Id = 2178693, display all the metadata associated with the Data Element's related components, not just the basic attributes.

cdebrowser?publicId=2178693&version=2.1

Sample CDE Browser Output from Example 1

Example 1b Results Displayed in XMLThis is handled in the caDSR REST API using a parameter that produces expanded ("heavy") XML.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=DataElement&DataElement[@publicId=2178693]&returnHeavyXML=true

Sample caDSR REST XML Output from Example 3 with "Heavy" XML

...

[@version=2.1]

Example 2 - Find Data Element

...

by Public ID

Find a Data Element with Public Id = 2178693, display the basic metadata attributes, version is not known.

Since the version is not known, this query can only be handled via a caDSR REST API query getting all versions.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=DataElement[@publicId=2178693]

Sample caDSR REST API XML Output from Example 2

Or the query can retrieve only the latest version

Find all the Data Elements associated with the Data Element Concept with Public Id = 2178546, display the basic metadata of the Data Element Concept and its Data Elements.

The URL for the results from the caDSR 4.0 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=DataElement&DataElementConcept[@publicId=2178693][@latestVersionIndicator=2178546Yes]

Example

...

3 - Find Data

...

Element by Public Id, display all related components

Find a Data Element with Public Id = 2178693, display all the metadata associated with the Data Element's related components, not just the basic attributes.

This is handled in the caDSR REST API using a parameter that produces expanded ("heavy") XMLFind only Data Elements associated with VERSION 2.1 of Data Element Concept with Public Id = 2178546.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=DataElement&DataElementConceptDataElement[@publicId=21785462178693][@version=2.1]

Sample caDSR REST XML Output from Example 4 and 5

Example 6 - Find a Form using Form public ID and Version and display basic metadata attributes

Find a Form where Public Id = 2392775 and Version=1.0 and display the basic metadata attributes.

Either the Form Builder or the caDSR 4.1 REST-like API can be used to satisfy this query and results from both are shown below.

Example 6a Results Displayed in the Form Builder

This method can be used to retrieve Forms only when you know both the Public ID and Version number.  (If you have trouble with the following link in Firefox, cut and paste it into IE.)

https://formbuilder.nci.nih.gov/FormBuilder/formDetailsAction.do?method=getFormDetails&formIdSeq=FF04F699-FE6A-56AA-E034-0003BA3F9857

...

&returnHeavyXML=true

Sample caDSR REST XML Output from Example 3 with "Heavy" XML

Example 4 - Find Data Element Concept using public ID and display all its associated Data Elements

Find all the Data Elements associated with the Data Element Concept with Public Id = 2178546, display the basic metadata of the Data Element Concept and its Data Elements.

The URL for the results from the caDSR 4.1 0 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=FormDataElement&DataElementConcept[@publicId=2392775][@version=1.0]2178546]

Example

...

5 - Find

...

Data Elements associated with a particular Data Element Concept public ID and Version

Find only Data Elements associated with VERSION 2.1 of Data Element Concept Find a Form with Public Id = 2392775, display the basic metadata attributes, version is not known.

Since the version is not known, this query can only be handled via a caDSR REST API query.

2178546.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=Form[@publicId=2392775=DataElement&DataElementConcept[@publicId=2178546][@version=2.1]

...

Sample caDSR REST XML Output from Example 4 and 5

Example 6 - Find a Form using

...

Form public ID and Version and display basic metadata attributes

Find a Form with where Public Id = 2392775 , display all the metadata associated with the Data Element's related components, not just the basic attributes.

This is handled in the caDSR REST API using a parameter that produces expanded ("heavy") XML.

The URL for the results from the caDSR 4.1 REST API is:

...

and Version=1.0 and display the basic metadata attributes.

Either the Form Builder or the caDSR 4.1 REST-like API can be used to satisfy this query and results from both are shown below.

Example 6a Results Displayed in the Form Builder

This method can be used to retrieve Forms only when you know both the Public ID and Version number.  (If you have trouble with the following link in Firefox, cut and paste it into IE.)

https://formbuilder.nci.nih.gov/

...

FormBuilder/

...

Example 9 - Find all the Forms associated with a particular Data Element public id and version

...

formDetailsAction.do?method=getFormDetails&formIdSeq=FF04F699-FE6A-56AA-E034-0003BA3F9857

Example 6b Results Displayed in XML

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=Form&Module&Question&DataElement[@publicId=21833642392775][@version=1.0]

Example

...

7 - Find a Form using only public id

Find a Form with Public Id = 2392775, display the basic metadata attributes, version is not known.

Since the version is not known, this query can only be handled via a caDSR REST API query.

Get all the modules for form with publicID = 2392775.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=gov.nih.nci.cadsr.domain.Module&gov.nih.nci.cadsr.domain.Form[@version=1.0][@publicID=@publicId=2392775]

Example

...

8 - Find a Form using public id, display all the metadata associated with the Data Elements

Find a Form with Public Id = 2392775, display all the metadata associated with the Data Element's related components, not just the basic attributes.

This is handled in the caDSR REST API using a parameter that produces expanded ("heavy") XMLGet all the questions for module with publicID = 2392777 and version = 1.0.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=gov.nih.nci.cadsr.domain.Question&gov.nih.nci.cadsr.domain.Module[@version=1.0][@publicID=2392777]

...

Form&Form[@publicId=2392775]&returnHeavyXML=true

Example 9 - Find all the Forms associated with a particular Data Element public id and version

...

Get Find all the data elements for question with publicID = 2392779 and version = 1.0the Forms associated with the CDE with Public Id = 2183364, Version 1.0, display the basic metadata of the Form.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=gov.nih.nci.cadsr.domain.DataElement&gov.nih.nci.cadsr.domain.Questionnih.gov/cadsrapi41/GetXML?query=Form&Module&Question&DataElement[@publicId=2183364][@version=1.0][@publicID=2392779]

Example

...

10 -

...

Get all

...

Modules associated with a

...

Form using Form public id.

Get all the modules for form with publicID = 2392775.Get all Administered Components for ClassSchemeClassSchemeItem with ID = A55C551C-1866-5ED1-E034-080020C9C0E0
This will retrieve all AC's and sort them according to type (Form, DE, DEC, etc.)

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=AdministeredComponent,AdministeredComponentClassSchemeItem,ClassSchemeClassSchemeItem&ClassSchemeClassSchemeItem[@ID=A55C551C-1866-5ED1-E034-080020C9C0E0]

Example 14 - Retrieve all ClassSchemeClassSchemeItem associated with a ClassificationSchemeItem and a ClassificationScheme.

gov.nih.nci.cadsr.domain.Module&gov.nih.nci.cadsr.domain.Form[@version=1.0][@publicID=2392775]

Example 11 - Get all the Questions for a Module using Module public id and version.

Get all the questions for module with publicID = 2392777 and version = 1.0Get all ClassSchemeClassSchemeItem for ClassificationSchemeItem with longName starting with 2014r1
and ClassificationScheme with preferredName starting with NMDP
Note, the association can be specified either through using square brackets '[]' or by using the backslash '\'
however, association within the square brackets cannot have further associations as attributes.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTMLGetXML?query=ClassSchemeClassSchemeItem&ClassSchemeClassSchemeItem[ClassificationScheme[@preferredName=NMDP*]]\ClassificationSchemeItem[@longName=2014r1*]

Examples 15-17  - Get Data Elements using Concept Code or Concept Name

The Examples 15-17 below show retrieving Data Elements using either the Concept Code or the Concept Name where the concept is the Primary Concept of the related caDSR item.  In these examples, results are are returned in HTML. All URL's are using the caDSR 4.1 REST API:

Example 15 - Find all Data Elements where associated concept is the Primary Concept of the Data Element's Object Class.

gov.nih.nci.cadsr.domain.Question&gov.nih.nci.cadsr.domain.Module[@version=1.0][@publicID=2392777]

Example 12 - Get all the Data Elements for a Question using Question public id and version.

Get all the data elements for question with publicID = 2392779 and version = 1.0.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=gov.nih.nci.cadsr.domain.DataElement&gov.nih.nci.cadsr.domain.Question[@version=1.0][@publicID=2392779]

Example 13 - Retrieve all Administered Components associated with a ClassSchemeClassSchemeItem with a particular ID.

Get all Administered Components for ClassSchemeClassSchemeItem with ID = A55C551C-1866-5ED1-E034-080020C9C0E0
This will retrieve all AC's and sort them according to type (Form, DE, DEC, etc.)

The URL for the results from the caDSR 4.1 REST API is:This example shows the use of either the Concept Code (C19448) or the Concept Name "Blood and Blood Products". Results are identical from these two calls, both are returned in HTML.

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTMLGetXML?query=DataElementAdministeredComponent,DataElementConceptAdministeredComponentClassSchemeItem,ObjectClass,ConceptDerivationRuleClassSchemeClassSchemeItem&ComponentConceptClassSchemeClassSchemeItem[Concept[@preferredName=C19448]][@primaryFlag=Yes]

http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=DataElement,DataElementConcept,ObjectClass,ConceptDerivationRule&ComponentConcept[Concept[@longName=Blood and Blood Products]][@primaryFlag=Yes]

...

@ID=A55C551C-1866-5ED1-E034-080020C9C0E0]

Example 14 - Retrieve all ClassSchemeClassSchemeItem associated with a ClassificationSchemeItem and a ClassificationScheme.

Get all ClassSchemeClassSchemeItem for ClassificationSchemeItem with longName starting with 2014r1
and ClassificationScheme with preferredName starting with NMDP
Note, the association can be specified either through using square brackets '[]' or by using the backslash '\'
however, association within the square brackets cannot have further associations as attributes.

The URL for the results from the caDSR 4.1 REST API is:

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=DataElement,DataElementConcept,Property,ConceptDerivationRule&ComponentConcept[ConceptClassSchemeClassSchemeItem&ClassSchemeClassSchemeItem[ClassificationScheme[@preferredName=C42775NMDP*]][@primaryFlag=Yes]

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

...

\ClassificationSchemeItem[@longName=2014r1*]

Examples 15-17  - Get Data Elements using Concept Code or Concept Name

The Examples 15-17 below show retrieving Data Elements using either the Concept Code or the Concept Name where the concept is the Primary Concept of the related caDSR item.  In these examples, results are are returned in HTML. All URL's are using the caDSR 4.1 REST API:

Example 15 - Find all Data Elements where associated concept is the Primary Concept

...

of the Data Element

...

's Object Class.

This example shows the use of either the Concept Code (C19448) or the Concept Name "Blood and Blood Products". Results are identical from these two calls, both are returned in HTML.

Code Block
Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41
/GetHTML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,PermissibleValue,ValueMeaning,ConceptDerivationRule&ComponentConcept[Concept[@preferredName=C19448]][@primaryFlag=Yes]

http://cadsrapi.nci.nih.gov/cadsrapi41
/GetHTML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,PermissibleValueDataElementConcept,ValueMeaningObjectClass,ConceptDerivationRule&ComponentConcept[Concept[@longName=Blood and Blood Products@preferredName=C19448]][@primaryFlag=Yes]

Example 18 - Find all enumerated Permissible Values for a Data Element using Data Element public id and version or using Data Element public id (and getting latest version)

Code Block

http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=PermissibleValueDataElement,ValueDomainPermissibleValueDataElementConcept,EnumeratedValueDomainObjectClass,ValueDomainConceptDerivationRule&DataElementComponentConcept[Concept[@publicID=106@longName=Blood and Blood Products]][@version@primaryFlag=Yes]

Example 16 - Find all Data Elements where associated concept is the Primary Concept of the Data Element's Property.

Code Block
5.1]

http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=PermissibleValueDataElement,ValueDomainPermissibleValueDataElementConcept,EnumeratedValueDomainProperty,ValueDomainConceptDerivationRule&DataElementComponentConcept[Concept[@publicID@preferredName=106C42775]][@latestVersionIndicator@primaryFlag=Yes]

Example 19 - Find a Concept by its concept code

Code Block


http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=DataElement,DataElementConcept,Property,ConceptDerivationRule&ComponentConcept[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)

[@longName=E-mail%20Address]][@primaryFlag=Yes]

Example 17 - Find all Data Elements where associated concept is the Primary Concept of one of the Data Element's Value Domain Value Meanings.

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi41
/GetHTML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,PermissibleValue,ValueMeaning,ConceptDerivationRule&ComponentConcept[Concept[@preferredName=C19448]][@primaryFlag=Yes]

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40cadsrapi41
/GetHTML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,DataElementConceptPermissibleValue,ObjectClassValueMeaning,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
@longName=Blood and Blood Products]][@primaryFlag=Yes]

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

...

Example 18 - Find all enumerated Permissible Values for a Data Element using Data Element public id and version or using Data Element public id (and getting latest version)

Code Block
http://cadsrapi.nci.nih.gov/cadsrapi40cadsrapi41/GetHTML?query=PermissibleValue,ValueDomainPermissibleValue,EnumeratedValueDomain,ValueDomain&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]
[@publicID=106][@version=5.1]

http://cadsrapi.nci.nih.gov/cadsrapi41/GetHTML?query=PermissibleValue,ValueDomainPermissibleValue,EnumeratedValueDomain,ValueDomain&DataElement[@publicID=106][@latestVersionIndicator=Yes]

Example 19 - Find a Concept by its concept code

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 HTML3. 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/GetXMLGetHTML?query=DataElement,EnumeratedValueDomain,ValueDomainPermissibleValue,PermissibleValue,ValueMeaningDataElementConcept,ObjectClass,ConceptDerivationRule&ComponentConcept[Concept[@longName=Blood and Blood Products]][@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]

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").

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]

...