0.2.3 - ci-build
servicewellfhirflc, published by Service Well AB. This guide is not an authorized publication; it is the continuous build for version 0.2.3 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/servicewell/servicewell.fhir.flc/ and changes regularly. See the Directory of published versions
| Official URL: http://puri.fhir.link/flc/StructureDefinition/flc-structuremap | Version: 0.2.3 | |||
| Draft as of 2025-10-29 | Computable Name: FLCStructureMap | |||
Profile for StructureMap used together with the FHIR Liquid Converter. Includes metadata specifying which Liquid template and FHIR package are used, along with external terminology dependencies required for the conversion to function correctly.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data Constraints: smp-0 |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) |
![]() ![]() |
ΣC | 1..1 | string | Name for this structure map (computer friendly) |
![]() ![]() |
?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
![]() ![]() |
Σ | 1..* | BackboneElement | Named sections for reader convenience |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
Σ | 1..1 | id | Human-readable label |
![]() ![]() ![]() |
Σ | 1..1 | code | none | types | type-and-types Binding: StructureMapGroupTypeMode (required): If this is the default rule set to apply for the source type, or this combination of types. |
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Named instance provided when invoking the map |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name for this instance of data |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | source | target Binding: StructureMapInputMode (required): Mode for this instance of data. |
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Transform Rule from source to target |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of the rule for internal references |
![]() ![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Source inputs to the mapping |
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Type or variable this rule applies to |
![]() ![]() ![]() ![]() |
ΣC | 0..* | BackboneElement | Content to create because of this mapping rule Constraints: smp-1, smp-2 |
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map |
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| StructureMap.status | Base | required | PublicationStatus | 📍4.0.1 | FHIR Std. |
| StructureMap.group.typeMode | Base | required | StructureMapGroupTypeMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.input.mode | Base | required | StructureMapInputMode | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | StructureMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | StructureMap | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | StructureMap | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| smp-0 | warning | StructureMap | Name should be usable as an identifier for the module by machine processing applications such as code generation |
name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
|
| smp-1 | error | StructureMap.group.rule.target | Can only have an element if you have a context |
element.exists() implies context.exists()
|
| smp-2 | error | StructureMap.group.rule.target | Must have a contextType if you have a context |
context.exists() implies contextType.exists()
|
This structure is derived from StructureMap
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data | |
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency |
![]() ![]() |
||||
![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data Constraints: smp-0 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency | ||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) | ||||
![]() ![]() |
Σ | 0..* | Identifier | Additional identifier for the structure map | ||||
![]() ![]() |
Σ | 0..1 | string | Business version of the structure map | ||||
![]() ![]() |
ΣC | 1..1 | string | Name for this structure map (computer friendly) | ||||
![]() ![]() |
Σ | 0..1 | string | Name for this structure map (human friendly) | ||||
![]() ![]() |
?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
![]() ![]() |
Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
![]() ![]() |
Σ | 0..1 | dateTime | Date last changed | ||||
![]() ![]() |
Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
![]() ![]() |
Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
![]() ![]() |
0..1 | markdown | Natural language description of the structure map | |||||
![]() ![]() |
Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Intended jurisdiction for structure map (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
![]() ![]() |
0..1 | markdown | Why this structure map is defined | |||||
![]() ![]() |
0..1 | markdown | Use and/or publishing restrictions | |||||
![]() ![]() |
Σ | 0..* | BackboneElement | Structure Definition used by this map | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | canonical(StructureDefinition) | Canonical reference to structure definition | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | source | queried | target | produced Binding: StructureMapModelMode (required): How the referenced structure is used in this mapping. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Name for type in this map | ||||
![]() ![]() ![]() |
0..1 | string | Documentation on use of structure | |||||
![]() ![]() |
Σ | 0..* | canonical(StructureMap) | Other maps used by this map (canonical URLs) | ||||
![]() ![]() |
Σ | 1..* | BackboneElement | Named sections for reader convenience | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | id | Human-readable label | ||||
![]() ![]() ![]() |
Σ | 0..1 | id | Another group that this group adds rules to | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | none | types | type-and-types Binding: StructureMapGroupTypeMode (required): If this is the default rule set to apply for the source type, or this combination of types. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Additional description/explanation for group | ||||
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Named instance provided when invoking the map | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name for this instance of data | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Type for this instance of data | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | source | target Binding: StructureMapInputMode (required): Mode for this instance of data. | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Documentation for this instance of data | |||||
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Transform Rule from source to target | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of the rule for internal references | ||||
![]() ![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Source inputs to the mapping | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Type or variable this rule applies to | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | integer | Specified minimum cardinality | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Specified maximum cardinality (number or *) | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Rule only applies if source has this type | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Default value if no value exists | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
base64Binary | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
canonical(Any) | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
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(Any) | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Signature | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Timing | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
ContactDetail | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Contributor | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
DataRequirement | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Expression | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
ParameterDefinition | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
RelatedArtifact | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
TriggerDefinition | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
UsageContext | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Dosage | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Meta | |||||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Optional field for this source | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | first | not_first | last | not_last | only_one Binding: StructureMapSourceListMode (required): If field is a list, how to manage the source. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Named context for field, if a field is specified | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | FHIRPath expression - must be true or the rule does not apply | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | FHIRPath expression - must be true or the mapping engine throws an error instead of completing | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Message to put in log if source exists (FHIRPath) | ||||
![]() ![]() ![]() ![]() |
ΣC | 0..* | BackboneElement | Content to create because of this mapping rule Constraints: smp-1, smp-2 | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map | ||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Type or variable this rule applies to | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | type | variable Binding: StructureMapContextType (required): How to interpret the context. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Field to create in the context | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Named context for field, if desired, and a field is specified | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | code | first | share | last | collate Binding: StructureMapTargetListMode (required): If field is a list, how to manage the production. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Internal rule reference for shared list items | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | create | copy + Binding: StructureMapTransform (required): How data is copied/created. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Parameters to the transform | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | Parameter value - variable or literal | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
id | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
decimal | |||||||
![]() ![]() ![]() ![]() |
Σ | 0..* | See rule (StructureMap) | Rules contained in this rule | ||||
![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Which other rules to apply in the context of this rule | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of a rule or group to apply | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..* | string | Variable to pass to the rule or group | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Documentation for this instance of data | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| StructureMap.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| StructureMap.status | Base | required | PublicationStatus | 📍4.0.1 | FHIR Std. |
| StructureMap.jurisdiction | Base | extensible | Jurisdiction | 📍4.0.1 | FHIR Std. |
| StructureMap.structure.mode | Base | required | StructureMapModelMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.typeMode | Base | required | StructureMapGroupTypeMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.input.mode | Base | required | StructureMapInputMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.source.listMode | Base | required | StructureMapSourceListMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.contextType | Base | required | StructureMapContextType | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.listMode | Base | required | StructureMapTargetListMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.transform | Base | required | StructureMapTransform | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | StructureMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | StructureMap | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | StructureMap | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| smp-0 | warning | StructureMap | Name should be usable as an identifier for the module by machine processing applications such as code generation |
name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
|
| smp-1 | error | StructureMap.group.rule.target | Can only have an element if you have a context |
element.exists() implies context.exists()
|
| smp-2 | error | StructureMap.group.rule.target | Must have a contextType if you have a context |
context.exists() implies contextType.exists()
|
This structure is derived from StructureMap
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data Constraints: smp-0 |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
Σ | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) |
![]() ![]() |
ΣC | 1..1 | string | Name for this structure map (computer friendly) |
![]() ![]() |
?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
![]() ![]() |
Σ | 1..* | BackboneElement | Named sections for reader convenience |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
Σ | 1..1 | id | Human-readable label |
![]() ![]() ![]() |
Σ | 1..1 | code | none | types | type-and-types Binding: StructureMapGroupTypeMode (required): If this is the default rule set to apply for the source type, or this combination of types. |
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Named instance provided when invoking the map |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name for this instance of data |
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | source | target Binding: StructureMapInputMode (required): Mode for this instance of data. |
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Transform Rule from source to target |
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of the rule for internal references |
![]() ![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Source inputs to the mapping |
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Type or variable this rule applies to |
![]() ![]() ![]() ![]() |
ΣC | 0..* | BackboneElement | Content to create because of this mapping rule Constraints: smp-1, smp-2 |
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map |
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| StructureMap.status | Base | required | PublicationStatus | 📍4.0.1 | FHIR Std. |
| StructureMap.group.typeMode | Base | required | StructureMapGroupTypeMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.input.mode | Base | required | StructureMapInputMode | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | StructureMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | StructureMap | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | StructureMap | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| smp-0 | warning | StructureMap | Name should be usable as an identifier for the module by machine processing applications such as code generation |
name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
|
| smp-1 | error | StructureMap.group.rule.target | Can only have an element if you have a context |
element.exists() implies context.exists()
|
| smp-2 | error | StructureMap.group.rule.target | Must have a contextType if you have a context |
context.exists() implies contextType.exists()
|
Differential View
This structure is derived from StructureMap
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data | |
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency |
![]() ![]() |
||||
![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() |
||||
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map |
Documentation for this format | ||||
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | StructureMap | A Map of relationships between 2 structures that can be used to transform data Constraints: smp-0 | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
S | 0..* | (Complex) | External Terminology Dependency URL: http://puri.fhir.link/flc/StructureDefinition/external-terminology-dependency | ||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
Σ | 1..1 | uri | Canonical identifier for this structure map, represented as a URI (globally unique) | ||||
![]() ![]() |
Σ | 0..* | Identifier | Additional identifier for the structure map | ||||
![]() ![]() |
Σ | 0..1 | string | Business version of the structure map | ||||
![]() ![]() |
ΣC | 1..1 | string | Name for this structure map (computer friendly) | ||||
![]() ![]() |
Σ | 0..1 | string | Name for this structure map (human friendly) | ||||
![]() ![]() |
?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
![]() ![]() |
Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
![]() ![]() |
Σ | 0..1 | dateTime | Date last changed | ||||
![]() ![]() |
Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
![]() ![]() |
Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
![]() ![]() |
0..1 | markdown | Natural language description of the structure map | |||||
![]() ![]() |
Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
![]() ![]() |
Σ | 0..* | CodeableConcept | Intended jurisdiction for structure map (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
![]() ![]() |
0..1 | markdown | Why this structure map is defined | |||||
![]() ![]() |
0..1 | markdown | Use and/or publishing restrictions | |||||
![]() ![]() |
Σ | 0..* | BackboneElement | Structure Definition used by this map | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | canonical(StructureDefinition) | Canonical reference to structure definition | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | source | queried | target | produced Binding: StructureMapModelMode (required): How the referenced structure is used in this mapping. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Name for type in this map | ||||
![]() ![]() ![]() |
0..1 | string | Documentation on use of structure | |||||
![]() ![]() |
Σ | 0..* | canonical(StructureMap) | Other maps used by this map (canonical URLs) | ||||
![]() ![]() |
Σ | 1..* | BackboneElement | Named sections for reader convenience | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | id | Human-readable label | ||||
![]() ![]() ![]() |
Σ | 0..1 | id | Another group that this group adds rules to | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | none | types | type-and-types Binding: StructureMapGroupTypeMode (required): If this is the default rule set to apply for the source type, or this combination of types. | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Additional description/explanation for group | ||||
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Named instance provided when invoking the map | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name for this instance of data | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Type for this instance of data | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | code | source | target Binding: StructureMapInputMode (required): Mode for this instance of data. | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Documentation for this instance of data | |||||
![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Transform Rule from source to target | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of the rule for internal references | ||||
![]() ![]() ![]() ![]() |
Σ | 1..* | BackboneElement | Source inputs to the mapping | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Type or variable this rule applies to | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | integer | Specified minimum cardinality | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Specified maximum cardinality (number or *) | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Rule only applies if source has this type | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Default value if no value exists | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
base64Binary | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
canonical(Any) | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
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(Any) | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Signature | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Timing | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
ContactDetail | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Contributor | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
DataRequirement | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Expression | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
ParameterDefinition | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
RelatedArtifact | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
TriggerDefinition | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
UsageContext | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Dosage | |||||||
![]() ![]() ![]() ![]() ![]() ![]() |
Meta | |||||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Optional field for this source | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | first | not_first | last | not_last | only_one Binding: StructureMapSourceListMode (required): If field is a list, how to manage the source. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Named context for field, if a field is specified | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | FHIRPath expression - must be true or the rule does not apply | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | FHIRPath expression - must be true or the mapping engine throws an error instead of completing | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Message to put in log if source exists (FHIRPath) | ||||
![]() ![]() ![]() ![]() |
ΣC | 0..* | BackboneElement | Content to create because of this mapping rule Constraints: smp-1, smp-2 | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
S | 1..1 | (Complex) | FhirLiquidMap URL: http://puri.fhir.link/flc/StructureDefinition/fhir-liquid-map | ||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Type or variable this rule applies to | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | type | variable Binding: StructureMapContextType (required): How to interpret the context. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Field to create in the context | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Named context for field, if desired, and a field is specified | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | code | first | share | last | collate Binding: StructureMapTargetListMode (required): If field is a list, how to manage the production. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | id | Internal rule reference for shared list items | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | code | create | copy + Binding: StructureMapTransform (required): How data is copied/created. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Parameters to the transform | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | Parameter value - variable or literal | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
id | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
decimal | |||||||
![]() ![]() ![]() ![]() |
Σ | 0..* | See rule (StructureMap) | Rules contained in this rule | ||||
![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Which other rules to apply in the context of this rule | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | id | Name of a rule or group to apply | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..* | string | Variable to pass to the rule or group | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Documentation for this instance of data | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| StructureMap.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| StructureMap.status | Base | required | PublicationStatus | 📍4.0.1 | FHIR Std. |
| StructureMap.jurisdiction | Base | extensible | Jurisdiction | 📍4.0.1 | FHIR Std. |
| StructureMap.structure.mode | Base | required | StructureMapModelMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.typeMode | Base | required | StructureMapGroupTypeMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.input.mode | Base | required | StructureMapInputMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.source.listMode | Base | required | StructureMapSourceListMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.contextType | Base | required | StructureMapContextType | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.listMode | Base | required | StructureMapTargetListMode | 📍4.0.1 | FHIR Std. |
| StructureMap.group.rule.target.transform | Base | required | StructureMapTransform | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | StructureMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | StructureMap | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | StructureMap | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | StructureMap | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| smp-0 | warning | StructureMap | Name should be usable as an identifier for the module by machine processing applications such as code generation |
name.matches('[A-Z]([A-Za-z0-9_]){0,254}')
|
| smp-1 | error | StructureMap.group.rule.target | Can only have an element if you have a context |
element.exists() implies context.exists()
|
| smp-2 | error | StructureMap.group.rule.target | Must have a contextType if you have a context |
context.exists() implies contextType.exists()
|
This structure is derived from StructureMap
Other representations of profile: CSV, Excel, Schematron