| url | Yes | uri | Canonical identifier for this structure map, represented as a URI (globally unique) |
| identifier | No | Identifier[] | Additional identifier for the structure map |
| version | No | string | Business version of the structure map |
| name | Yes | string | Name for this structure map (computer friendly) |
| title | No | string | Name for this structure map (human friendly) |
| status | Yes | code | draft / active / retired / unknown |
| experimental | No | boolean | For testing purposes, not real usage |
| date | No | dateTime | Date last changed |
| publisher | No | string | Name of the publisher (organization or individual) |
| contact | No | ContactDetail[] | Contact details for the publisher |
| description | No | markdown | Natural language description of the structure map |
| useContext | No | UsageContext[] | The context that the content is intended to support |
| jurisdiction | No | CodeableConcept[] | Intended jurisdiction for structure map (if applicable) |
| purpose | No | markdown | Why this structure map is defined |
| copyright | No | markdown | Use and/or publishing restrictions |
| structure | No | StructureMapStructure | Structure Definition used by this map |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - url | Yes | canonical | Canonical reference to structure definition |
| - mode | Yes | code | source / queried / target / produced |
| - alias | No | string | Name for type in this map |
| - documentation | No | string | Documentation on use of structure |
| import | No | canonical[] | Other maps used by this map (canonical URLs) |
| group | Yes | StructureMapGroup | Named sections for reader convenience |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - name | Yes | id | Human-readable label |
| - extends | No | id | Another group that this group adds rules to |
| - typeMode | Yes | code | none / types / type-and-types |
| - documentation | No | string | Additional description/explanation for group |
| - input | Yes | StructureMapGroupInput | Named instance provided when invoking the map |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - name | Yes | id | Name for this instance of data |
| - type | No | string | Type for this instance of data |
| - mode | Yes | code | source / target |
| - documentation | No | string | Documentation for this instance of data |
| - rule | Yes | StructureMapGroupRule | Transform Rule from source to target |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - name | Yes | id | Name of the rule for internal references |
| - source | Yes | StructureMapGroupRuleSource | Source inputs to the mapping |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - context | Yes | id | Type or variable this rule applies to |
| - min | No | integer | Specified minimum cardinality |
| - max | No | string | Specified maximum cardinality (number or *) |
| - type | No | string | Rule only applies if source has this type |
| - defaultValue[x] | No | base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference<>, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta | Default value if no value exists |
| - element | No | string | Optional field for this source |
| - listMode | No | code | first / not_first / last / not_last / only_one |
| - variable | No | id | Named context for field, if a field is specified |
| - condition | No | string | FHIRPath expression - must be true or the rule does not apply |
| - check | No | string | FHIRPath expression - must be true or the mapping engine throws an error instead of completing |
| - logMessage | No | string | Message to put in log if source exists (FHIRPath) |
| - target | No | StructureMapGroupRuleTarget | Content to create because of this mapping rule |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - context | No | id | Type or variable this rule applies to |
| - contextType | No | code | type / variable |
| - element | No | string | Field to create in the context |
| - variable | No | id | Named context for field, if desired, and a field is specified |
| - listMode | No | code[] | first / share / last / collate |
| - listRuleId | No | id | Internal rule reference for shared list items |
| - transform | No | code | create / copy + |
| - parameter | No | StructureMapGroupRuleTargetParameter | Parameters to the transform |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - value[x] | Yes | id, string, boolean, integer, decimal | Parameter value - variable or literal |
| - rule | No | [] | Rules contained in this rule |
| - dependent | No | StructureMapGroupRuleDependent | Which other rules to apply in the context of this rule |
| - id | No | string | Unique id for inter-element referencing |
| - extension | No | Extension[] | Additional content defined by implementations |
| - modifierExtension | No | Extension[] | Extensions that cannot be ignored even if unrecognized |
| - name | Yes | id | Name of a rule or group to apply |
| - variable | Yes | string[] | Variable to pass to the rule or group |
| - documentation | No | string | Documentation for this instance of data |