Scalable Consent Management Testing Guide
1.0.0-ballot - ci-build United States of America flag

Scalable Consent Management Testing Guide - Local Development build (v1.0.0-ballot) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

: 01 Read Simple Search - All SUT | 04 Search for an AuditEvent - TTL Representation

Page standards status: Trial-use Maturity Level: 1

Raw ttl | Download


@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:TestScript ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "04-Search-for-an-AuditEvent"] ; # 
  fhir:meta [
    ( fhir:profile [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript>     ] )
  ] ; # 
  fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir:div [ fhir:v "<div xmlns=\"http://www.w3.org/1999/xhtml\"><p class=\"res-header-id\"><b>Generated Narrative: TestScript 04-Search-for-an-AuditEvent</b></p><a name=\"04-Search-for-an-AuditEvent\"> </a><a name=\"hc04-Search-for-an-AuditEvent\"> </a><div style=\"display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%\"><p style=\"margin-bottom: 0px\"/><p style=\"margin-bottom: 0px\">Profile: <a href=\"file://D:\\GitHub\\Touchstone\\testing-ig\\output/StructureDefinition-testscript.html\">AEGIS Touchstone Testing TestScript Profile</a></p></div><blockquote><p><b>AEGIS Touchstone Testing TestScript Rule Extension</b></p><ul><li>ruleId: AssertBodyExists</li><li>path: /FHIRCommon/_reference/rule/AssertBodyExists.groovy</li></ul></blockquote><p><b>StructureDefinition Work Group</b>: cbcc</p><p><b>url</b>: <a href=\"TestScript-04-Search-for-an-AuditEvent.html\">TestScript 01 Read Simple Search - All SUT | 04 Search for an AuditEvent</a></p><p><b>version</b>: 1.0.0-ballot</p><p><b>name</b>: Test_04_Search_for_an_AuditEvent</p><p><b>title</b>: 01 Read Simple Search - All SUT | 04 Search for an AuditEvent</p><p><b>status</b>: Active</p><p><b>date</b>: 2026-03-30</p><p><b>publisher</b>: HL7 International / Community Based Collaborative Care</p><p><b>contact</b>: HL7 International / Community Based Collaborative Care: <a href=\"http://www.hl7.org/Special/committees/cbcc\">http://www.hl7.org/Special/committees/cbcc</a></p><p><b>description</b>: </p><div><p>Test a client and server to verify support for the AuditEvent search interaction\nand the return of at least one valid AuditEvent resource conforming to the FASTConsentAuditEvent profile.\nThis scenario is generic and can be used with any FHIR format and query parameters.\nTest case supporting the FAST Consent Management IG Version: CI.\nSee https://wildfhir4.wildfhir.org/ig/fhir-consent-management-tg/rtm_test_cases.html#testcase-142\nTest System Details (in order of appearance):\n[Origin 1: Consent Client's RESTful client. System Under Test: this must be an external test system (not Touchstone).]\n[Destination 1: Consent Admin Service's RESTful FHIR Server. System Under Test: this must be an external test system (not a mock).]</p>\n</div><p><b>jurisdiction</b>: <span title=\"Codes:{urn:iso:std:iso:3166 US}\">United States of America</span></p><p><b>copyright</b>: </p><div><p>(c) AEGIS.net, Inc. 2026</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/7.1.0/CodeSystem-testscript-profile-origin-types.html#testscript-profile-origin-types-FHIR-Client\">Test script profile origin type: FHIR-Client</a> (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/7.1.0/CodeSystem-testscript-profile-destination-types.html#testscript-profile-destination-types-FHIR-Server\">Test script profile destination type: FHIR-Server</a> (FHIR Server)</td></tr></table><p><b>profile</b>: <a href=\"http://hl7.org/fhir/R4/bundle.html\">http://hl7.org/fhir/StructureDefinition/Bundle</a></p><blockquote><p><b>test</b></p><p><b>name</b>: Step_001_AuditEvent_search</p><p><b>description</b>: Consent Client searches for AuditEvent resources at Consent Admin Service.</p><blockquote><p><b>action</b></p><h3>Operations</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Type</b></td><td><b>Resource</b></td><td><b>Description</b></td><td><b>Destination</b></td><td><b>EncodeRequestUrl</b></td><td><b>Origin</b></td><td><b>RequestId</b></td><td><b>ResponseId</b></td></tr><tr><td style=\"display: none\">*</td><td><a href=\"http://terminology.hl7.org/7.1.0/CodeSystem-testscript-operation-codes.html#testscript-operation-codes-search\">Test script operation code: search</a> (Search)</td><td>AuditEvent</td><td>Search for AuditEvent resources.</td><td>1</td><td>true</td><td>1</td><td>dest-1-FHIRSearch-1-request</td><td>dest-1-FHIRSearch-1-response</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Operator</b></td><td><b>ResponseCode</b></td><td><b>SourceId</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that the returned HTTP status is 200 OK.</td><td>response</td><td>in</td><td>200</td><td>dest-1-FHIRSearch-1-response</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that the response body exists.</td><td>response</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Resource</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that the response resource type is Bundle.</td><td>response</td><td>Bundle</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>ValidateProfileId</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that the response Bundle conforms to the base FHIR Bundle profile. This also validates the contents against any declared profiles.</td><td>response</td><td>Bundle-profile</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Expression</b></td><td><b>Operator</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that the response Bundle type is searchset.</td><td>response</td><td>Bundle.type</td><td>equals</td><td>searchset</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Expression</b></td><td><b>Operator</b></td><td><b>SourceId</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that at least one AuditEvent resource is in the response.</td><td>response</td><td>Bundle.entry.select(resource as AuditEvent).exists()</td><td>equals</td><td>dest-1-FHIRSearch-1-response</td><td>true</td><td>false</td></tr></table></blockquote><blockquote><p><b>action</b></p><h3>Asserts</h3><table class=\"grid\"><tr><td style=\"display: none\">-</td><td><b>Extension</b></td><td><b>Description</b></td><td><b>Direction</b></td><td><b>Expression</b></td><td><b>Operator</b></td><td><b>SourceId</b></td><td><b>Value</b></td><td><b>WarningOnly</b></td></tr><tr><td style=\"display: none\">*</td><td/><td>Confirm that at least one AuditEvent resource in the response declares the FASTConsentAuditEvent profile.</td><td>response</td><td>Bundle.entry.select(resource as AuditEvent).where('http://hl7.org/fhir/us/consent-management/StructureDefinition/FASTConsentAuditEvent' in meta.profile).exists()</td><td>equals</td><td>dest-1-FHIRSearch-1-response</td><td>true</td><td>false</td></tr></table></blockquote></blockquote></div>"^^rdf:XMLLiteral ]
  ] ; # 
  fhir:extension ( [
    ( fhir:extension [
fhir:url [
fhir:v "ruleId"^^xsd:anyURI ;
fhir:l fhir:ruleId       ] ;
fhir:value [
a fhir:Id ;
fhir:v "AssertBodyExists"       ]     ] [
fhir:url [
fhir:v "path"^^xsd:anyURI ;
fhir:l fhir:path       ] ;
fhir:value [
a fhir:String ;
fhir:v "/FHIRCommon/_reference/rule/AssertBodyExists.groovy"       ]     ] ) ;
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-rule"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-rule>     ]
  ] [
fhir:url [
fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/StructureDefinition/structuredefinition-wg>     ] ;
fhir:value [
a fhir:Code ;
fhir:v "cbcc"     ]
  ] ) ; # 
  fhir:url [
fhir:v "http://hl7.org/fhir/us/consent-management-tg/TestScript/04-Search-for-an-AuditEvent"^^xsd:anyURI ;
fhir:l <http://hl7.org/fhir/us/consent-management-tg/TestScript/04-Search-for-an-AuditEvent>
  ] ; # 
  fhir:version [ fhir:v "1.0.0-ballot"] ; # 
  fhir:name [ fhir:v "Test_04_Search_for_an_AuditEvent"] ; # 
  fhir:title [ fhir:v "01 Read Simple Search - All SUT | 04 Search for an AuditEvent"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:date [ fhir:v "2026-03-30"^^xsd:date] ; # 
  fhir:publisher [ fhir:v "HL7 International / Community Based Collaborative Care"] ; # 
  fhir:contact ( [
fhir:name [ fhir:v "HL7 International / Community Based Collaborative Care" ] ;
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://www.hl7.org/Special/committees/cbcc" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "Test a client and server to verify support for the AuditEvent search interaction\r\nand the return of at least one valid AuditEvent resource conforming to the FASTConsentAuditEvent profile.\r\nThis scenario is generic and can be used with any FHIR format and query parameters.\r\nTest case supporting the FAST Consent Management IG Version: CI.\r\nSee https://wildfhir4.wildfhir.org/ig/fhir-consent-management-tg/rtm_test_cases.html#testcase-142\r\n Test System Details (in order of appearance):\r\n [Origin 1: Consent Client's RESTful client. System Under Test: this must be an external test system (not Touchstone).]\r\n [Destination 1: Consent Admin Service's RESTful FHIR Server. System Under Test: this must be an external test system (not a mock).]"] ; # 
  fhir:jurisdiction ( [
    ( fhir:coding [
fhir:system [
fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ;
fhir:l <urn:iso:std:iso:3166>       ] ;
fhir:code [ fhir:v "US" ] ;
fhir:display [ fhir:v "United States of America" ]     ] )
  ] ) ; # 
  fhir:copyright [ fhir:v "(c) AEGIS.net, Inc. 2026"] ; # 
  fhir:origin ( [
fhir:index [ fhir:v 1 ] ;
fhir:profile [
fhir:system [
fhir:v "http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types"^^xsd:anyURI ;
fhir:l <http://terminology.hl7.org/CodeSystem/testscript-profile-origin-types>       ] ;
fhir:code [ fhir:v "FHIR-Client" ]     ]
  ] ) ; # 
  fhir:destination ( [
fhir:index [ fhir:v 1 ] ;
fhir:profile [
fhir:system [
fhir:v "http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types"^^xsd:anyURI ;
fhir:l <http://terminology.hl7.org/CodeSystem/testscript-profile-destination-types>       ] ;
fhir:code [ fhir:v "FHIR-Server" ]     ]
  ] ) ; # 
  fhir:profile ( [
fhir:l <http://hl7.org/fhir/StructureDefinition/Bundle> ;
fhir:id [ fhir:v "Bundle-profile" ] ;
fhir:reference [ fhir:v "http://hl7.org/fhir/StructureDefinition/Bundle" ]
  ] ) ; # 
  fhir:test ( [
fhir:name [ fhir:v "Step_001_AuditEvent_search" ] ;
fhir:description [ fhir:v "Consent Client searches for AuditEvent resources at Consent Admin Service." ] ;
    ( fhir:action [
fhir:operation [
fhir:type [
fhir:system [
fhir:v "http://terminology.hl7.org/CodeSystem/testscript-operation-codes"^^xsd:anyURI ;
fhir:l <http://terminology.hl7.org/CodeSystem/testscript-operation-codes>           ] ;
fhir:code [ fhir:v "search" ]         ] ;
fhir:resource [ fhir:v "AuditEvent" ] ;
fhir:description [ fhir:v "Search for AuditEvent resources." ] ;
fhir:destination [ fhir:v 1 ] ;
fhir:encodeRequestUrl [ fhir:v true ] ;
fhir:origin [ fhir:v 1 ] ;
fhir:requestId [ fhir:v "dest-1-FHIRSearch-1-request" ] ;
fhir:responseId [ fhir:v "dest-1-FHIRSearch-1-response" ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that the returned HTTP status is 200 OK." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:operator [ fhir:v "in" ] ;
fhir:responseCode [ fhir:v "200" ] ;
fhir:sourceId [ fhir:v "dest-1-FHIRSearch-1-response" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
          ( fhir:extension [
fhir:url [
fhir:v "ruleId"^^xsd:anyURI ;
fhir:l fhir:ruleId             ] ;
fhir:value [
a fhir:Id ;
fhir:v "AssertBodyExists"             ]           ] [
            ( fhir:extension [
fhir:url [
fhir:v "name"^^xsd:anyURI ;
fhir:l fhir:name               ] ;
fhir:value [
a fhir:String ;
fhir:v "errorMessage"               ]             ] [
fhir:url [
fhir:v "value"^^xsd:anyURI ;
fhir:l fhir:value               ] ;
fhir:value [
a fhir:String ;
fhir:v "the response body does not exist."               ]             ] ) ;
fhir:url [
fhir:v "param"^^xsd:anyURI ;
fhir:l fhir:param             ]           ] ) ;
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-rule"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-rule>           ]         ] ) ;
fhir:description [ fhir:v "Confirm that the response body exists." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that the response resource type is Bundle." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:resource [ fhir:v "Bundle" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that the response Bundle conforms to the base FHIR Bundle profile. This also validates the contents against any declared profiles." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:validateProfileId [ fhir:v "Bundle-profile" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that the response Bundle type is searchset." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:expression [ fhir:v "Bundle.type" ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:value [ fhir:v "searchset" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that at least one AuditEvent resource is in the response." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:expression [ fhir:v "Bundle.entry.select(resource as AuditEvent).exists()" ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:sourceId [ fhir:v "dest-1-FHIRSearch-1-response" ] ;
fhir:value [ fhir:v "true" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] [
fhir:assert [
        ( fhir:extension [
fhir:url [
fhir:v "http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail"^^xsd:anyURI ;
fhir:l <http://touchstone.aegis.net/touchstone/fhir/testing/StructureDefinition/testscript-assert-stopTestOnFail>           ] ;
fhir:value [
a fhir:Boolean ;
fhir:v false           ]         ] ) ;
fhir:description [ fhir:v "Confirm that at least one AuditEvent resource in the response declares the FASTConsentAuditEvent profile." ] ;
fhir:direction [ fhir:v "response" ] ;
fhir:expression [ fhir:v "Bundle.entry.select(resource as AuditEvent).where('http://hl7.org/fhir/us/consent-management/StructureDefinition/FASTConsentAuditEvent' in meta.profile).exists()" ] ;
fhir:operator [ fhir:v "equals" ] ;
fhir:sourceId [ fhir:v "dest-1-FHIRSearch-1-response" ] ;
fhir:value [ fhir:v "true" ] ;
fhir:warningOnly [ fhir:v false ]       ]     ] )
  ] ) . # 

<http://hl7.org/fhir/StructureDefinition/Bundle> a fhir:StructureDefinition .