This page is part of the FHIR Specification (v4.5.0: R5 Preview #3). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3
FHIR Infrastructure Work Group | Maturity Level: N/A | Standards Status: Informative | Compartments: Not linked to any defined compartments |
Raw XML (canonical form + also see XML Format Specification)
Operation Definition
<?xml version="1.0" encoding="UTF-8"?> <OperationDefinition xmlns="http://hl7.org/fhir"> <id value="CapabilityStatement-conforms"/> <text> <status value="extensions"/> <div xmlns="http://www.w3.org/1999/xhtml"> <h2> Test if a server implements a client's required operations</h2> <p> OPERATION: Test if a server implements a client's required operations</p> <p> The official URL for this operation definition is: </p> <pre> http://hl7.org/fhir/OperationDefinition/CapabilityStatement-conforms</pre> <div> <p> 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 both capability statements by reference, and must ensure that all the referenced resources are available to the conformance server</p> </div> <p> URL: [base]/CapabilityStatement/$conforms</p> <p> Parameters</p> <table class="grid"> <tr> <td> <b> Use</b> </td> <td> <b> Name</b> </td> <td> <b> Cardinality</b> </td> <td> <b> Type</b> </td> <td> <b> Binding</b> </td> <td> <b> Documentation</b> </td> </tr> <tr> <td> IN</td> <td> left</td> <td> 0..1</td> <td> <a href="datatypes.html#canonical">canonical</a> </td> <td/> <td> <div> <p> A canonical reference to the left-hand system's capability statement</p> </div> </td> </tr> <tr> <td> IN</td> <td> right</td> <td> 0..1</td> <td> <a href="datatypes.html#canonical">canonical</a> </td> <td/> <td> <div> <p> A canonical reference to the right-hand system's capability statement</p> </div> </td> </tr> <tr> <td> IN</td> <td> mode</td> <td> 0..1</td> <td> <a href="datatypes.html#code">code</a> </td> <td/> <td> <div> <p> What kind of comparison to perform - server to server, or client to server (use the codes 'server/server' or 'client/server')</p> </div> </td> </tr> <tr> <td> OUT</td> <td> issues</td> <td> 1..1</td> <td> <a href="operationoutcome.html">OperationOutcome</a> </td> <td/> <td> <div> <p> Outcome of the CapabilityStatement test</p> </div> </td> </tr> <tr> <td> OUT</td> <td> union</td> <td> 0..1</td> <td> <a href="capabilitystatement.html">CapabilityStatement</a> </td> <td/> <td> <div> <p> The intersection of the functionality described by the CapabilityStatement resources</p> </div> </td> </tr> <tr> <td> OUT</td> <td> intersection</td> <td> 0..1</td> <td> <a href="capabilitystatement.html">CapabilityStatement</a> </td> <td/> <td> <div> <p> The union of the functionality described by the CapabilityStatement resources</p> </div> </td> </tr> </table> <div> <p> The operation performs a full comparison of the functionality described by the two capability statements, including the profiles and value sets they reference, and also including concept maps and structure maps.</p> <p> The full execution of this operation is still a matter of research, but it is intended to support comparison of systems to see if they will interoperate</p> <p> If the capability statements can be successfully compared, then the return value is a 200 OK with an OperationOutcome along with intersection and union capability statements. The operation outcome can contain errors relating to differences between the capability statements. If the capability statements cannot be compared, because dependencies cannot be located, the return value is a 4xx error, with an OperationOutcome with at least one issue with severity >= error</p> </div> </div> </text> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm"> <valueInteger value="5"/> </extension> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"> <valueCode value="trial-use"/> </extension> <url value="http://hl7.org/fhir/OperationDefinition/CapabilityStatement-conforms"/> <version value="4.5.0"/> <name value="Test if a server implements a client's required operations"/> <status value="draft"/> <kind value="operation"/> <date value="2020-08-20T17:41:31+10:00"/> <publisher value="HL7 (FHIR Project)"/> <contact> <telecom> <system value="url"/> <value value="http://hl7.org/fhir"/> </telecom> <telecom> <system value="email"/> <value value="fhir@lists.hl7.org"/> </telecom> </contact> <description value="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 both capability statements by reference, and must ensure that all the referenced resources are available to the conformance server"/> <code value="conforms"/> <comment value="The operation performs a full comparison of the functionality described by the two capability statements, including the profiles and value sets they reference, and also including concept maps and structure maps. The full execution of this operation is still a matter of research, but it is intended to support comparison of systems to see if they will interoperate If the capability statements can be successfully compared, then the return value is a 200 OK with an OperationOutcome along with intersection and union capability statements. The operation outcome can contain errors relating to differences between the capability statements. If the capability statements cannot be compared, because dependencies cannot be located, the return value is a 4xx error, with an OperationOutcome with at least one issue with severity >= error"/> <resource value="CapabilityStatement"/> <system value="false"/> <type value="true"/> <instance value="false"/> <parameter> <name value="left"/> <use value="in"/> <min value="0"/> <max value="1"/> <documentation value="A canonical reference to the left-hand system's capability statement"/> <type value="canonical"/> </parameter> <parameter> <name value="right"/> <use value="in"/> <min value="0"/> <max value="1"/> <documentation value="A canonical reference to the right-hand system's capability statement"/> <type value="canonical"/> </parameter> <parameter> <name value="mode"/> <use value="in"/> <min value="0"/> <max value="1"/> <documentation value="What kind of comparison to perform - server to server, or client to server (use the codes 'server/server' or 'client/server')"/> <type value="code"/> </parameter> <parameter> <name value="issues"/> <use value="out"/> <min value="1"/> <max value="1"/> <documentation value="Outcome of the CapabilityStatement test"/> <type value="OperationOutcome"/> </parameter> <parameter> <name value="union"/> <use value="out"/> <min value="0"/> <max value="1"/> <documentation value="The intersection of the functionality described by the CapabilityStatement resources"/> <type value="CapabilityStatement"/> </parameter> <parameter> <name value="intersection"/> <use value="out"/> <min value="0"/> <max value="1"/> <documentation value="The union of the functionality described by the CapabilityStatement resources"/> <type value="CapabilityStatement"/> </parameter> </OperationDefinition>
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.