Finnish Base Profiles
1.0.0-rc23 - qa-preview
This page is part of the Finnish Base Profiles (v1.0.0-rc23: QA Preview) based on FHIR R4. 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: https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/kanta-document-other-metadata-profile | Version: 1.0.0-rc23 | |||
Draft as of 2023-11-06 | Computable Name: KantaDocumentOtherMetadata |
This is one way in which a system might use the Finnish Base Information Custodian profile. This profile defines other constraints. The profile KantaDocumentMetadata combines the requirements.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from FiBaseProvenance
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |
![]() ![]() ![]() | ||||
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system | |
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was | |
![]() ![]() ![]() ![]() ![]() ![]() | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | uri | Identity of the terminology system Binding: Example value set for provenance roles (required) | |
![]() |
Path | Conformance | ValueSet |
Provenance.agent.role:kantaCoding.coding.system | required |
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 1..* | Reference(Resource) | Target Reference(s) (usually version specific) |
![]() ![]() ![]() | Σ | 1..1 | instant | When the activity was recorded / updated |
![]() ![]() ![]() | 1..* | BackboneElement | Actor involved | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who participated |
![]() |
Path | Conformance | ValueSet |
Provenance.agent.role | example | SecurityRoleType |
Provenance.agent.role:kantaCoding | example | SecurityRoleType |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Provenance | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Provenance | 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 | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Provenance | 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![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |||||
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() | Σ | 1..* | Reference(Resource) | Target Reference(s) (usually version specific) | ||||
![]() ![]() ![]() | 0..1 | When the activity occurred | ||||||
![]() ![]() ![]() ![]() | Period | |||||||
![]() ![]() ![]() ![]() | dateTime | |||||||
![]() ![]() ![]() | Σ | 1..1 | instant | When the activity was recorded / updated | ||||
![]() ![]() ![]() | 0..* | uri | Policy or plan the activity was defined by | |||||
![]() ![]() ![]() | 0..1 | Reference(FI Base Location) | Where the activity occurred, if relevant | |||||
![]() ![]() ![]() | 0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place. | |||||
![]() ![]() ![]() | 0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place. | |||||
![]() ![]() ![]() | 1..* | BackboneElement | Actor involved | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | Σ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity. | ||||
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | uri | Identity of the terminology system Binding: Example value set for provenance roles (required) | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who participated | ||||
![]() ![]() ![]() ![]() | 0..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who the agent is representing | |||||
![]() ![]() ![]() | 0..* | BackboneElement | An entity used in this activity | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | code | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (required): How an entity was used in an activity. | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(Resource) | Identity of entity | ||||
![]() ![]() ![]() ![]() | 0..* | See agent (Provenance) | Entity is attributed to this agent | |||||
![]() ![]() ![]() | 0..* | Signature | Signature on target | |||||
![]() |
Path | Conformance | ValueSet | ||||
Provenance.language | preferred | CommonLanguages
| ||||
Provenance.reason | extensible | PurposeOfUse | ||||
Provenance.activity | extensible | ProvenanceActivityType | ||||
Provenance.agent.type | extensible | ProvenanceParticipantType | ||||
Provenance.agent.role | example | SecurityRoleType | ||||
Provenance.agent.role:kantaCoding | example | SecurityRoleType | ||||
Provenance.agent.role:kantaCoding.coding.system | required | |||||
Provenance.entity.role | required | ProvenanceEntityRole |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Provenance | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Provenance | 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 | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Provenance | 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() |
This structure is derived from FiBaseProvenance
Summary
Mandatory: 2 elements
Slices
This structure defines the following Slices:
Differential View
This structure is derived from FiBaseProvenance
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |
![]() ![]() ![]() | ||||
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system | |
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was | |
![]() ![]() ![]() ![]() ![]() ![]() | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | uri | Identity of the terminology system Binding: Example value set for provenance roles (required) | |
![]() |
Path | Conformance | ValueSet |
Provenance.agent.role:kantaCoding.coding.system | required |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 1..* | Reference(Resource) | Target Reference(s) (usually version specific) |
![]() ![]() ![]() | Σ | 1..1 | instant | When the activity was recorded / updated |
![]() ![]() ![]() | 1..* | BackboneElement | Actor involved | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who participated |
![]() |
Path | Conformance | ValueSet |
Provenance.agent.role | example | SecurityRoleType |
Provenance.agent.role:kantaCoding | example | SecurityRoleType |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Provenance | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Provenance | 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 | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Provenance | 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![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() | 0..* | FiBaseProvenance | Who, What, When for a set of resources | |||||
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() ![]() | Σ | 1..* | Reference(Resource) | Target Reference(s) (usually version specific) | ||||
![]() ![]() ![]() | 0..1 | When the activity occurred | ||||||
![]() ![]() ![]() ![]() | Period | |||||||
![]() ![]() ![]() ![]() | dateTime | |||||||
![]() ![]() ![]() | Σ | 1..1 | instant | When the activity was recorded / updated | ||||
![]() ![]() ![]() | 0..* | uri | Policy or plan the activity was defined by | |||||
![]() ![]() ![]() | 0..1 | Reference(FI Base Location) | Where the activity occurred, if relevant | |||||
![]() ![]() ![]() | 0..* | CodeableConcept | Reason the activity is occurring Binding: PurposeOfUse (extensible): The reason the activity took place. | |||||
![]() ![]() ![]() | 0..1 | CodeableConcept | Activity that occurred Binding: ProvenanceActivityType (extensible): The activity that took place. | |||||
![]() ![]() ![]() | 1..* | BackboneElement | Actor involved | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | Σ | 0..1 | CodeableConcept | How the agent participated Binding: ProvenanceParticipantType (extensible): The type of participation that a provenance agent played with respect to the activity. | ||||
![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Slice: Unordered, Open by value:coding.system Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() ![]() | 1..* | CodeableConcept | What the agents role was Binding: SecurityRoleType (example): The role that a provenance agent played with respect to the activity. | |||||
![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | uri | Identity of the terminology system Binding: Example value set for provenance roles (required) | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who participated | ||||
![]() ![]() ![]() ![]() | 0..1 | Reference(FI Base Practitioner | FI Base PractitionerRole | FI Base Patient | RelatedPerson | Device | FI Base Organization) | Who the agent is representing | |||||
![]() ![]() ![]() | 0..* | BackboneElement | An entity used in this activity | |||||
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | code | derivation | revision | quotation | source | removal Binding: ProvenanceEntityRole (required): How an entity was used in an activity. | ||||
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(Resource) | Identity of entity | ||||
![]() ![]() ![]() ![]() | 0..* | See agent (Provenance) | Entity is attributed to this agent | |||||
![]() ![]() ![]() | 0..* | Signature | Signature on target | |||||
![]() |
Path | Conformance | ValueSet | ||||
Provenance.language | preferred | CommonLanguages
| ||||
Provenance.reason | extensible | PurposeOfUse | ||||
Provenance.activity | extensible | ProvenanceActivityType | ||||
Provenance.agent.type | extensible | ProvenanceParticipantType | ||||
Provenance.agent.role | example | SecurityRoleType | ||||
Provenance.agent.role:kantaCoding | example | SecurityRoleType | ||||
Provenance.agent.role:kantaCoding.coding.system | required | |||||
Provenance.entity.role | required | ProvenanceEntityRole |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Provenance | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Provenance | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Provenance | 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 | Provenance | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Provenance | 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() |
This structure is derived from FiBaseProvenance
Summary
Mandatory: 2 elements
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron