FLUTE Cross-border Prostate Cancer Data Standard Guide
0.1.0 - ci-build
Funded by the European Union

FLUTE Cross-border Prostate Cancer Data Standard Guide, published by Flute Project. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-eu/flute/ and changes regularly. See the Directory of published versions

: Study Inclusion Criteria - Scenario 01 - JSON Representation

Draft as of 2024-09-25

Raw json | Download

{
  "resourceType" : "TestScript",
  "id" : "TS-Flute-01",
  "text" : {
    "status" : "generated",
    "div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: TestScript TS-Flute-01</b></p><a name=\"TS-Flute-01\"> </a><a name=\"hcTS-Flute-01\"> </a><a name=\"TS-Flute-01-en-US\"> </a><p><b>url</b>: <a href=\"TestScript-TS-Flute-01.html\">TestScript Study Inclusion Criteria - Scenario 01</a></p><p><b>version</b>: 0.1.0</p><p><b>name</b>: PcaInclusionCriteriaS01</p><p><b>title</b>: Study Inclusion Criteria - Scenario 01</p><p><b>status</b>: Draft</p><p><b>experimental</b>: true</p><p><b>date</b>: 2024-09-25 16:08:44+0000</p><p><b>publisher</b>: Flute Project</p><p><b>contact</b>: Flute Project: <a href=\"https://www.fluteproject.eu/\">https://www.fluteproject.eu/</a>, Flute Project: <a href=\"https://www.fluteproject.eu/\">https://www.fluteproject.eu/</a></p><p><b>description</b>: </p><div><p>This TestScript evaluates the inclusion criteria for patients participating in the study.</p>\n</div><p><b>purpose</b>: </p><div><p>To verify that the CQL library correctly identifies patients who meet the inclusion criteria for the study.</p>\n</div><h3>Origins</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style=\"display: none\">*</td><td>1</td><td><a href=\"http://terminology.hl7.org/6.0.2/CodeSystem-testscript-profile-origin-types.html#testscript-profile-origin-types-FHIR-Client\">Test script profile origin type</a> FHIR-Client: FHIR Client</td></tr></table><h3>Destinations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Index</b></td><td><b>Profile</b></td></tr><tr><td style=\"display: none\">*</td><td>1</td><td><a href=\"http://terminology.hl7.org/6.0.2/CodeSystem-testscript-profile-destination-types.html#testscript-profile-destination-types-FHIR-Server\">Test script profile destination type</a> FHIR-Server: FHIR Server</td></tr></table><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>fixture-transaction-request</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <a href=\"DocumentReference/EXP-S1-IncludedPatient\">DocumentReference/EXP-S1-IncludedPatient</a></p></blockquote><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>fixture-transaction-teardown</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <a href=\"DocumentReference/EXP-Teardown\">DocumentReference/EXP-Teardown</a></p></blockquote><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>fixture-valueset-create</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <a href=\"DocumentReference/VS-PCa\">DocumentReference/VS-PCa</a></p></blockquote><blockquote><p><b>fixture</b></p><blockquote><p><b>id</b></p>fixture-library-create</blockquote><p><b>autocreate</b>: false</p><p><b>autodelete</b>: false</p><p><b>resource</b>: <a href=\"DocumentReference/PcaInclusionCriteria\">DocumentReference/PcaInclusionCriteria</a></p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>patientId</blockquote><p><b>name</b>: patientId</p><p><b>expression</b>: Bundle.entry[0].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>obsPIRADSId</blockquote><p><b>name</b>: obsPIRADSId</p><p><b>expression</b>: Bundle.entry[6].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>obsPVId</blockquote><p><b>name</b>: obsPVId</p><p><b>expression</b>: Bundle.entry[5].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>proDREId</blockquote><p><b>name</b>: proDREId</p><p><b>expression</b>: Bundle.entry[4].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>obsPSAId</blockquote><p><b>name</b>: obsPSAId</p><p><b>expression</b>: Bundle.entry[3].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>famPCId</blockquote><p><b>name</b>: famPCId</p><p><b>expression</b>: Bundle.entry[2].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>variable</b></p><blockquote><p><b>id</b></p>proBiopsyId</blockquote><p><b>name</b>: proBiopsyId</p><p><b>expression</b>: Bundle.entry[1].response.location</p><p><b>sourceId</b>: fixture-transaction-response</p></blockquote><blockquote><p><b>setup</b></p><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p><blockquote><p><b>id</b></p>SET-01</blockquote><p><b>type</b>: <a href=\"http://hl7.org/fhir/R4/codesystem-restful-interaction.html#restful-interaction-transaction\">FHIR Restful Interactions</a> transaction: transaction</p><p><b>resource</b>: Bundle</p><p><b>description</b>: Sent a transaction request on the test server using the id from fixture-transaction-request.</p><p><b>accept</b>: application/fhir+json</p><p><b>contentType</b>: application/fhir+json</p><p><b>encodeRequestUrl</b>: false</p><p><b>method</b>: POST</p><p><b>responseId</b>: fixture-transaction-response</p><p><b>sourceId</b>: fixture-transaction-request</p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p><blockquote><p><b>id</b></p>SET-01-ASS-01</blockquote><p><b>label</b>: HTTPStatus</p><p><b>description</b>: Confirm that the returned HTTP status is 200.</p><p><b>direction</b>: response</p><p><b>responseCode</b>: 200</p><p><b>warningOnly</b>: false</p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p><blockquote><p><b>id</b></p>SET-02</blockquote><p><b>type</b>: <a href=\"http://hl7.org/fhir/R4/codesystem-restful-interaction.html#restful-interaction-update\">FHIR Restful Interactions</a> update: update</p><p><b>resource</b>: ValueSet</p><p><b>description</b>: Create the ValueSet resource on the test server using the id from fixture-valueset-create.</p><p><b>accept</b>: application/fhir+json</p><p><b>contentType</b>: application/fhir+json</p><p><b>encodeRequestUrl</b>: false</p><p><b>method</b>: PUT</p><p><b>sourceId</b>: fixture-valueset-create</p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p><blockquote><p><b>id</b></p>SET-02-ASS-01</blockquote><p><b>label</b>: HTTPStatus</p><p><b>description</b>: Confirm that the returned HTTP status is 201.</p><p><b>direction</b>: response</p><p><b>responseCode</b>: 201</p><p><b>warningOnly</b>: false</p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p><blockquote><p><b>id</b></p>SET-03</blockquote><p><b>type</b>: <a href=\"http://hl7.org/fhir/R4/codesystem-restful-interaction.html#restful-interaction-update\">FHIR Restful Interactions</a> update: update</p><p><b>resource</b>: Library</p><p><b>description</b>: Create the Library resource on the test server using the id from fixture-library-create.</p><p><b>accept</b>: application/fhir+json</p><p><b>contentType</b>: application/fhir+json</p><p><b>encodeRequestUrl</b>: false</p><p><b>method</b>: PUT</p><p><b>sourceId</b>: fixture-library-create</p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p><blockquote><p><b>id</b></p>SET-03-ASS-01</blockquote><p><b>label</b>: HTTPStatus</p><p><b>description</b>: Confirm that the returned HTTP status is 201.</p><p><b>direction</b>: response</p><p><b>responseCode</b>: 201</p><p><b>warningOnly</b>: false</p></blockquote></blockquote></blockquote><blockquote><p><b>test</b></p><blockquote><p><b>id</b></p>1-EvaluateLibrary</blockquote><p><b>name</b>: Evaluation of CQL Library for Prostate Cancer Inclusion</p><p><b>description</b>: This test evaluates the inclusion criteria defined in the CQL library for a prostate cancer study.</p><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>assert</b></p></blockquote></blockquote></blockquote><blockquote><p><b>teardown</b></p><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p></blockquote></blockquote><blockquote><p><b>action</b></p><blockquote><p><b>operation</b></p></blockquote></blockquote></blockquote></div>"
  },
  "url" : "http://hl7.eu/fhir/ig/flute/TestScript/TS-Flute-01",
  "version" : "0.1.0",
  "name" : "PcaInclusionCriteriaS01",
  "title" : "Study Inclusion Criteria - Scenario 01",
  "status" : "draft",
  "experimental" : true,
  "date" : "2024-09-25T16:08:44+00:00",
  "publisher" : "Flute Project",
  "contact" : [
    {
      "name" : "Flute Project",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://www.fluteproject.eu/"
        }
      ]
    },
    {
      "name" : "Flute Project",
      "telecom" : [
        {
          "system" : "url",
          "value" : "https://www.fluteproject.eu/"
        }
      ]
    }
  ],
  "description" : "This TestScript evaluates the inclusion criteria for patients participating in the study.",
  "purpose" : "To verify that the CQL library correctly identifies patients who meet the inclusion criteria for the study.",
  "origin" : [
    {
      "index" : 1,
      "profile" : {
        "system" : "http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types",
        "code" : "FHIR-Client"
      }
    }
  ],
  "destination" : [
    {
      "index" : 1,
      "profile" : {
        "system" : "http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types",
        "code" : "FHIR-Server"
      }
    }
  ],
  "fixture" : [
    {
      "id" : "fixture-transaction-request",
      "autocreate" : false,
      "autodelete" : false,
      "resource" : {
        "reference" : "DocumentReference/EXP-S1-IncludedPatient"
      }
    },
    {
      "id" : "fixture-transaction-teardown",
      "autocreate" : false,
      "autodelete" : false,
      "resource" : {
        "reference" : "DocumentReference/EXP-Teardown"
      }
    },
    {
      "id" : "fixture-valueset-create",
      "autocreate" : false,
      "autodelete" : false,
      "resource" : {
        "reference" : "DocumentReference/VS-PCa"
      }
    },
    {
      "id" : "fixture-library-create",
      "autocreate" : false,
      "autodelete" : false,
      "resource" : {
        "reference" : "DocumentReference/PcaInclusionCriteria"
      }
    }
  ],
  "variable" : [
    {
      "id" : "patientId",
      "name" : "patientId",
      "expression" : "Bundle.entry[0].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "obsPIRADSId",
      "name" : "obsPIRADSId",
      "expression" : "Bundle.entry[6].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "obsPVId",
      "name" : "obsPVId",
      "expression" : "Bundle.entry[5].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "proDREId",
      "name" : "proDREId",
      "expression" : "Bundle.entry[4].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "obsPSAId",
      "name" : "obsPSAId",
      "expression" : "Bundle.entry[3].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "famPCId",
      "name" : "famPCId",
      "expression" : "Bundle.entry[2].response.location",
      "sourceId" : "fixture-transaction-response"
    },
    {
      "id" : "proBiopsyId",
      "name" : "proBiopsyId",
      "expression" : "Bundle.entry[1].response.location",
      "sourceId" : "fixture-transaction-response"
    }
  ],
  "setup" : {
    "action" : [
      {
        "operation" : {
          "id" : "SET-01",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "transaction"
          },
          "resource" : "Bundle",
          "description" : "Sent a transaction request on the test server using the id from fixture-transaction-request.",
          "accept" : "application/fhir+json",
          "contentType" : "application/fhir+json",
          "encodeRequestUrl" : false,
          "method" : "post",
          "responseId" : "fixture-transaction-response",
          "sourceId" : "fixture-transaction-request"
        }
      },
      {
        "assert" : {
          "id" : "SET-01-ASS-01",
          "label" : "HTTPStatus",
          "description" : "Confirm that the returned HTTP status is 200.",
          "direction" : "response",
          "responseCode" : "200",
          "warningOnly" : false
        }
      },
      {
        "operation" : {
          "id" : "SET-02",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "update"
          },
          "resource" : "ValueSet",
          "description" : "Create the ValueSet resource on the test server using the id from fixture-valueset-create.",
          "accept" : "application/fhir+json",
          "contentType" : "application/fhir+json",
          "encodeRequestUrl" : false,
          "method" : "put",
          "sourceId" : "fixture-valueset-create"
        }
      },
      {
        "assert" : {
          "id" : "SET-02-ASS-01",
          "label" : "HTTPStatus",
          "description" : "Confirm that the returned HTTP status is 201.",
          "direction" : "response",
          "responseCode" : "201",
          "warningOnly" : false
        }
      },
      {
        "operation" : {
          "id" : "SET-03",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "update"
          },
          "resource" : "Library",
          "description" : "Create the Library resource on the test server using the id from fixture-library-create.",
          "accept" : "application/fhir+json",
          "contentType" : "application/fhir+json",
          "encodeRequestUrl" : false,
          "method" : "put",
          "sourceId" : "fixture-library-create"
        }
      },
      {
        "assert" : {
          "id" : "SET-03-ASS-01",
          "label" : "HTTPStatus",
          "description" : "Confirm that the returned HTTP status is 201.",
          "direction" : "response",
          "responseCode" : "201",
          "warningOnly" : false
        }
      }
    ]
  },
  "test" : [
    {
      "id" : "1-EvaluateLibrary",
      "name" : "Evaluation of CQL Library for Prostate Cancer Inclusion",
      "description" : "This test evaluates the inclusion criteria defined in the CQL library for a prostate cancer study.",
      "action" : [
        {
          "operation" : {
            "id" : "TES-01",
            "extension" : [
              {
                "url" : "http://fyrstain.com/pdt/returnResourceType",
                "valueString" : "Parameters"
              }
            ],
            "type" : {
              "system" : "http://hl7.org/fhir/restful-interaction",
              "code" : "operation"
            },
            "resource" : "Library",
            "description" : "Evaluate the CQL library to check if the patient meets the inclusion criteria.",
            "contentType" : "application/fhir+json",
            "encodeRequestUrl" : false,
            "method" : "get",
            "params" : "$evaluate?subject={{patientId}}",
            "targetId" : "fixture-library-create"
          }
        },
        {
          "assert" : {
            "id" : "TES-01-ASS-01",
            "label" : "HTTPStatus",
            "description" : "Confirm that the returned HTTP status is 200.",
            "direction" : "response",
            "responseCode" : "200",
            "warningOnly" : false
          }
        },
        {
          "assert" : {
            "id" : "TES-01-ASS-02",
            "label" : "Resource",
            "description" : "Confirm that the returned resource type is Parameters.",
            "direction" : "response",
            "resource" : "Parameters",
            "warningOnly" : false
          }
        },
        {
          "assert" : {
            "id" : "TES-01-ASS-03",
            "label" : "FHIRPath",
            "description" : "Confirm that the returned Parameters resource contains an 'isIncluded' parameter with a value of true.",
            "direction" : "response",
            "expression" : "Parameters.parameter.where(name = 'isIncluded' ).value=true",
            "warningOnly" : false
          }
        }
      ]
    }
  ],
  "teardown" : {
    "action" : [
      {
        "operation" : {
          "id" : "TED-01",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "transaction"
          },
          "resource" : "Bundle",
          "description" : "Delete the testing resources on the test server using the id from fixture-transaction-teardown.",
          "encodeRequestUrl" : true,
          "method" : "delete",
          "sourceId" : "fixture-transaction-teardown"
        }
      },
      {
        "operation" : {
          "id" : "TED-02",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "delete"
          },
          "resource" : "ValueSet",
          "description" : "Delete the ValueSet resource on the test server using the id from fixture-library-create.",
          "encodeRequestUrl" : true,
          "method" : "delete",
          "targetId" : "fixture-valueset-create"
        }
      },
      {
        "operation" : {
          "id" : "TED-03",
          "type" : {
            "system" : "http://hl7.org/fhir/restful-interaction",
            "code" : "delete"
          },
          "resource" : "Library",
          "description" : "Delete the Library resource on the test server using the id from fixture-library-create.",
          "encodeRequestUrl" : true,
          "method" : "delete",
          "targetId" : "fixture-library-create"
        }
      }
    ]
  }
}