NCPI FHIR Implementation Guide v2
0.1.0 - ci-build
NCPI FHIR Implementation Guide v2 - Local Development build (v0.1.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-2/StructureDefinition/SharedDataModelFile | Version: 0.1.0 | |||
Draft as of 2025-01-04 | Computable Name: CdmFile |
The Shared Data Model for File
Files are a common research product. In this straightforward representation, we provide basic details of the file and how to access it. Details about what is contained in the file or how the content was generated should be described with other entities, such as data dictionaries, summaries, or assays.
File contains basic file metadata about the file location and contents. Files are typically associated with one or more participants, though they can also include general study documents. The file content may have different access control restrictions when compared to this entity, which is only the file metadata.
There can be multiple file location references, for example DRS and cloud storage references, though the access approaches for those locations should be reasonably apparent through the Access Policy for the file content.
If a data file is ONLY accessible through DRS, the underlying bucket locations should not be included here as no user would be able to access them directly. However, if there are multiple Access Policies that provide routes to access the data through different URIs, those can be included. Controlled access release via DRS with a consortium access model permitting direct bucket access could both be stated here to permit consistent reference to the File irrespective of the access mechanism.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |||||
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |||||
fileExternalID | 0..1 | string | A related identifier of this file | |||||
format | 1..1 | code | The file format used | |||||
location | C | 1..* | List | List of locations where this data can be accessed dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource ele-1: All FHIR elements must have a @value or children | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
ele-1: All FHIR elements must have a @value or children | |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation ele-1: All FHIR elements must have a @value or children | |||||
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 ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
identifier | 0..* | Identifier | Business identifier ele-1: All FHIR elements must have a @value or children | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. ele-1: All FHIR elements must have a @value or children | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. ele-1: All FHIR elements must have a @value or children | ||||
title | Σ | 0..1 | string | Descriptive name for the list ele-1: All FHIR elements must have a @value or children Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. ele-1: All FHIR elements must have a @value or children | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject ele-1: All FHIR elements must have a @value or children | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created ele-1: All FHIR elements must have a @value or children | |||||
date | Σ | 0..1 | dateTime | When the list was prepared ele-1: All FHIR elements must have a @value or children | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) ele-1: All FHIR elements must have a @value or children | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. ele-1: All FHIR elements must have a @value or children | |||||
note | 0..* | Annotation | Comments about the list ele-1: All FHIR elements must have a @value or children | |||||
entry | C | 0..* | BackboneElement | Entries in the list ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource | ||||
@id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. ele-1: All FHIR elements must have a @value or children | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted ele-1: All FHIR elements must have a @value or children | ||||
date | 0..1 | dateTime | When item added to list ele-1: All FHIR elements must have a @value or children | |||||
item | 1..1 | Reference(Resource) | Actual entry ele-1: All FHIR elements must have a @value or children | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. ele-1: All FHIR elements must have a @value or children | ||||
uri | 1..1 | uri | The URI at which this data can be accessed | |||||
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |||||
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |||||
hash | C | 0..* | List | Provides a list of hashes for confirming file transfers dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource ele-1: All FHIR elements must have a @value or children | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
ele-1: All FHIR elements must have a @value or children | |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation ele-1: All FHIR elements must have a @value or children | |||||
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 ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
identifier | 0..* | Identifier | Business identifier ele-1: All FHIR elements must have a @value or children | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. ele-1: All FHIR elements must have a @value or children | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. ele-1: All FHIR elements must have a @value or children | ||||
title | Σ | 0..1 | string | Descriptive name for the list ele-1: All FHIR elements must have a @value or children Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. ele-1: All FHIR elements must have a @value or children | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject ele-1: All FHIR elements must have a @value or children | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created ele-1: All FHIR elements must have a @value or children | |||||
date | Σ | 0..1 | dateTime | When the list was prepared ele-1: All FHIR elements must have a @value or children | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) ele-1: All FHIR elements must have a @value or children | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. ele-1: All FHIR elements must have a @value or children | |||||
note | 0..* | Annotation | Comments about the list ele-1: All FHIR elements must have a @value or children | |||||
entry | C | 0..* | BackboneElement | Entries in the list ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource | ||||
@id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. ele-1: All FHIR elements must have a @value or children | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted ele-1: All FHIR elements must have a @value or children | ||||
date | 0..1 | dateTime | When item added to list ele-1: All FHIR elements must have a @value or children | |||||
item | 1..1 | Reference(Resource) | Actual entry ele-1: All FHIR elements must have a @value or children | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. ele-1: All FHIR elements must have a @value or children | ||||
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |||||
value | 1..1 | string | Value of hashing the file | |||||
contentVersion | 0..1 | string | Version of the file content | |||||
description | 0..1 | string | A description of the file | |||||
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
SharedDataModelFile.location.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.location.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.location.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.location.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.location.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard | ||||
SharedDataModelFile.hash.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.hash.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.hash.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.hash.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.hash.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | SharedDataModelFile.location, SharedDataModelFile.hash | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | SharedDataModelFile.location.contained, SharedDataModelFile.hash.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() | |
lst-1 | error | SharedDataModelFile.location, SharedDataModelFile.hash | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() | |
lst-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | The deleted flag can only be used if the mode of the list is "changes" : mode = 'changes' or entry.deleted.empty() | |
lst-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | An entry date can only be used if the mode of the list is "working" : mode = 'working' or entry.date.empty() |
This structure is derived from Base
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |
fileExternalID | 0..1 | string | A related identifier of this file | |
format | 1..1 | code | The file format used | |
location | 1..* | List | List of locations where this data can be accessed | |
uri | 1..1 | uri | The URI at which this data can be accessed | |
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |
hash | 0..* | List | Provides a list of hashes for confirming file transfers | |
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |
value | 1..1 | string | Value of hashing the file | |
contentVersion | 0..1 | string | Version of the file content | |
description | 0..1 | string | A description of the file | |
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |||||
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |||||
fileExternalID | 0..1 | string | A related identifier of this file | |||||
format | 1..1 | code | The file format used | |||||
location | C | 1..* | List | List of locations where this data can be accessed lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
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 | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
title | Σ | 0..1 | string | Descriptive name for the list Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created | |||||
date | Σ | 0..1 | dateTime | When the list was prepared | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
note | 0..* | Annotation | Comments about the list | |||||
entry | C | 0..* | BackboneElement | Entries in the list | ||||
@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 | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted | ||||
date | 0..1 | dateTime | When item added to list | |||||
item | 1..1 | Reference(Resource) | Actual entry | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
uri | 1..1 | uri | The URI at which this data can be accessed | |||||
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |||||
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |||||
hash | C | 0..* | List | Provides a list of hashes for confirming file transfers lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
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 | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
title | Σ | 0..1 | string | Descriptive name for the list Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created | |||||
date | Σ | 0..1 | dateTime | When the list was prepared | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
note | 0..* | Annotation | Comments about the list | |||||
entry | C | 0..* | BackboneElement | Entries in the list | ||||
@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 | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted | ||||
date | 0..1 | dateTime | When item added to list | |||||
item | 1..1 | Reference(Resource) | Actual entry | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |||||
value | 1..1 | string | Value of hashing the file | |||||
contentVersion | 0..1 | string | Version of the file content | |||||
description | 0..1 | string | A description of the file | |||||
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
SharedDataModelFile.location.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.location.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.location.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.location.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.location.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard | ||||
SharedDataModelFile.hash.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.hash.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.hash.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.hash.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.hash.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | SharedDataModelFile.location, SharedDataModelFile.hash | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | SharedDataModelFile.location.contained, SharedDataModelFile.hash.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() | |
lst-1 | error | SharedDataModelFile.location, SharedDataModelFile.hash | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() | |
lst-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | The deleted flag can only be used if the mode of the list is "changes" : mode = 'changes' or entry.deleted.empty() | |
lst-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | An entry date can only be used if the mode of the list is "working" : mode = 'working' or entry.date.empty() |
This structure is derived from Base
Key Elements View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |||||
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |||||
fileExternalID | 0..1 | string | A related identifier of this file | |||||
format | 1..1 | code | The file format used | |||||
location | C | 1..* | List | List of locations where this data can be accessed dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource ele-1: All FHIR elements must have a @value or children | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
ele-1: All FHIR elements must have a @value or children | |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation ele-1: All FHIR elements must have a @value or children | |||||
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 ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
identifier | 0..* | Identifier | Business identifier ele-1: All FHIR elements must have a @value or children | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. ele-1: All FHIR elements must have a @value or children | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. ele-1: All FHIR elements must have a @value or children | ||||
title | Σ | 0..1 | string | Descriptive name for the list ele-1: All FHIR elements must have a @value or children Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. ele-1: All FHIR elements must have a @value or children | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject ele-1: All FHIR elements must have a @value or children | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created ele-1: All FHIR elements must have a @value or children | |||||
date | Σ | 0..1 | dateTime | When the list was prepared ele-1: All FHIR elements must have a @value or children | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) ele-1: All FHIR elements must have a @value or children | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. ele-1: All FHIR elements must have a @value or children | |||||
note | 0..* | Annotation | Comments about the list ele-1: All FHIR elements must have a @value or children | |||||
entry | C | 0..* | BackboneElement | Entries in the list ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource | ||||
@id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. ele-1: All FHIR elements must have a @value or children | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted ele-1: All FHIR elements must have a @value or children | ||||
date | 0..1 | dateTime | When item added to list ele-1: All FHIR elements must have a @value or children | |||||
item | 1..1 | Reference(Resource) | Actual entry ele-1: All FHIR elements must have a @value or children | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. ele-1: All FHIR elements must have a @value or children | ||||
uri | 1..1 | uri | The URI at which this data can be accessed | |||||
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |||||
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |||||
hash | C | 0..* | List | Provides a list of hashes for confirming file transfers dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: 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 dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource ele-1: All FHIR elements must have a @value or children | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): IETF language tag
ele-1: All FHIR elements must have a @value or children | |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation ele-1: All FHIR elements must have a @value or children | |||||
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 ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
identifier | 0..* | Identifier | Business identifier ele-1: All FHIR elements must have a @value or children | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. ele-1: All FHIR elements must have a @value or children | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. ele-1: All FHIR elements must have a @value or children | ||||
title | Σ | 0..1 | string | Descriptive name for the list ele-1: All FHIR elements must have a @value or children Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. ele-1: All FHIR elements must have a @value or children | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject ele-1: All FHIR elements must have a @value or children | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created ele-1: All FHIR elements must have a @value or children | |||||
date | Σ | 0..1 | dateTime | When the list was prepared ele-1: All FHIR elements must have a @value or children | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) ele-1: All FHIR elements must have a @value or children | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. ele-1: All FHIR elements must have a @value or children | |||||
note | 0..* | Annotation | Comments about the list ele-1: All FHIR elements must have a @value or children | |||||
entry | C | 0..* | BackboneElement | Entries in the list ele-1: All FHIR elements must have a @value or children unless an empty Parameters resource | ||||
@id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. ele-1: All FHIR elements must have a @value or children | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted ele-1: All FHIR elements must have a @value or children | ||||
date | 0..1 | dateTime | When item added to list ele-1: All FHIR elements must have a @value or children | |||||
item | 1..1 | Reference(Resource) | Actual entry ele-1: All FHIR elements must have a @value or children | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. ele-1: All FHIR elements must have a @value or children | ||||
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |||||
value | 1..1 | string | Value of hashing the file | |||||
contentVersion | 0..1 | string | Version of the file content | |||||
description | 0..1 | string | A description of the file | |||||
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
SharedDataModelFile.location.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.location.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.location.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.location.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.location.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard | ||||
SharedDataModelFile.hash.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.hash.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.hash.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.hash.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.hash.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | SharedDataModelFile.location, SharedDataModelFile.hash | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | SharedDataModelFile.location.contained, SharedDataModelFile.hash.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() | |
lst-1 | error | SharedDataModelFile.location, SharedDataModelFile.hash | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() | |
lst-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | The deleted flag can only be used if the mode of the list is "changes" : mode = 'changes' or entry.deleted.empty() | |
lst-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | An entry date can only be used if the mode of the list is "working" : mode = 'working' or entry.date.empty() |
Differential View
This structure is derived from Base
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |
fileExternalID | 0..1 | string | A related identifier of this file | |
format | 1..1 | code | The file format used | |
location | 1..* | List | List of locations where this data can be accessed | |
uri | 1..1 | uri | The URI at which this data can be accessed | |
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |
hash | 0..* | List | Provides a list of hashes for confirming file transfers | |
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |
value | 1..1 | string | Value of hashing the file | |
contentVersion | 0..1 | string | Version of the file content | |
description | 0..1 | string | A description of the file | |
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
SharedDataModelFile | 0..* | Base | Shared Data Model for File | |||||
participantID | 1..1 | VSReference(5.1.0) | The participant(s) for whom this file contains data | |||||
fileExternalID | 0..1 | string | A related identifier of this file | |||||
format | 1..1 | code | The file format used | |||||
location | C | 1..* | List | List of locations where this data can be accessed lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
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 | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
title | Σ | 0..1 | string | Descriptive name for the list Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created | |||||
date | Σ | 0..1 | dateTime | When the list was prepared | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
note | 0..* | Annotation | Comments about the list | |||||
entry | C | 0..* | BackboneElement | Entries in the list | ||||
@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 | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted | ||||
date | 0..1 | dateTime | When item added to list | |||||
item | 1..1 | Reference(Resource) | Actual entry | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
uri | 1..1 | uri | The URI at which this data can be accessed | |||||
accessPolicy | 0..* | VSReference(5.1.0) | If present, only those under the specific Access Policy can access the file in this location. | |||||
fileSize | 1..1 | Quantity | The size of the file, e.g., in bytes. | |||||
hash | C | 0..* | List | Provides a list of hashes for confirming file transfers lst-1: A list can only have an emptyReason if it is empty lst-2: The deleted flag can only be used if the mode of the list is "changes" lst-3: An entry date can only be used if the mode of the list is "working" | ||||
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 | ||||
identifier | 0..* | Identifier | Business identifier | |||||
status | ?!Σ | 1..1 | code | current | retired | entered-in-error Binding: ListStatus (required): The current state of the list. | ||||
mode | ?!Σ | 1..1 | code | working | snapshot | changes Binding: ListMode (required): The processing mode that applies to this list. | ||||
title | Σ | 0..1 | string | Descriptive name for the list Example General: Dr. Jane's Patients | ||||
code | Σ | 0..1 | CodeableConcept | What the purpose of this list is Binding: ExampleUseCodesForList (example): What the purpose of a list is. | ||||
subject | Σ | 0..1 | Reference(Patient | Group | Device | Location) | If all resources have the same subject | ||||
encounter | 0..1 | Reference(Encounter) | Context in which list created | |||||
date | Σ | 0..1 | dateTime | When the list was prepared | ||||
source | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Patient | Device) | Who and/or what defined the list contents (aka Author) | ||||
orderedBy | 0..1 | CodeableConcept | What order the list has Binding: ListOrderCodes (preferred): What order applies to the items in a list. | |||||
note | 0..* | Annotation | Comments about the list | |||||
entry | C | 0..* | BackboneElement | Entries in the list | ||||
@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 | ||||
flag | 0..1 | CodeableConcept | Status/Workflow information about this item Binding: PatientMedicineChangeTypes (example): Codes that provide further information about the reason and meaning of the item in the list. | |||||
deleted | ?!C | 0..1 | boolean | If this item is actually marked as deleted | ||||
date | 0..1 | dateTime | When item added to list | |||||
item | 1..1 | Reference(Resource) | Actual entry | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
type | 1..1 | code | Algorithm used to calculate the hash (and size, where applicable) | |||||
value | 1..1 | string | Value of hashing the file | |||||
contentVersion | 0..1 | string | Version of the file content | |||||
description | 0..1 | string | A description of the file | |||||
type | 1..1 | code | The type of data contained in this file. Should be as detailed as possible, e.g., Whole Exome Variant Calls. | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
SharedDataModelFile.location.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.location.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.location.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.location.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.location.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.location.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard | ||||
SharedDataModelFile.hash.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
SharedDataModelFile.hash.status | required | ListStatushttp://hl7.org/fhir/ValueSet/list-status|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.mode | required | ListModehttp://hl7.org/fhir/ValueSet/list-mode|4.3.0 from the FHIR Standard | ||||
SharedDataModelFile.hash.code | example | ExampleUseCodesForListhttp://hl7.org/fhir/ValueSet/list-example-codes from the FHIR Standard | ||||
SharedDataModelFile.hash.orderedBy | preferred | ListOrderCodeshttp://hl7.org/fhir/ValueSet/list-order from the FHIR Standard | ||||
SharedDataModelFile.hash.entry.flag | example | PatientMedicineChangeTypeshttp://hl7.org/fhir/ValueSet/list-item-flag from the FHIR Standard | ||||
SharedDataModelFile.hash.emptyReason | preferred | ListEmptyReasonshttp://hl7.org/fhir/ValueSet/list-empty-reason from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | 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 | SharedDataModelFile.location, SharedDataModelFile.hash | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | SharedDataModelFile.location, SharedDataModelFile.hash | A resource should have narrative for robust management : text.`div`.exists() | |
dom-r4b | warning | SharedDataModelFile.location.contained, SharedDataModelFile.hash.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() | |
lst-1 | error | SharedDataModelFile.location, SharedDataModelFile.hash | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() | |
lst-2 | error | SharedDataModelFile.location, SharedDataModelFile.hash | The deleted flag can only be used if the mode of the list is "changes" : mode = 'changes' or entry.deleted.empty() | |
lst-3 | error | SharedDataModelFile.location, SharedDataModelFile.hash | An entry date can only be used if the mode of the list is "working" : mode = 'working' or entry.date.empty() |
This structure is derived from Base