Release 4 R6 Ballot (1st Full Ballot)

This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU v6.0.0-ballot4: Release 6 Ballot (1st Full Ballot) (see Ballot Notes ) in it's permanent home (it will always be available at this URL). ). 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 for published versions

Operation-structuremap-transform.xml

Example OperationDefinition/StructureMap-transform (XML)

Maturity Level : N/A
Responsible Owner: FHIR Infrastructure Work Group Standards Status : Informative Compartments : Not linked to any defined compartments

Raw XML ( canonical form + also see XML Format Specification )

Jump past Narrative

Operation Definition

<?xml version="1.0" encoding="UTF-8"?> The transform operation takes input content, applies a structure map transform, and then returns the output. 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 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 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 The transform operation takes input content, applies a structure map transform, and then returns the output. 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 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
<?xml version="1.0" encoding="UTF-8"?>
<OperationDefinition xmlns="http://hl7.org/fhir">  <id value="StructureMap-transform"/>   <text>     <status value="generated"/>     <div xmlns="http://www.w3.org/1999/xhtml">      <p class="res-header-id">        <b> Generated Narrative: OperationDefinition StructureMap-transform</b>       </p>       <a name="StructureMap-transform"> </a>       <a name="hcStructureMap-transform"> </a>       <p> URL: [base]/StructureMap/$transform</p>       <p> URL: [base]/StructureMap/[id]/$transform</p>       <h3> Parameters</h3>       <table class="grid">        <tr>           <td>             <b> Use</b>           </td>           <td>             <b> Name</b>           </td>           <td>             <b> Scope</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> type</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 and no structureMap has been provided. 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> sourceMap</td>           <td/>            <td> 0..1</td>           <td>             <a href="structuremap.html">StructureMap</a>           </td>           <td/>            <td>             <div>               <p> The structure map to apply. This is only needed when the operation is invoked at
                 the resource level and no URI has been provided.</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> supportingMap</td>           <td/>            <td> 0..*</td>           <td>             <a href="structuremap.html">StructureMap</a>           </td>           <td/>            <td>             <div>               <p> StructureMap resources that support the source map. If a source URL is provided,
                 the map can be provided in this parameter (or it can be provided as sourceMap).</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> srcMap</td>           <td/>            <td> 0..*</td>           <td>             <a href="datatypes.html#string">string</a>           </td>           <td/>            <td>             <div>               <p> The same as structureMap, but the resource is provided in the mapping language
                 rather than as a structureMap.</p> 
            </div>           </td>         </tr>         <tr>           <td> IN</td>           <td> content</td>           <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/>            <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="normative"/>   </extension>   <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">    <valueCode value="fhir"/>   </extension>   <url value="http://hl7.org/fhir/OperationDefinition/StructureMap-transform"/>   <version value="6.0.0-ballot4"/>   <name value="Transform"/>   <title value="Model Instance Transformation"/>   <status value="active"/>   <kind value="operation"/>   <experimental value="false"/>   <date value="2025-12-18T07:07:42+11:00"/>   <publisher value="HL7 International / FHIR Infrastructure"/>   <contact>     <telecom>       <system value="url"/>       <value value="http://hl7.org/fhir"/>     </telecom>     <telecom>       <system value="email"/>       <value value="fhir@lists.hl7.org"/>     </telecom>   </contact>   <contact>     <telecom>       <system value="url"/>       <value value="http://www.hl7.org/Special/committees/fiwg"/>     </telecom>   </contact>   <description value="The transform operation takes input content, applies a structure map transform,
   and then returns the output."/> 
  <jurisdiction>     <coding>       <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>       <code value="001"/>       <display value="World"/>     </coding>   </jurisdiction>   <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"/>     <scope value="type"/>     <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 and no structureMap has been provided. 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="sourceMap"/>     <use value="in"/>     <min value="0"/>     <max value="1"/>     <documentation value="The structure map to apply. This is only needed when the operation is invoked at
     the resource level and no URI has been provided."/> 
    <type value="StructureMap"/>   </parameter>   <parameter>     <name value="supportingMap"/>     <use value="in"/>     <min value="0"/>     <max value="*"/>     <documentation value="StructureMap resources that support the source map. If a source URL is provided,
     the map can be provided in this parameter (or it can be provided as sourceMap)."/> 
    <type value="StructureMap"/>   </parameter>   <parameter>     <name value="srcMap"/>     <use value="in"/>     <min value="0"/>     <max value="*"/>     <documentation value="The same as structureMap, but the resource is provided in the mapping language
     rather than as a structureMap."/> 
    <type value="string"/>   </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.