FLUTE Cross-border Prostate Cancer Data Standard Guide
0.1.0 - ci-build
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
Draft as of 2024-09-25 |
<TestScript xmlns="http://hl7.org/fhir">
<id value="TS-Flute-02"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: TestScript TS-Flute-02</b></p><a name="TS-Flute-02"> </a><a name="hcTS-Flute-02"> </a><a name="TS-Flute-02-en-US"> </a><p><b>url</b>: <a href="TestScript-TS-Flute-02.html">TestScript Study Inclusion Criteria - Scenario 02</a></p><p><b>version</b>: 0.1.0</p><p><b>name</b>: PcaInclusionCriteriaS02</p><p><b>title</b>: Study Inclusion Criteria - Scenario 02</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>
</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>
</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-S2-ExcludedPatient">DocumentReference/EXP-S2-ExcludedPatient</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>
</text>
<url value="http://hl7.eu/fhir/ig/flute/TestScript/TS-Flute-02"/>
<version value="0.1.0"/>
<name value="PcaInclusionCriteriaS02"/>
<title value="Study Inclusion Criteria - Scenario 02"/>
<status value="draft"/>
<experimental value="true"/>
<date value="2024-09-25T16:08:44+00:00"/>
<publisher value="Flute Project"/>
<contact>
<name value="Flute Project"/>
<telecom>
<system value="url"/>
<value value="https://www.fluteproject.eu/"/>
</telecom>
</contact>
<contact>
<name value="Flute Project"/>
<telecom>
<system value="url"/>
<value value="https://www.fluteproject.eu/"/>
</telecom>
</contact>
<description
value="This TestScript evaluates the inclusion criteria for patients participating in the study."/>
<purpose
value="To verify that the CQL library correctly identifies patients who meet the inclusion criteria for the study."/>
<origin>
<index value="1"/>
<profile>
<system
value="http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types"/>
<code value="FHIR-Client"/>
</profile>
</origin>
<destination>
<index value="1"/>
<profile>
<system
value="http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types"/>
<code value="FHIR-Server"/>
</profile>
</destination>
<fixture id="fixture-transaction-request">
<autocreate value="false"/>
<autodelete value="false"/>
<resource>
<reference value="DocumentReference/EXP-S2-ExcludedPatient"/>
</resource>
</fixture>
<fixture id="fixture-transaction-teardown">
<autocreate value="false"/>
<autodelete value="false"/>
<resource>
<reference value="DocumentReference/EXP-Teardown"/>
</resource>
</fixture>
<fixture id="fixture-valueset-create">
<autocreate value="false"/>
<autodelete value="false"/>
<resource>
<reference value="DocumentReference/VS-PCa"/>
</resource>
</fixture>
<fixture id="fixture-library-create">
<autocreate value="false"/>
<autodelete value="false"/>
<resource>
<reference value="DocumentReference/PcaInclusionCriteria"/>
</resource>
</fixture>
<variable id="patientId">
<name value="patientId"/>
<expression value="Bundle.entry[0].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="obsPIRADSId">
<name value="obsPIRADSId"/>
<expression value="Bundle.entry[6].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="obsPVId">
<name value="obsPVId"/>
<expression value="Bundle.entry[5].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="proDREId">
<name value="proDREId"/>
<expression value="Bundle.entry[4].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="obsPSAId">
<name value="obsPSAId"/>
<expression value="Bundle.entry[3].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="famPCId">
<name value="famPCId"/>
<expression value="Bundle.entry[2].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<variable id="proBiopsyId">
<name value="proBiopsyId"/>
<expression value="Bundle.entry[1].response.location"/>
<sourceId value="fixture-transaction-response"/>
</variable>
<setup>
<action>
<operation id="SET-01">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="transaction"/>
</type>
<resource value="Bundle"/>
<description
value="Sent a transaction request on the test server using the id from fixture-transaction-request."/>
<accept value="application/fhir+json"/>
<contentType value="application/fhir+json"/>
<encodeRequestUrl value="false"/>
<method value="post"/>
<responseId value="fixture-transaction-response"/>
<sourceId value="fixture-transaction-request"/>
</operation>
</action>
<action>
<assert id="SET-01-ASS-01">
<label value="HTTPStatus"/>
<description value="Confirm that the returned HTTP status is 200."/>
<direction value="response"/>
<responseCode value="200"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<operation id="SET-02">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="update"/>
</type>
<resource value="ValueSet"/>
<description
value="Create the ValueSet resource on the test server using the id from fixture-valueset-create."/>
<accept value="application/fhir+json"/>
<contentType value="application/fhir+json"/>
<encodeRequestUrl value="false"/>
<method value="put"/>
<sourceId value="fixture-valueset-create"/>
</operation>
</action>
<action>
<assert id="SET-02-ASS-01">
<label value="HTTPStatus"/>
<description value="Confirm that the returned HTTP status is 201."/>
<direction value="response"/>
<responseCode value="201"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<operation id="SET-03">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="update"/>
</type>
<resource value="Library"/>
<description
value="Create the Library resource on the test server using the id from fixture-library-create."/>
<accept value="application/fhir+json"/>
<contentType value="application/fhir+json"/>
<encodeRequestUrl value="false"/>
<method value="put"/>
<sourceId value="fixture-library-create"/>
</operation>
</action>
<action>
<assert id="SET-03-ASS-01">
<label value="HTTPStatus"/>
<description value="Confirm that the returned HTTP status is 201."/>
<direction value="response"/>
<responseCode value="201"/>
<warningOnly value="false"/>
</assert>
</action>
</setup>
<test id="1-EvaluateLibrary">
<name value="Evaluation of CQL Library for Prostate Cancer Inclusion"/>
<description
value="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 value="Parameters"/>
</extension>
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="operation"/>
</type>
<resource value="Library"/>
<description
value="Evaluate the CQL library to check if the patient meets the inclusion criteria."/>
<contentType value="application/fhir+json"/>
<encodeRequestUrl value="false"/>
<method value="get"/>
<params value="$evaluate?subject={{patientId}}"/>
<targetId value="fixture-library-create"/>
</operation>
</action>
<action>
<assert id="TES-01-ASS-01">
<label value="HTTPStatus"/>
<description value="Confirm that the returned HTTP status is 200."/>
<direction value="response"/>
<responseCode value="200"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert id="TES-01-ASS-02">
<label value="Resource"/>
<description
value="Confirm that the returned resource type is Parameters."/>
<direction value="response"/>
<resource value="Parameters"/>
<warningOnly value="false"/>
</assert>
</action>
<action>
<assert id="TES-01-ASS-03">
<label value="FHIRPath"/>
<description
value="Confirm that the returned Parameters resource contains an 'isIncluded' parameter with a value of false."/>
<direction value="response"/>
<expression
value="Parameters.parameter.where(name = 'isIncluded' ).value=false"/>
<warningOnly value="false"/>
</assert>
</action>
</test>
<teardown>
<action>
<operation id="TED-01">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="transaction"/>
</type>
<resource value="Bundle"/>
<description
value="Delete the testing resources on the test server using the id from fixture-transaction-teardown."/>
<encodeRequestUrl value="true"/>
<method value="delete"/>
<sourceId value="fixture-transaction-teardown"/>
</operation>
</action>
<action>
<operation id="TED-02">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="delete"/>
</type>
<resource value="ValueSet"/>
<description
value="Delete the ValueSet resource on the test server using the id from fixture-library-create."/>
<encodeRequestUrl value="true"/>
<method value="delete"/>
<targetId value="fixture-valueset-create"/>
</operation>
</action>
<action>
<operation id="TED-03">
<type>
<system value="http://hl7.org/fhir/restful-interaction"/>
<code value="delete"/>
</type>
<resource value="Library"/>
<description
value="Delete the Library resource on the test server using the id from fixture-library-create."/>
<encodeRequestUrl value="true"/>
<method value="delete"/>
<targetId value="fixture-library-create"/>
</operation>
</action>
</teardown>
</TestScript>