NCPI FHIR Implementation Guide
0.2.0 - ci-build
NCPI FHIR Implementation Guide - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Official URL: https://nih-ncpi.github.io/ncpi-fhir-ig/StructureDefinition/study-data-dictionary-harmony | Version: 0.2.0 | |||
Draft as of 2024-03-04 | Computable Name: StudyDataDictionaryHarmony |
Based on the FHIR resource type, ConceptMap, the StudyDataDictionaryHarmony resource provides insight into the transformations made during the ETL from source data into FHIR allowing clients to use the $translate function to discover all of the public codes that were mapped from one of the study’s actual vocabulary.
The mechanics of the ConceptMap, upon which the StudyDataDictionaryHarmony is based is simple. A single vocabulary (ValueSet) is required for each the source and the target and for each code in the source an element is created which identifies the target codes. Clients can query these ConceptMap resources via the $translate operation.
There will be a single StudyDataDictionaryHarmony resource for a study where all codes that are mapped to one or more public ontologies are captured along with their target mappings. This represents the documentation describing the transformations performed on the FHIR resources in use.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from ConceptMap
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ConceptMap | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ConceptMap | C | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts cmd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
ConceptMap.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.3.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cmd-0 | warning | ConceptMap | 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_]){0,254}') | |
dom-2 | error | ConceptMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | ConceptMap | 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | ConceptMap | 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 | ConceptMap | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | ConceptMap | 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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
ConceptMap | C | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts cmd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources dom-r4b: Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
url | Σ | 0..1 | uri | Canonical identifier for this concept map, represented as a URI (globally unique) | ||||
identifier | Σ | 0..1 | Identifier | Additional identifier for the concept map | ||||
version | Σ | 0..1 | string | Business version of the concept map | ||||
name | Σ | 0..1 | string | Name for this concept map (computer friendly) | ||||
title | Σ | 0..1 | string | Name for this concept map (human friendly) | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 0..1 | markdown | Natural language description of the concept map | |||||
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for concept map (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this concept map is defined | |||||
copyright | 0..1 | markdown | Use and/or publishing restrictions | |||||
source[x] | Σ | 0..1 | The source value set that contains the concepts that are being mapped | |||||
sourceUri | uri | |||||||
sourceCanonical | canonical(ValueSet) | |||||||
target[x] | Σ | 0..1 | The target value set which provides context for the mappings | |||||
targetUri | uri | |||||||
targetCanonical | canonical(ValueSet) | |||||||
group | 0..* | BackboneElement | Same source and target systems | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 0..1 | uri | Source system where concepts to be mapped are defined | |||||
sourceVersion | 0..1 | string | Specific version of the code system | |||||
target | 0..1 | uri | Target system that the concepts are to be mapped to | |||||
targetVersion | 0..1 | string | Specific version of the code system | |||||
element | 1..* | BackboneElement | Mappings for a concept from the source set | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | 0..1 | code | Identifies element being mapped | |||||
display | 0..1 | string | Display for the code | |||||
target | C | 0..* | BackboneElement | Concept in target system for element cmd-1: If the map is narrower or inexact, there SHALL be some comments | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | 0..1 | code | Code that identifies the target element | |||||
display | 0..1 | string | Display for the code | |||||
equivalence | ?! | 1..1 | code | relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint Binding: ConceptMapEquivalence (required): The degree of equivalence between concepts. | ||||
comment | C | 0..1 | string | Description of status/issues in mapping | ||||
dependsOn | 0..* | BackboneElement | Other elements required for this mapping (from context) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
property | 1..1 | uri | Reference to property mapping depends on | |||||
system | 0..1 | canonical(CodeSystem) | Code System (if necessary) | |||||
value | 1..1 | string | Value of the referenced element | |||||
display | 0..1 | string | Display for the code (if value is a code) | |||||
product | 0..* | See dependsOn (ConceptMap) | Other concepts that this mapping also produces | |||||
unmapped | C | 0..1 | BackboneElement | What to do when there is no mapping for the source concept cmd-2: If the mode is 'fixed', a code must be provided cmd-3: If the mode is 'other-map', a url must be provided | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
mode | 1..1 | code | provided | fixed | other-map Binding: ConceptMapGroupUnmappedMode (required): Defines which action to take if there is no match in the group. | |||||
code | 0..1 | code | Fixed code when mode = fixed | |||||
display | 0..1 | string | Display for the code | |||||
url | 0..1 | canonical(ConceptMap) | canonical reference to an additional ConceptMap to use for mapping if the source concept is unmapped | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
ConceptMap.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
ConceptMap.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.3.0 from the FHIR Standard | ||||
ConceptMap.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
ConceptMap.group.element.target.equivalence | required | ConceptMapEquivalencehttp://hl7.org/fhir/ValueSet/concept-map-equivalence|4.3.0 from the FHIR Standard | ||||
ConceptMap.group.unmapped.mode | required | ConceptMapGroupUnmappedModehttp://hl7.org/fhir/ValueSet/conceptmap-unmapped-mode|4.3.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cmd-0 | warning | ConceptMap | 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_]){0,254}') | |
cmd-1 | error | ConceptMap.group.element.target | If the map is narrower or inexact, there SHALL be some comments : comment.exists() or equivalence.empty() or ((equivalence != 'narrower') and (equivalence != 'inexact')) | |
cmd-2 | error | ConceptMap.group.unmapped | If the mode is 'fixed', a code must be provided : (mode = 'fixed') implies code.exists() | |
cmd-3 | error | ConceptMap.group.unmapped | If the mode is 'other-map', a url must be provided : (mode = 'other-map') implies url.exists() | |
dom-2 | error | ConceptMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | ConceptMap | 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | ConceptMap | 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 | ConceptMap | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | ConceptMap | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | ConceptMap.contained | Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems : ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic) | |
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() |
This structure is derived from ConceptMap
Differential View
This structure is derived from ConceptMap
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ConceptMap | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts | |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ConceptMap | C | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts cmd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
Documentation for this format |
Path | Conformance | ValueSet | URI |
ConceptMap.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.3.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cmd-0 | warning | ConceptMap | 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_]){0,254}') | |
dom-2 | error | ConceptMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | ConceptMap | 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | ConceptMap | 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 | ConceptMap | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | ConceptMap | 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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
ConceptMap | C | 0..* | ConceptMap | A map from one set of concepts to one or more other concepts cmd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources dom-r4b: Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
url | Σ | 0..1 | uri | Canonical identifier for this concept map, represented as a URI (globally unique) | ||||
identifier | Σ | 0..1 | Identifier | Additional identifier for the concept map | ||||
version | Σ | 0..1 | string | Business version of the concept map | ||||
name | Σ | 0..1 | string | Name for this concept map (computer friendly) | ||||
title | Σ | 0..1 | string | Name for this concept map (human friendly) | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 0..1 | markdown | Natural language description of the concept map | |||||
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for concept map (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this concept map is defined | |||||
copyright | 0..1 | markdown | Use and/or publishing restrictions | |||||
source[x] | Σ | 0..1 | The source value set that contains the concepts that are being mapped | |||||
sourceUri | uri | |||||||
sourceCanonical | canonical(ValueSet) | |||||||
target[x] | Σ | 0..1 | The target value set which provides context for the mappings | |||||
targetUri | uri | |||||||
targetCanonical | canonical(ValueSet) | |||||||
group | 0..* | BackboneElement | Same source and target systems | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 0..1 | uri | Source system where concepts to be mapped are defined | |||||
sourceVersion | 0..1 | string | Specific version of the code system | |||||
target | 0..1 | uri | Target system that the concepts are to be mapped to | |||||
targetVersion | 0..1 | string | Specific version of the code system | |||||
element | 1..* | BackboneElement | Mappings for a concept from the source set | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | 0..1 | code | Identifies element being mapped | |||||
display | 0..1 | string | Display for the code | |||||
target | C | 0..* | BackboneElement | Concept in target system for element cmd-1: If the map is narrower or inexact, there SHALL be some comments | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
code | 0..1 | code | Code that identifies the target element | |||||
display | 0..1 | string | Display for the code | |||||
equivalence | ?! | 1..1 | code | relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint Binding: ConceptMapEquivalence (required): The degree of equivalence between concepts. | ||||
comment | C | 0..1 | string | Description of status/issues in mapping | ||||
dependsOn | 0..* | BackboneElement | Other elements required for this mapping (from context) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
property | 1..1 | uri | Reference to property mapping depends on | |||||
system | 0..1 | canonical(CodeSystem) | Code System (if necessary) | |||||
value | 1..1 | string | Value of the referenced element | |||||
display | 0..1 | string | Display for the code (if value is a code) | |||||
product | 0..* | See dependsOn (ConceptMap) | Other concepts that this mapping also produces | |||||
unmapped | C | 0..1 | BackboneElement | What to do when there is no mapping for the source concept cmd-2: If the mode is 'fixed', a code must be provided cmd-3: If the mode is 'other-map', a url must be provided | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
mode | 1..1 | code | provided | fixed | other-map Binding: ConceptMapGroupUnmappedMode (required): Defines which action to take if there is no match in the group. | |||||
code | 0..1 | code | Fixed code when mode = fixed | |||||
display | 0..1 | string | Display for the code | |||||
url | 0..1 | canonical(ConceptMap) | canonical reference to an additional ConceptMap to use for mapping if the source concept is unmapped | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
ConceptMap.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
ConceptMap.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.3.0 from the FHIR Standard | ||||
ConceptMap.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
ConceptMap.group.element.target.equivalence | required | ConceptMapEquivalencehttp://hl7.org/fhir/ValueSet/concept-map-equivalence|4.3.0 from the FHIR Standard | ||||
ConceptMap.group.unmapped.mode | required | ConceptMapGroupUnmappedModehttp://hl7.org/fhir/ValueSet/conceptmap-unmapped-mode|4.3.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cmd-0 | warning | ConceptMap | 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_]){0,254}') | |
cmd-1 | error | ConceptMap.group.element.target | If the map is narrower or inexact, there SHALL be some comments : comment.exists() or equivalence.empty() or ((equivalence != 'narrower') and (equivalence != 'inexact')) | |
cmd-2 | error | ConceptMap.group.unmapped | If the mode is 'fixed', a code must be provided : (mode = 'fixed') implies code.exists() | |
cmd-3 | error | ConceptMap.group.unmapped | If the mode is 'other-map', a url must be provided : (mode = 'other-map') implies url.exists() | |
dom-2 | error | ConceptMap | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | ConceptMap | 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | ConceptMap | 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 | ConceptMap | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | ConceptMap | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | ConceptMap.contained | Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems : ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic) | |
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() |
This structure is derived from ConceptMap
Other representations of profile: CSV, Excel, Schematron