This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version. 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: 4 | Trial Use | Security Category: Anonymous | Compartments: No defined compartments |
A Map of relationships between 2 structures that can be used to transform data.
The StructureMap resource defines a detailed set of rules that describe how one Structure is related to another and provides sufficient detail to allow for automated conversion of instances.
The intention of the structure map resource is to allow a specialist in formats and interoperability to specify the full relationships between two structures (e.g. a CDA document and a set of FHIR resources), and then many different systems - both testing and production clinical systems - can leverage that to automatically transform from one format to the other.
Maps are unidirectional: they map from the source structure to the target structure, and no reverse map is implied. Even if the mapping is simple, and loss-less, it cannot be assumed that there are no conditions that might additionally apply in the reverse direction.
The mapping language, along with a concrete syntax, is defined in detail in the FHIR Mapping Language. The StructureMap resource represents the abstract syntax, and the concrete syntax is the recommended narrative representation for a StructureMap. See also the Tutorial.
Note that many mappings between models only establish conceptual equivalence between the structures. These models are useful because they quickly convey how the structures are related to humans, whereas more maps with sufficient detail to support instance transformation are necessarily full of fine detail that can obscure the conceptual relationships. The ConceptMap resource is suitable for representing high level relationships between models, while this StructureMap resource is intended to describe the full details that need to be known in order to transform an instance of data from one structure to another.
The StructureMap resource assumes that both the source and the target models are fully defined using StructureDefinition resources - either resources, or logical models, and is described accordingly. However, there is no direct relationship between the mapping language contained in the StructureMap resource, and the existence of the appropriate structure definitions, so that this mapping language could be used to define a map from an HL7 V2 message to a CDA document. Note, that various implementation contexts may introduce a direct relationship (e.g. see [op to defined]).
It's possible to apply the mapping language to structures that do not even have (or cannot have) formally defined types, although the type-related parts of the mapping language cannot be used in these cases.
The Mapping Language and the StructureMap
resource are built
on top of FHIRPath, and a FHIRPath implementation is required in order to
execute a StructureMap.
Each structure map contains, in addition to the standard metadata that all conformance resources contain, the following information:
Each group of rules defines a set of input and output variables that must be passed when the group is invoked in a particular context. When a group is invoked, all the rules in the group are checked to see whether they apply.
Each rule may have some or all of the following properties:
The mapping language is entirely declarative; there is no imperative or procedural aspects to the definitions.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
StructureMap | TU | DomainResource | A Map of relationships between 2 structures that can be used to transform data + Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension Interfaces Implemented: CanonicalResource | |
url | ΣC | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) + Warning: URL should not contain | or # - these characters make processing canonical references problematic |
identifier | Σ | 0..* | Identifier | Additional identifier for the structure map |
version | Σ | 0..1 | string | Business version of the structure map |
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: Version Algorithm (Extensible) | |
versionAlgorithmString | string | |||
versionAlgorithmCoding | Coding | |||
name | ΣC | 1..1 | string | Name for this structure map (computer friendly) |
title | ΣT | 0..1 | string | Name for this structure map (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (Required) |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 0..1 | dateTime | Date last changed |
publisher | ΣT | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | T | 0..1 | markdown | Natural language description of the structure map |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | ΣXD | 0..* | CodeableConcept | Intended jurisdiction for structure map (if applicable) Binding: Jurisdiction ValueSet (Extensible) |
purpose | T | 0..1 | markdown | Why this structure map is defined |
copyright | T | 0..1 | markdown | Use and/or publishing restrictions |
copyrightLabel | T | 0..1 | string | Copyright holder and year(s) |
structure | Σ | 0..* | BackboneElement | Structure Definition used by this map |
url | Σ | 1..1 | canonical(StructureDefinition) | Canonical reference to structure definition |
mode | Σ | 1..1 | code | source | queried | target | produced Binding: Structure Map Model Mode (Required) |
alias | Σ | 0..1 | string | Name for type in this map |
documentation | 0..1 | string | Documentation on use of structure | |
import | Σ | 0..* | canonical(StructureMap) | Other maps used by this map (canonical URLs) |
const | Σ | 0..* | BackboneElement | Definition of the constant value used in the map rules |
name | Σ | 0..1 | id | Constant name |
value | Σ | 0..1 | string | FHIRPath exression - value of the constant |
group | Σ | 1..* | BackboneElement | Named sections for reader convenience |
name | Σ | 1..1 | id | Human-readable label |
extends | Σ | 0..1 | id | Another group that this group adds rules to |
typeMode | Σ | 0..1 | code | types | type-and-types Binding: Structure Map Group Type Mode (Required) |
documentation | Σ | 0..1 | string | Additional description/explanation for group |
input | Σ | 1..* | BackboneElement | Named instance provided when invoking the map |
name | Σ | 1..1 | id | Name for this instance of data |
type | Σ | 0..1 | string | Type for this instance of data |
mode | Σ | 1..1 | code | source | target Binding: Structure Map Input Mode (Required) |
documentation | 0..1 | string | Documentation for this instance of data | |
rule | Σ | 0..* | BackboneElement | Transform Rule from source to target |
name | Σ | 0..1 | id | Name of the rule for internal references |
source | Σ | 1..* | BackboneElement | Source inputs to the mapping |
context | Σ | 1..1 | id | Type or variable this rule applies to |
min | Σ | 0..1 | integer | Specified minimum cardinality |
max | Σ | 0..1 | string | Specified maximum cardinality (number or *) |
type | Σ | 0..1 | string | Rule only applies if source has this type |
defaultValue | Σ | 0..1 | string | Default value if no value exists |
element | Σ | 0..1 | string | Optional field for this source |
listMode | Σ | 0..1 | code | first | not_first | last | not_last | only_one Binding: Structure Map Source List Mode (Required) |
variable | Σ | 0..1 | id | Named context for field, if a field is specified |
condition | Σ | 0..1 | string | FHIRPath expression - must be true or the rule does not apply |
check | Σ | 0..1 | string | FHIRPath expression - must be true or the mapping engine throws an error instead of completing |
logMessage | Σ | 0..1 | string | Message to put in log if source exists (FHIRPath) |
target | ΣC | 0..* | BackboneElement | Content to create because of this mapping rule + Rule: Can only have an element if you have a context |
context | ΣC | 0..1 | string | Variable this rule applies to |
element | ΣC | 0..1 | string | Field to create in the context |
variable | Σ | 0..1 | id | Named context for field, if desired, and a field is specified |
listMode | Σ | 0..* | code | first | share | last | single Binding: Structure Map Target List Mode (Required) |
listRuleId | Σ | 0..1 | id | Internal rule reference for shared list items |
transform | Σ | 0..1 | code | create | copy + Binding: Structure Map Transform (Required) |
parameter | Σ | 0..* | BackboneElement | Parameters to the transform |
value[x] | Σ | 1..1 | Parameter value - variable or literal | |
valueId | id | |||
valueString | string | |||
valueBoolean | boolean | |||
valueInteger | integer | |||
valueDecimal | decimal | |||
valueDate | date | |||
valueTime | time | |||
valueDateTime | dateTime | |||
rule | Σ | 0..* | see rule | Rules contained in this rule |
dependent | Σ | 0..* | BackboneElement | Which other rules to apply in the context of this rule |
name | Σ | 1..1 | id | Name of a rule or group to apply |
parameter | Σ | 1..* | see parameter | Parameter to pass to the rule or group |
documentation | 0..1 | string | Documentation for this instance of data | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<StructureMap xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 1..1 Canonical identifier for this structure map, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the structure map --></identifier> <version value="[string]"/><!-- 0..1 Business version of the structure map --> <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 1..1 Name for this structure map (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this structure map (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the structure map --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for structure map (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this structure map is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <structure> <!-- 0..* Structure Definition used by this map --> <url><!-- 1..1 canonical(StructureDefinition) Canonical reference to structure definition --></url> <mode value="[code]"/><!-- 1..1 source | queried | target | produced --> <alias value="[string]"/><!-- 0..1 Name for type in this map --> <documentation value="[string]"/><!-- 0..1 Documentation on use of structure --> </structure> <import><!-- 0..* canonical(StructureMap) Other maps used by this map (canonical URLs) --></import> <const> <!-- 0..* Definition of the constant value used in the map rules --> <name value="[id]"/><!-- 0..1 Constant name --> <value value="[string]"/><!-- 0..1 FHIRPath exression - value of the constant --> </const> <group> <!-- 1..* Named sections for reader convenience --> <name value="[id]"/><!-- 1..1 Human-readable label --> <extends value="[id]"/><!-- 0..1 Another group that this group adds rules to --> <typeMode value="[code]"/><!-- 0..1 types | type-and-types --> <documentation value="[string]"/><!-- 0..1 Additional description/explanation for group --> <input> <!-- 1..* Named instance provided when invoking the map --> <name value="[id]"/><!-- 1..1 Name for this instance of data --> <type value="[string]"/><!-- 0..1 Type for this instance of data --> <mode value="[code]"/><!-- 1..1 source | target --> <documentation value="[string]"/><!-- 0..1 Documentation for this instance of data --> </input> <rule> <!-- 0..* Transform Rule from source to target --> <name value="[id]"/><!-- 0..1 Name of the rule for internal references --> <source> <!-- 1..* Source inputs to the mapping --> <context value="[id]"/><!-- 1..1 Type or variable this rule applies to --> <min value="[integer]"/><!-- 0..1 Specified minimum cardinality --> <max value="[string]"/><!-- 0..1 Specified maximum cardinality (number or *) --> <type value="[string]"/><!-- 0..1 Rule only applies if source has this type --> <defaultValue value="[string]"/><!-- 0..1 Default value if no value exists --> <element value="[string]"/><!-- 0..1 Optional field for this source --> <listMode value="[code]"/><!-- 0..1 first | not_first | last | not_last | only_one --> <variable value="[id]"/><!-- 0..1 Named context for field, if a field is specified --> <condition value="[string]"/><!-- 0..1 FHIRPath expression - must be true or the rule does not apply --> <check value="[string]"/><!-- 0..1 FHIRPath expression - must be true or the mapping engine throws an error instead of completing --> <logMessage value="[string]"/><!-- 0..1 Message to put in log if source exists (FHIRPath) --> </source> <target> <!-- 0..* Content to create because of this mapping rule --> <context value="[string]"/><!-- I 0..1 Variable this rule applies to --> <element value="[string]"/><!-- I 0..1 Field to create in the context --> <variable value="[id]"/><!-- 0..1 Named context for field, if desired, and a field is specified --> <listMode value="[code]"/><!-- 0..* first | share | last | single --> <listRuleId value="[id]"/><!-- 0..1 Internal rule reference for shared list items --> <transform value="[code]"/><!-- 0..1 create | copy + --> <parameter> <!-- 0..* Parameters to the transform --> <value[x]><!-- 1..1 id|string|boolean|integer|decimal|date|time|dateTime Parameter value - variable or literal --></value[x]> </parameter> </target> <rule><!-- 0..* Content as for StructureMap.group.rule Rules contained in this rule --></rule> <dependent> <!-- 0..* Which other rules to apply in the context of this rule --> <name value="[id]"/><!-- 1..1 Name of a rule or group to apply --> <parameter><!-- 1..* Content as for StructureMap.group.rule.target.parameter Parameter to pass to the rule or group --></parameter> </dependent> <documentation value="[string]"/><!-- 0..1 Documentation for this instance of data --> </rule> </group> </StructureMap>
JSON Template
{ "resourceType" : "StructureMap", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // R! Canonical identifier for this structure map, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the structure map "version" : "<string>", // Business version of the structure map // versionAlgorithm[x]: How to compare versions. One of these 2: "versionAlgorithmString" : "<string>", "versionAlgorithmCoding" : { Coding }, "name" : "<string>", // I R! Name for this structure map (computer friendly) "title" : "<string>", // Name for this structure map (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the structure map "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for structure map (if applicable) "purpose" : "<markdown>", // Why this structure map is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "copyrightLabel" : "<string>", // Copyright holder and year(s) "structure" : [{ // Structure Definition used by this map "url" : "<canonical(StructureDefinition)>", // R! Canonical reference to structure definition "mode" : "<code>", // R! source | queried | target | produced "alias" : "<string>", // Name for type in this map "documentation" : "<string>" // Documentation on use of structure }], "import" : ["<canonical(StructureMap)>"], // Other maps used by this map (canonical URLs) "const" : [{ // Definition of the constant value used in the map rules "name" : "<id>", // Constant name "value" : "<string>" // FHIRPath exression - value of the constant }], "group" : [{ // R! Named sections for reader convenience "name" : "<id>", // R! Human-readable label "extends" : "<id>", // Another group that this group adds rules to "typeMode" : "<code>", // types | type-and-types "documentation" : "<string>", // Additional description/explanation for group "input" : [{ // R! Named instance provided when invoking the map "name" : "<id>", // R! Name for this instance of data "type" : "<string>", // Type for this instance of data "mode" : "<code>", // R! source | target "documentation" : "<string>" // Documentation for this instance of data }], "rule" : [{ // Transform Rule from source to target "name" : "<id>", // Name of the rule for internal references "source" : [{ // R! Source inputs to the mapping "context" : "<id>", // R! Type or variable this rule applies to "min" : <integer>, // Specified minimum cardinality "max" : "<string>", // Specified maximum cardinality (number or *) "type" : "<string>", // Rule only applies if source has this type "defaultValue" : "<string>", // Default value if no value exists "element" : "<string>", // Optional field for this source "listMode" : "<code>", // first | not_first | last | not_last | only_one "variable" : "<id>", // Named context for field, if a field is specified "condition" : "<string>", // FHIRPath expression - must be true or the rule does not apply "check" : "<string>", // FHIRPath expression - must be true or the mapping engine throws an error instead of completing "logMessage" : "<string>" // Message to put in log if source exists (FHIRPath) }], "target" : [{ // Content to create because of this mapping rule "context" : "<string>", // I Variable this rule applies to "element" : "<string>", // I Field to create in the context "variable" : "<id>", // Named context for field, if desired, and a field is specified "listMode" : ["<code>"], // first | share | last | single "listRuleId" : "<id>", // Internal rule reference for shared list items "transform" : "<code>", // create | copy + "parameter" : [{ // Parameters to the transform // value[x]: Parameter value - variable or literal. One of these 8: "valueId" : "<id>", "valueString" : "<string>", "valueBoolean" : <boolean>, "valueInteger" : <integer>, "valueDecimal" : <decimal>, "valueDate" : "<date>", "valueTime" : "<time>", "valueDateTime" : "<dateTime>" }] }], "rule" : [{ Content as for StructureMap.group.rule }], // Rules contained in this rule "dependent" : [{ // Which other rules to apply in the context of this rule "name" : "<id>", // R! Name of a rule or group to apply "parameter" : [{ Content as for StructureMap.group.rule.target.parameter }] // R! Parameter to pass to the rule or group }], "documentation" : "<string>" // Documentation for this instance of data }] }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:StructureMap; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:url [ uri ] ; # 1..1 Canonical identifier for this structure map, represented as a URI (globally unique) fhir:identifier ( [ Identifier ] ... ) ; # 0..* Additional identifier for the structure map fhir:version [ string ] ; # 0..1 Business version of the structure map # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2 fhir:versionAlgorithm [ a fhir:string ; string ] fhir:versionAlgorithm [ a fhir:Coding ; Coding ] fhir:name [ string ] ; # 1..1 I Name for this structure map (computer friendly) fhir:title [ string ] ; # 0..1 Name for this structure map (human friendly) fhir:status [ code ] ; # 1..1 draft | active | retired | unknown fhir:experimental [ boolean ] ; # 0..1 For testing purposes, not real usage fhir:date [ dateTime ] ; # 0..1 Date last changed fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual) fhir:contact ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher fhir:description [ markdown ] ; # 0..1 Natural language description of the structure map fhir:useContext ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support fhir:jurisdiction ( [ CodeableConcept ] ... ) ; # 0..* Intended jurisdiction for structure map (if applicable) fhir:purpose [ markdown ] ; # 0..1 Why this structure map is defined fhir:copyright [ markdown ] ; # 0..1 Use and/or publishing restrictions fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s) fhir:structure ( [ # 0..* Structure Definition used by this map fhir:url [ canonical(StructureDefinition) ] ; # 1..1 Canonical reference to structure definition fhir:mode [ code ] ; # 1..1 source | queried | target | produced fhir:alias [ string ] ; # 0..1 Name for type in this map fhir:documentation [ string ] ; # 0..1 Documentation on use of structure ] ... ) ; fhir:import ( [ canonical(StructureMap) ] ... ) ; # 0..* Other maps used by this map (canonical URLs) fhir:const ( [ # 0..* Definition of the constant value used in the map rules fhir:name [ id ] ; # 0..1 Constant name fhir:value [ string ] ; # 0..1 FHIRPath exression - value of the constant ] ... ) ; fhir:group ( [ # 1..* Named sections for reader convenience fhir:name [ id ] ; # 1..1 Human-readable label fhir:extends [ id ] ; # 0..1 Another group that this group adds rules to fhir:typeMode [ code ] ; # 0..1 types | type-and-types fhir:documentation [ string ] ; # 0..1 Additional description/explanation for group fhir:input ( [ # 1..* Named instance provided when invoking the map fhir:name [ id ] ; # 1..1 Name for this instance of data fhir:type [ string ] ; # 0..1 Type for this instance of data fhir:mode [ code ] ; # 1..1 source | target fhir:documentation [ string ] ; # 0..1 Documentation for this instance of data ] ... ) ; fhir:rule ( [ # 0..* Transform Rule from source to target fhir:name [ id ] ; # 0..1 Name of the rule for internal references fhir:source ( [ # 1..* Source inputs to the mapping fhir:context [ id ] ; # 1..1 Type or variable this rule applies to fhir:min [ integer ] ; # 0..1 Specified minimum cardinality fhir:max [ string ] ; # 0..1 Specified maximum cardinality (number or *) fhir:type [ string ] ; # 0..1 Rule only applies if source has this type fhir:defaultValue [ string ] ; # 0..1 Default value if no value exists fhir:element [ string ] ; # 0..1 Optional field for this source fhir:listMode [ code ] ; # 0..1 first | not_first | last | not_last | only_one fhir:variable [ id ] ; # 0..1 Named context for field, if a field is specified fhir:condition [ string ] ; # 0..1 FHIRPath expression - must be true or the rule does not apply fhir:check [ string ] ; # 0..1 FHIRPath expression - must be true or the mapping engine throws an error instead of completing fhir:logMessage [ string ] ; # 0..1 Message to put in log if source exists (FHIRPath) ] ... ) ; fhir:target ( [ # 0..* Content to create because of this mapping rule fhir:context [ string ] ; # 0..1 I Variable this rule applies to fhir:element [ string ] ; # 0..1 I Field to create in the context fhir:variable [ id ] ; # 0..1 Named context for field, if desired, and a field is specified fhir:listMode ( [ code ] ... ) ; # 0..* first | share | last | single fhir:listRuleId [ id ] ; # 0..1 Internal rule reference for shared list items fhir:transform [ code ] ; # 0..1 create | copy + fhir:parameter ( [ # 0..* Parameters to the transform # value[x] : 1..1 Parameter value - variable or literal. One of these 8 fhir:value [ a fhir:id ; id ] fhir:value [ a fhir:string ; string ] fhir:value [ a fhir:boolean ; boolean ] fhir:value [ a fhir:integer ; integer ] fhir:value [ a fhir:decimal ; decimal ] fhir:value [ a fhir:date ; date ] fhir:value [ a fhir:time ; time ] fhir:value [ a fhir:dateTime ; dateTime ] ] ... ) ; ] ... ) ; fhir:rule ( [ See StructureMap.group.rule ] ... ) ; # 0..* Rules contained in this rule fhir:dependent ( [ # 0..* Which other rules to apply in the context of this rule fhir:name [ id ] ; # 1..1 Name of a rule or group to apply fhir:parameter ( [ See StructureMap.group.rule.target.parameter ] ... ) ; # 1..* Parameter to pass to the rule or group ] ... ) ; fhir:documentation [ string ] ; # 0..1 Documentation for this instance of data ] ... ) ; ] ... ) ; ]
Changes from both R4 and R4B
StructureMap | |
StructureMap.versionAlgorithm[x] |
|
StructureMap.copyrightLabel |
|
StructureMap.const |
|
StructureMap.const.name |
|
StructureMap.const.value |
|
StructureMap.group.typeMode |
|
StructureMap.group.rule |
|
StructureMap.group.rule.name |
|
StructureMap.group.rule.source.defaultValue |
|
StructureMap.group.rule.target.context |
|
StructureMap.group.rule.target.listMode |
|
StructureMap.group.rule.target.parameter.value[x] |
|
StructureMap.group.rule.dependent.parameter |
|
StructureMap.group.rule.target.contextType |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
StructureMap | TU | DomainResource | A Map of relationships between 2 structures that can be used to transform data + Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension Interfaces Implemented: CanonicalResource | |
url | ΣC | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) + Warning: URL should not contain | or # - these characters make processing canonical references problematic |
identifier | Σ | 0..* | Identifier | Additional identifier for the structure map |
version | Σ | 0..1 | string | Business version of the structure map |
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: Version Algorithm (Extensible) | |
versionAlgorithmString | string | |||
versionAlgorithmCoding | Coding | |||
name | ΣC | 1..1 | string | Name for this structure map (computer friendly) |
title | ΣT | 0..1 | string | Name for this structure map (human friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (Required) |
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage |
date | Σ | 0..1 | dateTime | Date last changed |
publisher | ΣT | 0..1 | string | Name of the publisher/steward (organization or individual) |
contact | Σ | 0..* | ContactDetail | Contact details for the publisher |
description | T | 0..1 | markdown | Natural language description of the structure map |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | ΣXD | 0..* | CodeableConcept | Intended jurisdiction for structure map (if applicable) Binding: Jurisdiction ValueSet (Extensible) |
purpose | T | 0..1 | markdown | Why this structure map is defined |
copyright | T | 0..1 | markdown | Use and/or publishing restrictions |
copyrightLabel | T | 0..1 | string | Copyright holder and year(s) |
structure | Σ | 0..* | BackboneElement | Structure Definition used by this map |
url | Σ | 1..1 | canonical(StructureDefinition) | Canonical reference to structure definition |
mode | Σ | 1..1 | code | source | queried | target | produced Binding: Structure Map Model Mode (Required) |
alias | Σ | 0..1 | string | Name for type in this map |
documentation | 0..1 | string | Documentation on use of structure | |
import | Σ | 0..* | canonical(StructureMap) | Other maps used by this map (canonical URLs) |
const | Σ | 0..* | BackboneElement | Definition of the constant value used in the map rules |
name | Σ | 0..1 | id | Constant name |
value | Σ | 0..1 | string | FHIRPath exression - value of the constant |
group | Σ | 1..* | BackboneElement | Named sections for reader convenience |
name | Σ | 1..1 | id | Human-readable label |
extends | Σ | 0..1 | id | Another group that this group adds rules to |
typeMode | Σ | 0..1 | code | types | type-and-types Binding: Structure Map Group Type Mode (Required) |
documentation | Σ | 0..1 | string | Additional description/explanation for group |
input | Σ | 1..* | BackboneElement | Named instance provided when invoking the map |
name | Σ | 1..1 | id | Name for this instance of data |
type | Σ | 0..1 | string | Type for this instance of data |
mode | Σ | 1..1 | code | source | target Binding: Structure Map Input Mode (Required) |
documentation | 0..1 | string | Documentation for this instance of data | |
rule | Σ | 0..* | BackboneElement | Transform Rule from source to target |
name | Σ | 0..1 | id | Name of the rule for internal references |
source | Σ | 1..* | BackboneElement | Source inputs to the mapping |
context | Σ | 1..1 | id | Type or variable this rule applies to |
min | Σ | 0..1 | integer | Specified minimum cardinality |
max | Σ | 0..1 | string | Specified maximum cardinality (number or *) |
type | Σ | 0..1 | string | Rule only applies if source has this type |
defaultValue | Σ | 0..1 | string | Default value if no value exists |
element | Σ | 0..1 | string | Optional field for this source |
listMode | Σ | 0..1 | code | first | not_first | last | not_last | only_one Binding: Structure Map Source List Mode (Required) |
variable | Σ | 0..1 | id | Named context for field, if a field is specified |
condition | Σ | 0..1 | string | FHIRPath expression - must be true or the rule does not apply |
check | Σ | 0..1 | string | FHIRPath expression - must be true or the mapping engine throws an error instead of completing |
logMessage | Σ | 0..1 | string | Message to put in log if source exists (FHIRPath) |
target | ΣC | 0..* | BackboneElement | Content to create because of this mapping rule + Rule: Can only have an element if you have a context |
context | ΣC | 0..1 | string | Variable this rule applies to |
element | ΣC | 0..1 | string | Field to create in the context |
variable | Σ | 0..1 | id | Named context for field, if desired, and a field is specified |
listMode | Σ | 0..* | code | first | share | last | single Binding: Structure Map Target List Mode (Required) |
listRuleId | Σ | 0..1 | id | Internal rule reference for shared list items |
transform | Σ | 0..1 | code | create | copy + Binding: Structure Map Transform (Required) |
parameter | Σ | 0..* | BackboneElement | Parameters to the transform |
value[x] | Σ | 1..1 | Parameter value - variable or literal | |
valueId | id | |||
valueString | string | |||
valueBoolean | boolean | |||
valueInteger | integer | |||
valueDecimal | decimal | |||
valueDate | date | |||
valueTime | time | |||
valueDateTime | dateTime | |||
rule | Σ | 0..* | see rule | Rules contained in this rule |
dependent | Σ | 0..* | BackboneElement | Which other rules to apply in the context of this rule |
name | Σ | 1..1 | id | Name of a rule or group to apply |
parameter | Σ | 1..* | see parameter | Parameter to pass to the rule or group |
documentation | 0..1 | string | Documentation for this instance of data | |
Documentation for this format |
See the Extensions for this resource
XML Template
<StructureMap xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 1..1 Canonical identifier for this structure map, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the structure map --></identifier> <version value="[string]"/><!-- 0..1 Business version of the structure map --> <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 1..1 Name for this structure map (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this structure map (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the structure map --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for structure map (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this structure map is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <structure> <!-- 0..* Structure Definition used by this map --> <url><!-- 1..1 canonical(StructureDefinition) Canonical reference to structure definition --></url> <mode value="[code]"/><!-- 1..1 source | queried | target | produced --> <alias value="[string]"/><!-- 0..1 Name for type in this map --> <documentation value="[string]"/><!-- 0..1 Documentation on use of structure --> </structure> <import><!-- 0..* canonical(StructureMap) Other maps used by this map (canonical URLs) --></import> <const> <!-- 0..* Definition of the constant value used in the map rules --> <name value="[id]"/><!-- 0..1 Constant name --> <value value="[string]"/><!-- 0..1 FHIRPath exression - value of the constant --> </const> <group> <!-- 1..* Named sections for reader convenience --> <name value="[id]"/><!-- 1..1 Human-readable label --> <extends value="[id]"/><!-- 0..1 Another group that this group adds rules to --> <typeMode value="[code]"/><!-- 0..1 types | type-and-types --> <documentation value="[string]"/><!-- 0..1 Additional description/explanation for group --> <input> <!-- 1..* Named instance provided when invoking the map --> <name value="[id]"/><!-- 1..1 Name for this instance of data --> <type value="[string]"/><!-- 0..1 Type for this instance of data --> <mode value="[code]"/><!-- 1..1 source | target --> <documentation value="[string]"/><!-- 0..1 Documentation for this instance of data --> </input> <rule> <!-- 0..* Transform Rule from source to target --> <name value="[id]"/><!-- 0..1 Name of the rule for internal references --> <source> <!-- 1..* Source inputs to the mapping --> <context value="[id]"/><!-- 1..1 Type or variable this rule applies to --> <min value="[integer]"/><!-- 0..1 Specified minimum cardinality --> <max value="[string]"/><!-- 0..1 Specified maximum cardinality (number or *) --> <type value="[string]"/><!-- 0..1 Rule only applies if source has this type --> <defaultValue value="[string]"/><!-- 0..1 Default value if no value exists --> <element value="[string]"/><!-- 0..1 Optional field for this source --> <listMode value="[code]"/><!-- 0..1 first | not_first | last | not_last | only_one --> <variable value="[id]"/><!-- 0..1 Named context for field, if a field is specified --> <condition value="[string]"/><!-- 0..1 FHIRPath expression - must be true or the rule does not apply --> <check value="[string]"/><!-- 0..1 FHIRPath expression - must be true or the mapping engine throws an error instead of completing --> <logMessage value="[string]"/><!-- 0..1 Message to put in log if source exists (FHIRPath) --> </source> <target> <!-- 0..* Content to create because of this mapping rule --> <context value="[string]"/><!-- I 0..1 Variable this rule applies to --> <element value="[string]"/><!-- I 0..1 Field to create in the context --> <variable value="[id]"/><!-- 0..1 Named context for field, if desired, and a field is specified --> <listMode value="[code]"/><!-- 0..* first | share | last | single --> <listRuleId value="[id]"/><!-- 0..1 Internal rule reference for shared list items --> <transform value="[code]"/><!-- 0..1 create | copy + --> <parameter> <!-- 0..* Parameters to the transform --> <value[x]><!-- 1..1 id|string|boolean|integer|decimal|date|time|dateTime Parameter value - variable or literal --></value[x]> </parameter> </target> <rule><!-- 0..* Content as for StructureMap.group.rule Rules contained in this rule --></rule> <dependent> <!-- 0..* Which other rules to apply in the context of this rule --> <name value="[id]"/><!-- 1..1 Name of a rule or group to apply --> <parameter><!-- 1..* Content as for StructureMap.group.rule.target.parameter Parameter to pass to the rule or group --></parameter> </dependent> <documentation value="[string]"/><!-- 0..1 Documentation for this instance of data --> </rule> </group> </StructureMap>
JSON Template
{ "resourceType" : "StructureMap", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "url" : "<uri>", // R! Canonical identifier for this structure map, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Additional identifier for the structure map "version" : "<string>", // Business version of the structure map // versionAlgorithm[x]: How to compare versions. One of these 2: "versionAlgorithmString" : "<string>", "versionAlgorithmCoding" : { Coding }, "name" : "<string>", // I R! Name for this structure map (computer friendly) "title" : "<string>", // Name for this structure map (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date last changed "publisher" : "<string>", // Name of the publisher/steward (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the structure map "useContext" : [{ UsageContext }], // The context that the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for structure map (if applicable) "purpose" : "<markdown>", // Why this structure map is defined "copyright" : "<markdown>", // Use and/or publishing restrictions "copyrightLabel" : "<string>", // Copyright holder and year(s) "structure" : [{ // Structure Definition used by this map "url" : "<canonical(StructureDefinition)>", // R! Canonical reference to structure definition "mode" : "<code>", // R! source | queried | target | produced "alias" : "<string>", // Name for type in this map "documentation" : "<string>" // Documentation on use of structure }], "import" : ["<canonical(StructureMap)>"], // Other maps used by this map (canonical URLs) "const" : [{ // Definition of the constant value used in the map rules "name" : "<id>", // Constant name "value" : "<string>" // FHIRPath exression - value of the constant }], "group" : [{ // R! Named sections for reader convenience "name" : "<id>", // R! Human-readable label "extends" : "<id>", // Another group that this group adds rules to "typeMode" : "<code>", // types | type-and-types "documentation" : "<string>", // Additional description/explanation for group "input" : [{ // R! Named instance provided when invoking the map "name" : "<id>", // R! Name for this instance of data "type" : "<string>", // Type for this instance of data "mode" : "<code>", // R! source | target "documentation" : "<string>" // Documentation for this instance of data }], "rule" : [{ // Transform Rule from source to target "name" : "<id>", // Name of the rule for internal references "source" : [{ // R! Source inputs to the mapping "context" : "<id>", // R! Type or variable this rule applies to "min" : <integer>, // Specified minimum cardinality "max" : "<string>", // Specified maximum cardinality (number or *) "type" : "<string>", // Rule only applies if source has this type "defaultValue" : "<string>", // Default value if no value exists "element" : "<string>", // Optional field for this source "listMode" : "<code>", // first | not_first | last | not_last | only_one "variable" : "<id>", // Named context for field, if a field is specified "condition" : "<string>", // FHIRPath expression - must be true or the rule does not apply "check" : "<string>", // FHIRPath expression - must be true or the mapping engine throws an error instead of completing "logMessage" : "<string>" // Message to put in log if source exists (FHIRPath) }], "target" : [{ // Content to create because of this mapping rule "context" : "<string>", // I Variable this rule applies to "element" : "<string>", // I Field to create in the context "variable" : "<id>", // Named context for field, if desired, and a field is specified "listMode" : ["<code>"], // first | share | last | single "listRuleId" : "<id>", // Internal rule reference for shared list items "transform" : "<code>", // create | copy + "parameter" : [{ // Parameters to the transform // value[x]: Parameter value - variable or literal. One of these 8: "valueId" : "<id>", "valueString" : "<string>", "valueBoolean" : <boolean>, "valueInteger" : <integer>, "valueDecimal" : <decimal>, "valueDate" : "<date>", "valueTime" : "<time>", "valueDateTime" : "<dateTime>" }] }], "rule" : [{ Content as for StructureMap.group.rule }], // Rules contained in this rule "dependent" : [{ // Which other rules to apply in the context of this rule "name" : "<id>", // R! Name of a rule or group to apply "parameter" : [{ Content as for StructureMap.group.rule.target.parameter }] // R! Parameter to pass to the rule or group }], "documentation" : "<string>" // Documentation for this instance of data }] }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:StructureMap; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:url [ uri ] ; # 1..1 Canonical identifier for this structure map, represented as a URI (globally unique) fhir:identifier ( [ Identifier ] ... ) ; # 0..* Additional identifier for the structure map fhir:version [ string ] ; # 0..1 Business version of the structure map # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2 fhir:versionAlgorithm [ a fhir:string ; string ] fhir:versionAlgorithm [ a fhir:Coding ; Coding ] fhir:name [ string ] ; # 1..1 I Name for this structure map (computer friendly) fhir:title [ string ] ; # 0..1 Name for this structure map (human friendly) fhir:status [ code ] ; # 1..1 draft | active | retired | unknown fhir:experimental [ boolean ] ; # 0..1 For testing purposes, not real usage fhir:date [ dateTime ] ; # 0..1 Date last changed fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual) fhir:contact ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher fhir:description [ markdown ] ; # 0..1 Natural language description of the structure map fhir:useContext ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support fhir:jurisdiction ( [ CodeableConcept ] ... ) ; # 0..* Intended jurisdiction for structure map (if applicable) fhir:purpose [ markdown ] ; # 0..1 Why this structure map is defined fhir:copyright [ markdown ] ; # 0..1 Use and/or publishing restrictions fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s) fhir:structure ( [ # 0..* Structure Definition used by this map fhir:url [ canonical(StructureDefinition) ] ; # 1..1 Canonical reference to structure definition fhir:mode [ code ] ; # 1..1 source | queried | target | produced fhir:alias [ string ] ; # 0..1 Name for type in this map fhir:documentation [ string ] ; # 0..1 Documentation on use of structure ] ... ) ; fhir:import ( [ canonical(StructureMap) ] ... ) ; # 0..* Other maps used by this map (canonical URLs) fhir:const ( [ # 0..* Definition of the constant value used in the map rules fhir:name [ id ] ; # 0..1 Constant name fhir:value [ string ] ; # 0..1 FHIRPath exression - value of the constant ] ... ) ; fhir:group ( [ # 1..* Named sections for reader convenience fhir:name [ id ] ; # 1..1 Human-readable label fhir:extends [ id ] ; # 0..1 Another group that this group adds rules to fhir:typeMode [ code ] ; # 0..1 types | type-and-types fhir:documentation [ string ] ; # 0..1 Additional description/explanation for group fhir:input ( [ # 1..* Named instance provided when invoking the map fhir:name [ id ] ; # 1..1 Name for this instance of data fhir:type [ string ] ; # 0..1 Type for this instance of data fhir:mode [ code ] ; # 1..1 source | target fhir:documentation [ string ] ; # 0..1 Documentation for this instance of data ] ... ) ; fhir:rule ( [ # 0..* Transform Rule from source to target fhir:name [ id ] ; # 0..1 Name of the rule for internal references fhir:source ( [ # 1..* Source inputs to the mapping fhir:context [ id ] ; # 1..1 Type or variable this rule applies to fhir:min [ integer ] ; # 0..1 Specified minimum cardinality fhir:max [ string ] ; # 0..1 Specified maximum cardinality (number or *) fhir:type [ string ] ; # 0..1 Rule only applies if source has this type fhir:defaultValue [ string ] ; # 0..1 Default value if no value exists fhir:element [ string ] ; # 0..1 Optional field for this source fhir:listMode [ code ] ; # 0..1 first | not_first | last | not_last | only_one fhir:variable [ id ] ; # 0..1 Named context for field, if a field is specified fhir:condition [ string ] ; # 0..1 FHIRPath expression - must be true or the rule does not apply fhir:check [ string ] ; # 0..1 FHIRPath expression - must be true or the mapping engine throws an error instead of completing fhir:logMessage [ string ] ; # 0..1 Message to put in log if source exists (FHIRPath) ] ... ) ; fhir:target ( [ # 0..* Content to create because of this mapping rule fhir:context [ string ] ; # 0..1 I Variable this rule applies to fhir:element [ string ] ; # 0..1 I Field to create in the context fhir:variable [ id ] ; # 0..1 Named context for field, if desired, and a field is specified fhir:listMode ( [ code ] ... ) ; # 0..* first | share | last | single fhir:listRuleId [ id ] ; # 0..1 Internal rule reference for shared list items fhir:transform [ code ] ; # 0..1 create | copy + fhir:parameter ( [ # 0..* Parameters to the transform # value[x] : 1..1 Parameter value - variable or literal. One of these 8 fhir:value [ a fhir:id ; id ] fhir:value [ a fhir:string ; string ] fhir:value [ a fhir:boolean ; boolean ] fhir:value [ a fhir:integer ; integer ] fhir:value [ a fhir:decimal ; decimal ] fhir:value [ a fhir:date ; date ] fhir:value [ a fhir:time ; time ] fhir:value [ a fhir:dateTime ; dateTime ] ] ... ) ; ] ... ) ; fhir:rule ( [ See StructureMap.group.rule ] ... ) ; # 0..* Rules contained in this rule fhir:dependent ( [ # 0..* Which other rules to apply in the context of this rule fhir:name [ id ] ; # 1..1 Name of a rule or group to apply fhir:parameter ( [ See StructureMap.group.rule.target.parameter ] ... ) ; # 1..* Parameter to pass to the rule or group ] ... ) ; fhir:documentation [ string ] ; # 0..1 Documentation for this instance of data ] ... ) ; ] ... ) ; ]
Changes from both R4 and R4B
StructureMap | |
StructureMap.versionAlgorithm[x] |
|
StructureMap.copyrightLabel |
|
StructureMap.const |
|
StructureMap.const.name |
|
StructureMap.const.value |
|
StructureMap.group.typeMode |
|
StructureMap.group.rule |
|
StructureMap.group.rule.name |
|
StructureMap.group.rule.source.defaultValue |
|
StructureMap.group.rule.target.context |
|
StructureMap.group.rule.target.listMode |
|
StructureMap.group.rule.target.parameter.value[x] |
|
StructureMap.group.rule.dependent.parameter |
|
StructureMap.group.rule.target.contextType |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) , the spreadsheet version & the dependency analysis
Path | ValueSet | Type | Documentation |
---|---|---|---|
StructureMap.versionAlgorithm[x] | VersionAlgorithm | Extensible | Indicates the mechanism used to compare versions to determine which is more current. |
StructureMap.status | PublicationStatus | Required | The lifecycle status of an artifact. |
StructureMap.jurisdiction | JurisdictionValueSet | Extensible | This value set defines a base set of codes for country, country subdivision and region for indicating where a resource is intended to be used. Note: The codes for countries and country subdivisions are taken from ISO 3166 while the codes for "supra-national" regions are from UN Standard country or area codes for statistical use (M49) . |
StructureMap.structure.mode | StructureMapModelMode | Required | How the referenced structure is used in this mapping. |
StructureMap.group.typeMode | StructureMapGroupTypeMode | Required | If this is the default rule set to apply for the source type, or this combination of types. |
StructureMap.group.input.mode | StructureMapInputMode | Required | Mode for this instance of data. |
StructureMap.group.rule.source.listMode | StructureMapSourceListMode | Required | If field is a list, how to manage the source. |
StructureMap.group.rule.target.listMode | StructureMapTargetListMode | Required | If field is a list, how to manage the production. |
StructureMap.group.rule.target.transform | StructureMapTransform | Required | How data is copied/created. |
UniqueKey | Level | Location | Description | Expression |
cnl-0 | Warning | (base) | Name should be usable as an identifier for the module by machine processing applications such as code generation | name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$') |
cnl-1 | Warning | StructureMap.url | URL should not contain | or # - these characters make processing canonical references problematic | exists() implies matches('^[^|# ]+$') |
smp-1 | Rule | StructureMap.group.rule.target | Can only have an element if you have a context | element.exists() implies context.exists() |
Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
context | token | A use context assigned to the structure map | (StructureMap.useContext.value.ofType(CodeableConcept)) | 30 Resources |
context-quantity | quantity | A quantity- or range-valued use context assigned to the structure map | (StructureMap.useContext.value.ofType(Quantity)) | (StructureMap.useContext.value.ofType(Range)) | 30 Resources |
context-type | token | A type of use context assigned to the structure map | StructureMap.useContext.code | 30 Resources |
context-type-quantity | composite | A use context type and quantity- or range-based value assigned to the structure map | On StructureMap.useContext: context-type: code context-quantity: value.ofType(Quantity) | value.ofType(Range) | 30 Resources |
context-type-value | composite | A use context type and value assigned to the structure map | On StructureMap.useContext: context-type: code context: value.ofType(CodeableConcept) | 30 Resources |
date | date | The structure map publication date | StructureMap.date | 30 Resources |
description | string | The description of the structure map | StructureMap.description | 28 Resources |
identifier | token | External identifier for the structure map | StructureMap.identifier | 34 Resources |
jurisdiction | token | Intended jurisdiction for the structure map | StructureMap.jurisdiction | 26 Resources |
name | string | Computationally friendly name of the structure map | StructureMap.name | 26 Resources |
publisher | string | Name of the publisher of the structure map | StructureMap.publisher | 30 Resources |
status | token | The current status of the structure map | StructureMap.status | 35 Resources |
title | string | The human-friendly name of the structure map | StructureMap.title | 27 Resources |
url | uri | The uri that identifies the structure map | StructureMap.url | 34 Resources |
version | token | The business version of the structure map | StructureMap.version | 30 Resources |