The XML4Pharma Application Server

XML4Pharma Submission Dataset-JSON Hackathon RESTful Web Services


We have developed a very first implementation of CDISC's draft Dataset-JSON API to demonstrate the use of CDISC's Dataset-JSON format in RESTful web services, for use in electronic submissions to regulatory authorities such as the FDA.

We extended it for "filtering" to demonstrate the potential of such an API in the regulatory review process.

Such APIs would enable a "neutral zone" between sponsor and regulatory authority, essentially allowing the latter to start a review once the first data points have been collected and submitted to the "neutral zone".
It also means that the review could be finalized once the last data point has been submitted to the "neutral zone", as the review is "rolling".
This in contradiction to the current practice that review first starts when all the study data has been submitted as "files", and typically taking 6-10 months.

Very probably, such "neutral zones" would be in "the cloud" and governed by RESTful web services (PUT, POST, GET), so no more "files" are needed.
It also means that the generation of SDTM, SEND and ADaM datasets could be simplified.

For the retrieval (GET) part of the RESTful web service, we have developed a very simple prototype RESTful API working on an SDTM submission.
It has the following methods:

The following RESTful LOINC web services are currently available by us:


  • Get the define.xml for a specific study

  • URL: http://www.xml4pharmaserver.com:8080/SubmissionService/rest/DefineXML/{studyid}

    Example: http://www.xml4pharmaserver.com:8080/SubmissionService/rest/DefineXML/CDISCPILOT01


  • Get a specific dataset for a specific study

  • URL: http://www.xml4pharmaserver.com:8080/SubmissionService/rest/studies/{studyid}/datasets/{datasetname}

    Example: http://www.xml4pharmaserver.com:8080/SubmissionService/rest/studies/CDISCPILOT01/datasets/AE


  • Get a specific dataset filtered for a variable value

  • URL: http://www.xml4pharmaserver.com:8080/SubmissionService/rest/studies/{studyid}/datasets/{datasetname}

    The base URL is the same as for the method "single dataset", but now comes with a number of query parameters

    IMPORTANT REMARK: These query parameters are NOT part of the current CDISC formal Dataset-JSON API!

    The method also allows to use more complicated queries. This is necessary as SDTM, SEND and ADaM mostly have "hyperverical" structures, essentially implementing the "entity-attribute-value model". For example, for VSORRES (or VSSTRESN) in SDTM one will want to retrieve all records with a value < 100 for a specific test code, e.g. "SYSBP",
    as it doesn't make sense to try to retrieve all records with VSORRES < 100, as the numbers have different meanings dependent on the test code.
    When using this mechanism, two additional query parameters are needed: In these cases the query parameter "variable" usually is the test code (SDTM, SEND) or the parameter code (ADaM).

    Here a snapshot from the Postman tool for clarity:

    Examples:

    IMPORTANT!

    Courtesy of XML4Pharma - last update: April 2024