This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). 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 |
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="StructureMap-transform"/> <text> <status value="extensions"/> <div xmlns="http://www.w3.org/1999/xhtml"> <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> <a href="datatypes.html#uri">uri</a> </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> <a href="resource.html">Resource</a> </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> <a href="resource.html">Resource</a> </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-standards-status"> <valueCode value="trial-use"/> </extension> <url value="http://hl7.org/fhir/OperationDefinition/StructureMap-transform"/> <version value="5.0.0-ballot"/> <name value="Transform"/> <title value="Model Instance Transformation"/> <status value="draft"/> <kind value="operation"/> <experimental value="false"/> <date value="2022-09-07T10:58:29+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."/> <affectsState value="false"/> <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.