@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 -------------------------------------------------------------------

<http://hl7.org/fhir/SubscriptionTopic/admission-basic> a fhir:SubscriptionTopic ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "admission-basic"] ; # 
  fhir:extension ( [
     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 "fhir"
     ]
  ] ) ; # 
  fhir:url [
     fhir:v "http://example.org/FHIR/SubscriptionTopic/admission-basic"^^xsd:anyURI ;
     fhir:l <http://example.org/FHIR/SubscriptionTopic/admission-basic>
  ] ; # 
  fhir:identifier ( [
     fhir:system [
       fhir:v "urn:ietf:rfc:3986"^^xsd:anyURI ;
       fhir:l <urn:ietf:rfc:3986>
     ] ;
     fhir:value [ fhir:v "urn:uuid:0b67b140-59d0-4c49-9fe8-b62f7fcf4eb9" ]
  ] ) ; # 
  fhir:title [ fhir:v "admission-basic"] ; # 
  fhir:status [ fhir:v "active"] ; # 
  fhir:publisher [ fhir:v "HL7 International / FHIR Infrastructure"] ; # 
  fhir:contact ( [
     fhir:telecom ( [
       fhir:system [ fhir:v "url" ] ;
       fhir:value [ fhir:v "http://www.hl7.org/Special/committees/fiwg" ]
     ] )
  ] ) ; # 
  fhir:description [ fhir:v "Example admission topic using a Basic resource"] ; # 
  fhir:trigger ( [
     fhir:description [ fhir:v "Basic Resource Admission being created or updated into an `in-progress` state" ] ;
     fhir:resource [
       fhir:v "http://hl7.org/fhir/StructureDefinition/Basic"^^xsd:anyURI ;
       fhir:l <http://hl7.org/fhir/StructureDefinition/Basic>
     ] ;
     fhir:supportedInteraction ( [ fhir:v "create" ] [ fhir:v "update" ] ) ;
     fhir:queryCriteria [
       fhir:previous [ fhir:v "code=Admission&admission-status:not=in-progress" ] ;
       fhir:resultForCreate [ fhir:v "test-passes" ] ;
       fhir:current [ fhir:v "code=Admission&admission-status=in-progress" ] ;
       fhir:resultForDelete [ fhir:v "test-fails" ] ;
       fhir:requireBoth [ fhir:v true ]
     ] ;
     fhir:fhirPathCriteria [ fhir:v "(%previous.id.empty() or (%previous.extension('status') != 'in-progress')) and (%current.extension('status') = 'in-progress')" ] ;
     fhir:event [
       fhir:coding ( [
         fhir:system [
           fhir:v "http://terminology.hl7.org/CodeSystem/v2-0003"^^xsd:anyURI ;
           fhir:l <http://terminology.hl7.org/CodeSystem/v2-0003>
         ] ;
         fhir:code [ fhir:v "A01" ] ;
         fhir:display [ fhir:v "ADT/ACK - Admit/visit notification" ]
       ] )
     ] ;
     fhir:canFilterBy ( [
       fhir:description [ fhir:v "Matching based on the Patient. Input is expected to be a search `reference` and match against a reference to the patient." ] ;
       fhir:resource [
         fhir:v "Basic"^^xsd:anyURI ;
         fhir:l fhir:Basic
       ] ;
       fhir:filterParameter [ fhir:v "admission-patient" ] ;
       fhir:filterDefinition [
         fhir:v "http://example.org/SearchParameters/Basic/admission-patient"^^xsd:anyURI ;
         fhir:l <http://example.org/SearchParameters/Basic/admission-patient>
       ]
     ] [
       fhir:description [ fhir:v "Matching based on the Patient Group. Input is expected to be a search `reference` and match against a reference to a group the patient has membership in." ] ;
       fhir:resource [
         fhir:v "Basic"^^xsd:anyURI ;
         fhir:l fhir:Basic
       ] ;
       fhir:filterParameter [ fhir:v "admission-patient-group" ] ;
       fhir:filterDefinition [
         fhir:v "http://example.org/SearchParameters/Basic/admission-patient-group"^^xsd:anyURI ;
         fhir:l <http://example.org/SearchParameters/Basic/admission-patient-group>
       ]
     ] ) ;
     fhir:notificationShape ( [
       fhir:resource [
         fhir:v "Basic"^^xsd:anyURI ;
         fhir:l fhir:Basic
       ] ;
       fhir:include ( [ fhir:v "Basic:admission-patient" ] [ fhir:v "Basic:admission-patient-group" ] [ fhir:v "Basic:admission-diagnosis" ] )
     ] )
  ] ) . # 

# -------------------------------------------------------------------------------------

