R6 Ballot (2nd Draft)

Publish-box (todo)

FHIR Infrastructure icon Work Group Maturity Level: 5Trial Use Compartments: N/A

This operation asks the server to return a subset of the CapabilityStatement resource - just the REST parts that relate to a set of nominated resources - the resources that the client is interested in.

The canonical URL for this operation definition is

 http://hl7.org/fhir/OperationDefinition/CapabilityStatement-subset

Formal Definition (as a OperationDefinition).

URL: [base]/CapabilityStatement/$subset

URL: [base]/CapabilityStatement/[id]/$subset

This is an idempotent operation

In Parameters:
Name Scope Cardinality Type Binding Profile Documentation
server type, system 0..1 uri

The canonical URL - use this if the subset is not invoked on an instance (or on the /metadata end-point)

resource 1..* code

A resource that the client would like to include in the return

Out Parameters:
Name Scope Cardinality Type Binding Profile Documentation
return 1..1 CapabilityStatement

The subsetted CapabilityStatement resource that is returned. This should be tagged with the SUBSETTED code

Note: as this is the only out parameter, it is a resource, and it has the name 'return', the result of this operation is returned directly as a resource

Request: Request a subset of Patient capabilities from a known CapabilityStatement

POST [base]/CapabilityStatement/example/$subset
[other headers]

<Parameters xmlns="http://hl7.org/fhir">
  <parameter>
    <name value="resource"/>
    <valueCode value="Patient"/>
  </parameter>
</Parameters>

Response:

HTTP/1.1 200 OK
[other headers]

<?xml version="1.0" encoding="UTF-8"?>
<CapabilityStatement xmlns="http://hl7.org/fhir">
  <id value="example"/>
  <meta>
    <tag>
      <system value="http://hl7.org/fhir/v3/ObservationValue"/>
      <code value="SUBSETTED"/> <display value="subsetted"/>
    </tag>
  </meta> 
  <rest>
    <resource>
      <type value="Patient"/>
      <interaction>
        <code value="read"/>
      </interaction>
      <interaction>
        <code value="vread"/>
        <documentation value="Only supported for patient records since 12-Dec 2012"/>
      </interaction>
      <interaction>
        <code value="update"/>
      </interaction>
      <interaction>
        <code value="history-instance"/>
      </interaction>
      <interaction>
        <code value="create"/>
      </interaction>
      <interaction>
        <code value="history-type"/>
      </interaction>
      <versioning value="versioned-update"/>
      <readHistory value="true"/>
      <updateCreate value="false"/>
      <conditionalCreate value="true"/> 
      <conditionalUpdate value="false"/>
      <conditionalPatch value="false"/>
      <conditionalDelete value="not-supported"/>
			<searchInclude value="Patient:organization"/>
			<searchRevInclude value="Person:patient"/>
      <searchParam>  
        <name value="identifier"/>
        <definition value="http://hl7.org/fhir/SearchParameter/Patient-identifier"/>
        <type value="token"/>
        <documentation value="Only supports search by institution MRN"/>
      </searchParam>
      <searchParam>  
        <name value="careprovider"/>
        <definition value="http://hl7.org/fhir/SearchParameter/Patient-careprovider"/>
        <type value="reference"/>
     </searchParam>
    </resource>
  </rest>
</CapabilityStatement>

 

For more information about operations, including how they are invoked, see Operations.