R6 Ballot (2nd Draft)

Publish-box (todo)

Example OperationDefinition/ConceptMap-translate (XML)

Terminology Infrastructure Work GroupMaturity Level: N/AStandards 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="ConceptMap-translate"/> 
  <text> 
    <status value="generated"/> 
    <div xmlns="http://www.w3.org/1999/xhtml">
      <p class="res-header-id">
        <b> Generated Narrative: OperationDefinition ConceptMap-translate</b> 
      </p> 
      <a name="ConceptMap-translate"> </a> 
      <a name="hcConceptMap-translate"> </a> 
      <a name="ConceptMap-translate-en-AU"> </a> 
      <p> URL: [base]/ConceptMap/$translate</p> 
      <p> URL: [base]/ConceptMap/[id]/$translate</p> 
      <p> Parameters</p> 
      <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> url</td> 
          <td> type</td> 
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A canonical URL for a concept map. The server must know the concept map (e.g. it
                 is defined explicitly in the server's concept maps, or it is defined implicitly
                 by some code system known to the server.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> conceptMap</td> 
          <td> type</td> 
          <td> 0..1</td> 
          <td> 
            <a href="conceptmap.html">ConceptMap</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The concept map is provided directly as part of the request. Servers may choose
                 not to accept concept maps in this fashion.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> conceptMapVersion</td> 
          <td> type</td> 
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#string">string</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The identifier that is used to identify a specific version of the concept map to
                 be used for the translation. This is an arbitrary value managed by the concept
                 map author and is not expected to be globally unique. For example, it might be
                 a timestamp (e.g. yyyymmdd) if a managed version is not available.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> sourceCode</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The code that is to be translated. If a code is provided, a system must be provided</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> system</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The system for the code that is to be translated</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> version</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#string">string</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The version of the system, if one was provided in the source data</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> sourceScope</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> Limits the scope of the $translate operation to source codes (ConceptMap.group.element.code)
                 that are members of this value set.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> sourceCoding</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#Coding">Coding</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A coding to translate</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> sourceCodeableConcept</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#CodeableConcept">CodeableConcept</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A full codeableConcept to validate. The server can translate any of the coding
                 values (e.g. existing translations) as it chooses</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> targetCode</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The target code that is to be translated to. If a code is provided, a system must
                 be provided</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> targetCoding</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#Coding">Coding</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A target coding to translate to</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> targetCodeableConcept</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#CodeableConcept">CodeableConcept</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A full codeableConcept to validate. The server can translate any of the coding
                 values (e.g. existing translations) as it chooses</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> targetScope</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> Limits the scope of the $translate operation to target codes (ConceptMap.group.element.target
                .code) that are members of this value set.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> targetSystem</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> identifies a target code system in which a mapping is sought. This parameter is
                 an alternative to the targetScope parameter - only one is required. Searching for
                 any translation to a target code system irrespective of the context (e.g. target
                 valueset) may lead to unsafe results, and it is at the discretion of the server
                 to decide when to support this operation</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> dependency</td> 
          <td/>  
          <td> 0..*</td> 
          <td/>  
          <td/>  
          <td> 
            <div> 
              <p> Data from another attribute that may help produce the correct mapping</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> dependency.attribute</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The attribute for this dependency</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> IN</td> 
          <td> dependency.value</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a>  | 
            <a href="datatypes.html#Coding">Coding</a>  | 
            <a href="datatypes.html#string">string</a>  | 
            <a href="datatypes.html#boolean">boolean</a>  | 
            <a href="datatypes.html#Quantity">Quantity</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The data value for this dependency</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> result</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#boolean">boolean</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> True if the concept could be translated successfully. The value can only be true
                 if at least one returned match has a relationship other than 'not-related-to'.</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> message</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#string">string</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> Error details, for display to a human. If this is provided when result = true,
                 the message carries hints and warnings (e.g. a note that the matches could be improved
                 by providing additional detail)</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match</td> 
          <td/>  
          <td> 0..*</td> 
          <td/>  
          <td/>  
          <td> 
            <div> 
              <p> A concept in the target value set with a relationship. Note that there may be multiple
                 matches of equal or differing relationships, and the matches may include the 'not-related-to'
                 relationship value which means that there is no translation</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.relationship</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> A code indicating the relationship (e.g., equivalent) of the translation, using
                 values from 
                <a href="valueset-concept-map-relationship.html">ConceptMapRelationship</a> 
              </p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.concept</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#Coding">Coding</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The translation outcome. Note that this would never have userSelected = true, since
                 the process of translations implies that the user is not selecting the code (and
                 only the client could know differently)</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.property</td> 
          <td/>  
          <td> 0..*</td> 
          <td/>  
          <td/>  
          <td> 
            <div> 
              <p> A property of this mapping (may be used to supply for example, mapping priority,
                 provenance, presentation hints, flag as experimental, and additional documentation)</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.property.uri</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The uri that identifies the property</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.property.value</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#Coding">Coding</a>  | 
            <a href="datatypes.html#string">string</a>  | 
            <a href="datatypes.html#integer">integer</a>  | 
            <a href="datatypes.html#boolean">boolean</a>  | 
            <a href="datatypes.html#dateTime">dateTime</a>  | 
            <a href="datatypes.html#decimal">decimal</a>  | 
            <a href="datatypes.html#code">code</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The value of the property</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.product</td> 
          <td/>  
          <td> 0..*</td> 
          <td/>  
          <td/>  
          <td> 
            <div> 
              <p> A data value to go in an attribute that is the product of this mapping</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.product.attribute</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The attribute for this product</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.product.value</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a>  | 
            <a href="datatypes.html#Coding">Coding</a>  | 
            <a href="datatypes.html#string">string</a>  | 
            <a href="datatypes.html#boolean">boolean</a>  | 
            <a href="datatypes.html#Quantity">Quantity</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The value for this product</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.dependsOn</td> 
          <td/>  
          <td> 0..*</td> 
          <td/>  
          <td/>  
          <td> 
            <div> 
              <p> An data value in an additional attribute that this mapping depends on</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.dependsOn.attribute</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The attribute for this product</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.dependsOn.value</td> 
          <td/>  
          <td> 1..1</td> 
          <td> 
            <a href="datatypes.html#code">code</a>  | 
            <a href="datatypes.html#Coding">Coding</a>  | 
            <a href="datatypes.html#string">string</a>  | 
            <a href="datatypes.html#integer">integer</a>  | 
            <a href="datatypes.html#boolean">boolean</a>  | 
            <a href="datatypes.html#dateTime">dateTime</a>  | 
            <a href="datatypes.html#decimal">decimal</a>  | 
            <a href="datatypes.html#uri">uri</a>  | 
            <a href="datatypes.html#id">id</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The value for this product</p> 

            </div> 
          </td> 
        </tr> 
        <tr> 
          <td> OUT</td> 
          <td> match.originMap</td> 
          <td/>  
          <td> 0..1</td> 
          <td> 
            <a href="datatypes.html#uri">uri</a> 
          </td> 
          <td/>  
          <td> 
            <div> 
              <p> The canonical reference to the concept map from which this mapping comes from</p> 

            </div> 
          </td> 
        </tr> 
      </table> 
    </div> 
  </text> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
    <valueInteger value="1"/> 
  </extension> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
    <valueCode value="trial-use"/> 
  </extension> 
  <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
    <valueCode value="vocab"/> 
  </extension> 
  <url value="http://hl7.org/fhir/OperationDefinition/ConceptMap-translate"/> 
  <version value="6.0.0-ballot2"/> 
  <name value="Translate"/> 
  <title value="Concept Translation"/> 
  <status value="draft"/> 
  <kind value="operation"/> 
  <experimental value="false"/> 
  <date value="2024-08-12T16:52:12+08:00"/> 
  <publisher value="HL7 International / Terminology 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/Vocab"/> 
    </telecom> 
  </contact> 
  <description value="Translate a code from one value set to another, based on the specified ConceptMap
   resource. If no ConceptMap resource is specified, then other additional knowledge
   available to the server may be used. 

 One (and only one) of the in parameters (sourceCode, sourceCoding, sourceCodeableConcept,
   targetCode, targetCoding, or targetCodeableConcept) SHALL be provided, to identify
   the code that is to be translated.  

 The operation returns a set of parameters including a 'result' for whether there
   is an acceptable match, and a list of possible matches. Note that the list of matches
   may include notes of codes for which mapping is specifically excluded (i.e. 'not-related-to')
  , so implementers have to check the target.relationship for each match. If a source*
   parameter is provided, the $translate operation will return all matches whereby
   the provided source concept is the source of a mapping relationship (in a specified
   ConceptMap or otherwise known to the server). If a target* parameter is provided,
   the $translate operation will return all matches whereby the provided target concept
   is the target of a mapping relationship (in a specified ConceptMap or otherwise
   known to the server). Note: The source value set is an optional parameter because
   in some cases, the client cannot know what the source value set is. However, without
   a source value set, the server may be unable to safely identify an applicable concept
   map, and would return an error. For this reason, a source value set SHOULD always
   be provided. Note that servers may be able to identify an appropriate concept map
   without a source value set if there is a full mapping for the entire code system
   in the concept map, or by manual intervention."/> 
  <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="translate"/> 
  <resource value="ConceptMap"/> 
  <system value="false"/> 
  <type value="true"/> 
  <instance value="true"/> 
  <parameter> 
    <name value="url"/> 
    <use value="in"/> 
    <scope value="type"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="A canonical URL for a concept map. The server must know the concept map (e.g. it
     is defined explicitly in the server's concept maps, or it is defined implicitly
     by some code system known to the server."/> 
    <type value="uri"/> 
  </parameter> 
  <parameter> 
    <name value="conceptMap"/> 
    <use value="in"/> 
    <scope value="type"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The concept map is provided directly as part of the request. Servers may choose
     not to accept concept maps in this fashion."/> 
    <type value="ConceptMap"/> 
  </parameter> 
  <parameter> 
    <name value="conceptMapVersion"/> 
    <use value="in"/> 
    <scope value="type"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The identifier that is used to identify a specific version of the concept map to
     be used for the translation. This is an arbitrary value managed by the concept
     map author and is not expected to be globally unique. For example, it might be
     a timestamp (e.g. yyyymmdd) if a managed version is not available."/> 
    <type value="string"/> 
  </parameter> 
  <parameter> 
    <name value="sourceCode"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The code that is to be translated. If a code is provided, a system must be provided"/> 
    <type value="code"/> 
  </parameter> 
  <parameter> 
    <name value="system"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The system for the code that is to be translated"/> 
    <type value="uri"/> 
  </parameter> 
  <parameter> 
    <name value="version"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The version of the system, if one was provided in the source data"/> 
    <type value="string"/> 
  </parameter> 
  <parameter> 
    <name value="sourceScope"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="Limits the scope of the $translate operation to source codes (ConceptMap.group.element.code)
     that are members of this value set."/> 
    <type value="uri"/> 
  </parameter> 
  <parameter> 
    <name value="sourceCoding"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="A coding to translate"/> 
    <type value="Coding"/> 
  </parameter> 
  <parameter> 
    <name value="sourceCodeableConcept"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="A full codeableConcept to validate. The server can translate any of the coding
     values (e.g. existing translations) as it chooses"/> 
    <type value="CodeableConcept"/> 
  </parameter> 
  <parameter> 
    <name value="targetCode"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="The target code that is to be translated to. If a code is provided, a system must
     be provided"/> 
    <type value="code"/> 
  </parameter> 
  <parameter> 
    <name value="targetCoding"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="A target coding to translate to"/> 
    <type value="Coding"/> 
  </parameter> 
  <parameter> 
    <name value="targetCodeableConcept"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="A full codeableConcept to validate. The server can translate any of the coding
     values (e.g. existing translations) as it chooses"/> 
    <type value="CodeableConcept"/> 
  </parameter> 
  <parameter> 
    <name value="targetScope"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="Limits the scope of the $translate operation to target codes (ConceptMap.group.element.target
    .code) that are members of this value set."/> 
    <type value="uri"/> 
  </parameter> 
  <parameter> 
    <name value="targetSystem"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="identifies a target code system in which a mapping is sought. This parameter is
     an alternative to the targetScope parameter - only one is required. Searching for
     any translation to a target code system irrespective of the context (e.g. target
     valueset) may lead to unsafe results, and it is at the discretion of the server
     to decide when to support this operation"/> 
    <type value="uri"/> 
  </parameter> 
  <parameter> 
    <name value="dependency"/> 
    <use value="in"/> 
    <min value="0"/> 
    <max value="*"/> 
    <documentation value="Data from another attribute that may help produce the correct mapping"/> 
    <part> 
      <name value="attribute"/> 
      <use value="in"/> 
      <min value="0"/> 
      <max value="1"/> 
      <documentation value="The attribute for this dependency"/> 
      <type value="uri"/> 
    </part> 
    <part> 
      <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
        <valueUri value="code"/> 
      </extension> 
      <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
        <valueUri value="Coding"/> 
      </extension> 
      <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
        <valueUri value="string"/> 
      </extension> 
      <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
        <valueUri value="boolean"/> 
      </extension> 
      <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
        <valueUri value="Quantity"/> 
      </extension> 
      <name value="value"/> 
      <use value="in"/> 
      <min value="0"/> 
      <max value="1"/> 
      <documentation value="The data value for this dependency"/> 
      <type value="Element"/> 
    </part> 
  </parameter> 
  <parameter> 
    <name value="result"/> 
    <use value="out"/> 
    <min value="1"/> 
    <max value="1"/> 
    <documentation value="True if the concept could be translated successfully. The value can only be true
     if at least one returned match has a relationship other than 'not-related-to'."/> 
    <type value="boolean"/> 
  </parameter> 
  <parameter> 
    <name value="message"/> 
    <use value="out"/> 
    <min value="0"/> 
    <max value="1"/> 
    <documentation value="Error details, for display to a human. If this is provided when result = true,
     the message carries hints and warnings (e.g. a note that the matches could be improved
     by providing additional detail)"/> 
    <type value="string"/> 
  </parameter> 
  <parameter> 
    <name value="match"/> 
    <use value="out"/> 
    <min value="0"/> 
    <max value="*"/> 
    <documentation value="A concept in the target value set with a relationship. Note that there may be multiple
     matches of equal or differing relationships, and the matches may include the 'not-related-to'
     relationship value which means that there is no translation"/> 
    <part> 
      <name value="relationship"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="1"/> 
      <documentation value="A code indicating the relationship (e.g., equivalent) of the translation, using
       values from [ConceptMapRelationship](valueset-concept-map-relationship.html)"/> 
      <type value="code"/> 
    </part> 
    <part> 
      <name value="concept"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="1"/> 
      <documentation value="The translation outcome. Note that this would never have userSelected = true, since
       the process of translations implies that the user is not selecting the code (and
       only the client could know differently)"/> 
      <type value="Coding"/> 
    </part> 
    <part> 
      <name value="property"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="*"/> 
      <documentation value="A property of this mapping (may be used to supply for example, mapping priority,
       provenance, presentation hints, flag as experimental, and additional documentation)"/> 
      <part> 
        <name value="uri"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The uri that identifies the property"/> 
        <type value="uri"/> 
      </part> 
      <part> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="Coding"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="string"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="integer"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="boolean"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="dateTime"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="decimal"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="code"/> 
        </extension> 
        <name value="value"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The value of the property"/> 
        <type value="Element"/> 
      </part> 
    </part> 
    <part> 
      <name value="product"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="*"/> 
      <documentation value="A data value to go in an attribute that is the product of this mapping"/> 
      <part> 
        <name value="attribute"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The attribute for this product"/> 
        <type value="uri"/> 
      </part> 
      <part> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="code"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="Coding"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="string"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="boolean"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="Quantity"/> 
        </extension> 
        <name value="value"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The value for this product"/> 
        <type value="Element"/> 
      </part> 
    </part> 
    <part> 
      <name value="dependsOn"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="*"/> 
      <documentation value="An data value in an additional attribute that this mapping depends on"/> 
      <part> 
        <name value="attribute"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The attribute for this product"/> 
        <type value="uri"/> 
      </part> 
      <part> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="code"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="Coding"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="string"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="integer"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="boolean"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="dateTime"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="decimal"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="uri"/> 
        </extension> 
        <extension url="http://hl7.org/fhir/StructureDefinition/operationdefinition-allowed-type">
          <valueUri value="id"/> 
        </extension> 
        <name value="value"/> 
        <use value="out"/> 
        <min value="1"/> 
        <max value="1"/> 
        <documentation value="The value for this product"/> 
        <type value="Element"/> 
      </part> 
    </part> 
    <part> 
      <name value="originMap"/> 
      <use value="out"/> 
      <min value="0"/> 
      <max value="1"/> 
      <documentation value="The canonical reference to the concept map from which this mapping comes from"/> 
      <type value="uri"/> 
    </part> 
  </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.