This page is part of the FHIR for FAIR - FHIR Implementation Guide (v1.0.0: STU 1) based on FHIR v4.3.0. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/List-uv-f4f | Version: 1.0.0 | |||
Active as of 2022-09-28 | Computable Name: ListF4F |
This profile defines how to use the List resource to convey subject level metadata information for a FAIR collection of data by using HL7 FHIR
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from List
Summary
Mandatory: 0 element (1 nested mandatory element)
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
This structure is derived from List
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
List | C | 0..* | List | A list is a curated collection of resources | ||||
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 | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
copyright | 0..1 | markdown | Copyright URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/copyright | |||||
licenceCodeable | 0..1 | CodeableConcept | Licence Terms as CodeableConcept URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/licenceCodeable | |||||
licenceAttachment | 0..1 | Attachment | Licence Terms as Attachment URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/licenceAttachment | |||||
subjectOther | 0..* | Reference(Resource) | Other Subjects [Resource] URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/subjectOther | |||||
classifier | 0..* | CodeableConcept | Classifier [Resource] URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/classifier | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | 0..* | Identifier | Business identifier Slice: Unordered, Open by value:system | |||||
identifier:url | 0..* | Identifier | GUPRI (uri) | |||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible) | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: urn:ietf:rfc:3986 | ||||
value | Σ | 0..1 | string | uri Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
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) | Subject of the listed resources | ||||
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) | A reference to the listed resource. | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
List | C | 0..* | List | A list is a curated collection of resources |
Documentation for this format |
This structure is derived from List
Summary
Mandatory: 0 element (1 nested mandatory element)
Extensions
This structure refers to these extensions:
Slices
This structure defines the following Slices:
Differential View
This structure is derived from List
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
List | C | 0..* | List | A list is a curated collection of resources | ||||
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 | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
copyright | 0..1 | markdown | Copyright URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/copyright | |||||
licenceCodeable | 0..1 | CodeableConcept | Licence Terms as CodeableConcept URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/licenceCodeable | |||||
licenceAttachment | 0..1 | Attachment | Licence Terms as Attachment URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/licenceAttachment | |||||
subjectOther | 0..* | Reference(Resource) | Other Subjects [Resource] URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/subjectOther | |||||
classifier | 0..* | CodeableConcept | Classifier [Resource] URL: http://hl7.org/fhir/uv/fhir-for-fair/StructureDefinition/classifier | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | 0..* | Identifier | Business identifier Slice: Unordered, Open by value:system | |||||
identifier:url | 0..* | Identifier | GUPRI (uri) | |||||
id | 0..1 | id | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required) | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible) | ||||
system | Σ | 1..1 | uri | The namespace for the identifier value Required Pattern: urn:ietf:rfc:3986 | ||||
value | Σ | 0..1 | string | uri Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
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) | Subject of the listed resources | ||||
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) | A reference to the listed resource. | |||||
emptyReason | C | 0..1 | CodeableConcept | Why list is empty Binding: ListEmptyReasons (preferred): If a list is empty, why it is empty. | ||||
Documentation for this format |
Other representations of profile: CSV, Excel, Schematron
Path | Conformance | ValueSet |
List.language | preferred | CommonLanguages Max Binding: AllLanguages |
List.identifier:url.use | required | IdentifierUse |
List.identifier:url.type | extensible | Identifier Type Codes |
List.status | required | ListStatus |
List.mode | required | ListMode |
List.code | example | ExampleUseCodesForList |
List.orderedBy | preferred | ListOrderCodes |
List.entry.flag | example | PatientMedicineChangeTypes |
List.emptyReason | preferred | ListEmptyReasons |
Id | Grade | Path | Details | Requirements |
dom-2 | error | List | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | List | 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 | List | 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 | List | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | Best Practice | List | A resource should have narrative for robust management : text.`div`.exists() | |
lst-1 | error | List | A list can only have an emptyReason if it is empty : emptyReason.empty() or entry.empty() | |
lst-2 | error | List | The deleted flag can only be used if the mode of the list is "changes" : mode = 'changes' or entry.deleted.empty() | |
lst-3 | error | List | An entry date can only be used if the mode of the list is "working" : mode = 'working' or entry.date.empty() | |
ele-1 | error | List.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
dom-r4b | warning | List.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 | List.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | List.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.extension:copyright | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ext-1 | error | List.extension:copyright | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.extension:licenceCodeable | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ext-1 | error | List.extension:licenceCodeable | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.extension:licenceAttachment | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ext-1 | error | List.extension:licenceAttachment | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.extension:subjectOther | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ext-1 | error | List.extension:subjectOther | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.extension:classifier | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ext-1 | error | List.extension:classifier | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | List.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | List.identifier:url.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.identifier:url.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.identifier:url.assigner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.mode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.title | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.date | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.source | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.orderedBy | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.note | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.entry | All FHIR elements must have a @value or children unless an empty Parameters resource : hasValue() or (children().count() > id.count()) or $this is Parameters | |
ele-1 | error | List.entry.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | List.entry.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.entry.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | List.entry.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | List.entry.flag | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.entry.deleted | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.entry.date | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.entry.item | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | List.emptyReason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |