Release 5 Preview #2

Operation-capabilitystatement-implements

FHIR Infrastructure Work GroupMaturity Level: N/AStandards Status: InformativeCompartments: Not linked to any defined compartments

This is the narrative for the resource. See also the XML, JSON or Turtle format.


Test if a server implements a client's required operations

OPERATION: Test if a server implements a client's required operations

The official URL for this operation definition is:

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

This operation asks the server to check that it implements all the resources, interactions, search parameters, and operations that the client provides in its capability statement. The client provides its capability statement inline, or by referring the server to the canonical URL of its capability statement

URL: [base]/CapabilityStatement/$implements

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

Parameters

UseNameCardinalityTypeBindingDocumentation
INserver0..1canonical

A canonical reference to the server capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)

INclient0..1canonical

A canonical reference to the client capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)

INresource0..1CapabilityStatement

The client capability statement, provided inline

OUTreturn1..1OperationOutcome

Outcome of the CapabilityStatement test

The operation does not perform a full conformance check; in particular it does not check that the profiles align. It merely checks that the behaviors the client wishes to use are provided Technically, this operation is implemented as follows:

  • The server's capability statement must have an entry for each resource in the client's capability statement
  • The server's resource support must have matching flags for updateCreate, conditionalCreate, conditionalRead, conditionalUpdate, conditionalDelete, searchInclude, searchRevInclude
  • The server's capability statement must have a matching interaction for each interaction in the client capability statement (whether or not it is on a resource)
  • The server's capability statement must have a search parameter with matching name and definition for any search parameters in the client capability statement
  • The server must have an operation definition with a matching reference for any operations in the client capability statement

If the capability statements match by these rules, then the return value is a 200 OK with an operation outcome that contains no issues with severity >= error. If the capability statement doesn't match, the return value is a 4xx error, with an OperationOutcome with at least one issue with severity >= error


 

 

Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.