STU 3 Ballot

This page is part of the FHIR Specification (v1.6.0: STU 3 Ballot 4). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions

Operation-conformance-implements

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


Test if a server implements a client's required operations

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

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

URL: [base]/Conformance/$implements

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

Parameters

UseNameCardinalityTypeBindingDocumentation
INserver0..1uri

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

INclient0..1uri

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

INresource0..1Conformance

The client conformance statement, provided inline

OUTreturn1..1OperationOutcome

Outcome of the conformance test

OUTissues1..1OperationOutcome

Outcome of the conformance test

OUTunion0..1Bundle

The intersection of the functionality described by the conformance resources

OUTintersection0..1Bundle

The union of the functionality described by the conformance resources

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 conformance statement must have an entry for each resource in the client's conformance statement * The servers' resource support must have matching flags for updateCreate, conditionalCreate, conditionalRead, conditionalUpdate, conditionalDelete, searchInclude, searchRevInclude * The server conformance statement must have a matching interaction for each interaction in the client conformance statement (whether or not it is on a resource) * The server must have a search parameter with matching name and definition for any search parameters in the client conformance statement * The server must have an operation definitions with a matching reference for any operations in the client conformance statement

If the conformance 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 conformance 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.