This page is part of the FHIR Specification (v3.3.0: R4 Ballot 2). 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 | Ballot Status: Informative | Compartments: Not linked to any defined compartments |
Operation Definition
<OperationDefinition xmlns="http://hl7.org/fhir"> <id value="StructureMap-transform"/> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml"> <h2> Model Instance Transformation</h2> <p> OPERATION: Model Instance Transformation</p> <p> The official URL for this operation definition is: </p> <pre> http://hl7.org/fhir/OperationDefinition/StructureMap-transform</pre> <div> <p> The transform operation takes input content, applies a structure map transform, and then returns the output.</p> </div> <p> URL: [base]/StructureMap/$transform</p> <p> URL: [base]/StructureMap/[id]/$transform</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> source</td> <td> 0..1</td> <td> uri</td> <td/> <td> <div> <p> The structure map to apply. This is only needed if the operation is invoked at the resource level. If the $transform operation is invoked on a particular structure map, this will be ignored by the server</p> </div> </td> </tr> <tr> <td> IN</td> <td> content</td> <td> 1..1</td> <td> Resource</td> <td/> <td> <div> <p> The logical content to transform</p> </div> </td> </tr> <tr> <td> OUT</td> <td> return</td> <td> 1..1</td> <td> Resource</td> <td/> <td> <div> <p> The result of the transform</p> </div> </td> </tr> </table> <div> <p> The input and return are specified as 'Resources'. In most usage of the $transform operation, either the input or return content is not a valid FHIR resource. In these cases, the return type is actually a <a href="binary.html">Binary</a> resource. For this operation, the Binary resources may be encoded directly, using a mime-type, as shown in the example. Note: this specification does not yet address the means by which the servers may know the correct mime types for the various content involved </p> </div> </div> </text> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm"> <valueInteger value="2"/> </extension> <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-ballot-status"> <valueString value="Trial Use"/> </extension> <url value="http://hl7.org/fhir/OperationDefinition/StructureMap-transform"/> <name value="Model Instance Transformation"/> <status value="draft"/> <kind value="operation"/> <date value="2018-04-03T12:05:46+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="The transform operation takes input content, applies a structure map transform, and then returns the output."/> <code value="transform"/> <comment value="The input and return are specified as 'Resources'. In most usage of the $transform operation, either the input or return content is not a valid FHIR resource. In these cases, the return type is actually a [Binary](binary.html) resource. For this operation, the Binary resources may be encoded directly, using a mime-type, as shown in the example. Note: this specification does not yet address the means by which the servers may know the correct mime types for the various content involved"/> <resource value="StructureMap"/> <system value="false"/> <type value="true"/> <instance value="true"/> <parameter> <name value="source"/> <use value="in"/> <min value="0"/> <max value="1"/> <documentation value="The structure map to apply. This is only needed if the operation is invoked at the resource level. If the $transform operation is invoked on a particular structure map, this will be ignored by the server"/> <type value="uri"/> </parameter> <parameter> <name value="content"/> <use value="in"/> <min value="1"/> <max value="1"/> <documentation value="The logical content to transform"/> <type value="Resource"/> </parameter> <parameter> <name value="return"/> <use value="out"/> <min value="1"/> <max value="1"/> <documentation value="The result of the transform"/> <type value="Resource"/> </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.