http://hl7.org/fhir/StructureDefinition/StructureMap|4.0.1

A Map of relationships between 2 structures that can be used to transform data.
description: A Map of relationships between 2 structures that can be used to transform data.
derivation: specialization
name: StructureMap
type: StructureMap
elements:
  description: {short: Natural language description of the structure map, index: 10}
  date: {short: Date last changed, isSummary: true, index: 7}
  group:
    min: 1
    short: Named sections for reader convenience
    array: true
    isSummary: true
    index: 21
    elements:
      name: {short: Human-readable label, isSummary: true, index: 22}
      extends: {short: Another group that this group adds rules to, isSummary: true, index: 23}
      typeMode:
        short: none | types | type-and-types
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-group-type-mode|4.0.1'}
        isSummary: true
        index: 24
      documentation: {short: Additional description/explanation for group, isSummary: true, index: 25}
      input:
        min: 1
        short: Named instance provided when invoking the map
        array: true
        isSummary: true
        index: 26
        elements:
          name: {short: Name for this instance of data, isSummary: true, index: 27}
          type: {short: Type for this instance of data, isSummary: true, index: 28}
          mode:
            short: source | target
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-input-mode|4.0.1'}
            isSummary: true
            index: 29
          documentation: {short: Documentation for this instance of data, index: 30}
        required: [mode, name]
      rule:
        min: 1
        short: Transform Rule from source to target
        array: true
        isSummary: true
        index: 31
        elements:
          name: {short: Name of the rule for internal references, isSummary: true, index: 32}
          source:
            min: 1
            short: Source inputs to the mapping
            array: true
            isSummary: true
            index: 33
            elements:
              min: {short: Specified minimum cardinality, isSummary: true, index: 35}
              variable: {short: 'Named context for field, if a field is specified', isSummary: true, index: 42}
              element: {short: Optional field for this source, isSummary: true, index: 40}
              check: {short: FHIRPath expression  - must be true or the mapping engine throws an error instead of completing, isSummary: true, index: 44}
              type: {short: Rule only applies if source has this type, isSummary: true, index: 37}
              logMessage: {short: Message to put in log if source exists (FHIRPath), isSummary: true, index: 45}
              max: {short: Specified maximum cardinality (number or *), isSummary: true, index: 36}
              condition: {short: FHIRPath expression  - must be true or the rule does not apply, isSummary: true, index: 43}
              context: {short: Type or variable this rule applies to, isSummary: true, index: 34}
              listMode:
                short: first | not_first | last | not_last | only_one
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-source-list-mode|4.0.1'}
                isSummary: true
                index: 41
              defaultValue:
                short: Default value if no value exists
                choices: []
                isSummary: true
                index: 39
            required: [context]
          target:
            constraint:
              smp-2: {human: Must have a contextType if you have a context, severity: error, expression: context.exists() implies contextType.exists()}
              smp-1: {human: Can only have an element if you have a context, severity: error, expression: element.exists() implies context.exists()}
            short: Content to create because of this mapping rule
            array: true
            isSummary: true
            index: 46
            elements:
              context: {short: Type or variable this rule applies to, isSummary: true, index: 47}
              contextType:
                short: type | variable
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-context-type|4.0.1'}
                isSummary: true
                index: 48
              element: {short: Field to create in the context, isSummary: true, index: 49}
              variable: {short: 'Named context for field, if desired, and a field is specified', isSummary: true, index: 50}
              listMode:
                short: first | share | last | collate
                array: true
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-target-list-mode|4.0.1'}
                isSummary: true
                index: 51
              listRuleId: {short: Internal rule reference for shared list items, isSummary: true, index: 52}
              transform:
                short: create | copy +
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-transform|4.0.1'}
                isSummary: true
                index: 53
              parameter:
                short: Parameters to the transform
                array: true
                isSummary: true
                index: 54
                elements:
                  value:
                    short: Parameter value - variable or literal
                    choices: []
                    isSummary: true
                    index: 56
                required: [value]
          rule:
            elementReference: ['http://hl7.org/fhir/StructureDefinition/StructureMap', elements, group, elements, rule]
            short: Rules contained in this rule
            array: true
            isSummary: true
            index: 57
          dependent:
            short: Which other rules to apply in the context of this rule
            array: true
            isSummary: true
            index: 58
            elements:
              name: {short: Name of a rule or group to apply, isSummary: true, index: 59}
              variable: {min: 1, short: Variable to pass to the rule or group, array: true, isSummary: true, index: 60}
            required: [name, variable]
          documentation: {short: Documentation for this instance of data, index: 61}
        required: [name, source]
    required: [rule, name, input, typeMode]
  publisher: {short: Name of the publisher (organization or individual), isSummary: true, index: 8}
  jurisdiction:
    short: Intended jurisdiction for structure map (if applicable)
    array: true
    binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/jurisdiction'}
    isSummary: true
    index: 12
  purpose: {short: Why this structure map is defined, index: 13}
  name: {short: Name for this structure map (computer friendly), isSummary: true, index: 3}
  useContext: {short: The context that the content is intended to support, array: true, isSummary: true, index: 11}
  copyright: {short: Use and/or publishing restrictions, index: 14}
  experimental: {short: 'For testing purposes, not real usage', isSummary: true, index: 6}
  title: {short: Name for this structure map (human friendly), isSummary: true, index: 4}
  structure:
    short: Structure Definition used by this map
    array: true
    isSummary: true
    index: 15
    elements:
      url: {short: Canonical reference to structure definition, isSummary: true, index: 16}
      mode:
        short: source | queried | target | produced
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/map-model-mode|4.0.1'}
        isSummary: true
        index: 17
      alias: {short: Name for type in this map, isSummary: true, index: 18}
      documentation: {short: Documentation on use of structure, index: 19}
    required: [url, mode]
  status:
    isModifier: true
    short: draft | active | retired | unknown
    binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/publication-status|4.0.1'}
    isModifierReason: This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration
    isSummary: true
    index: 5
  url: {short: 'Canonical identifier for this structure map, represented as a URI (globally unique)', isSummary: true, index: 0}
  identifier: {short: Additional identifier for the structure map, array: true, isSummary: true, index: 1}
  version: {short: Business version of the structure map, isSummary: true, index: 2}
  import: {short: Other maps used by this map (canonical URLs), array: true, isSummary: true, index: 20}
  contact: {short: Contact details for the publisher, array: true, isSummary: true, index: 9}
class: resource
kind: resource
url: http://hl7.org/fhir/StructureDefinition/StructureMap
base: http://hl7.org/fhir/StructureDefinition/DomainResource
version: 4.0.1
required: [url, group, name, status]