NIH | National Cancer Institute | NCI Wiki  

Error rendering macro 'rw-search'

null

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 at 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.

  • You can display caDSR REST-like results

...

  • in HTML or XML format

...

  • .
  • You can display XML 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.
Info
titleMultiple AND IN Note

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

...

The following example is how to set the result set and page size.

Code Block
titleResult Set and Page Size
http://cadsrapi.nci.nih.gov/cadsrapi41/GetXML?query=gov.nih.nci.cadsr.domain.Form&gov.nih.nci.cadsr.domain.Form[@workflowStatusName=RELEASED]&startIndex=0&pageSize=30&resultCounter=

...

300 

You can also add the startIndex parameter to indicate which record should be the first on the page. This means you can alter a query to return the second or third page of results. Generally speaking, however, the startIndex parameter is "zero based" - you start at zero and subsequent pages begin with a startIndex of the next result page. Using the above query as an example, the second page of the results would show startIndex=31, because the page size is 30.

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.

...

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 If there is a  data element with longName " My DE" and the permissible values are Never, Former, Current, etc. and the CDE browser Browser shows the code for Never as C70543, for Former as C0750523, and for Current as C25471. Your , your application can navigate the objects starting at the value domain as such to and 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").

Searching for a Common EVS Concept Code or Name but Restricting to Primary

...

  1. Retrieve data elements with object class, Primary, and concept, 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 Additionally, you can find all data elements where the concept is used either as a primary OR qualifier concept. This is accomplished by removing the last qualifier in the query. Removing this criteria in Example 1 returns 104 results instead of 88.

    Code Block
    [@primaryFlag=Yes]
  2. Retrieve data elements with property Primary, and concept, 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. For example, to get Data Element Concepts (DECs) with E-Mail address as the primary concept, remove DataElement (the first item in the query argument list in Example 2):

    Retrieve DECs with property Primary, and concept 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]
    

...