HL7 FHIR Implementation Guide: Rwanda HIV
0.1.0 - STU1
HL7 FHIR Implementation Guide: Rwanda HIV, published by Jembi Health Systems. This is not an authorized publication; it is the continuous build for version 0.1.0). This version is based on the current content of https://github.com/openhie/Rwanda-HIV and changes regularly. See the Directory of published versions
Official URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/receive-sms-messages | Version: 0.1.0 | |||
Active as of 2023-09-15 | Computable Name: ReceiveSMSMessages |
Represents a patient’s consent to receive Short Message Service (SMS) messages.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Consent
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
category | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
text | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages | |
subject | 1..1 | Reference(Patient) | Who the consent applies to | |
decision | 1..1 | code | deny | permit | |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | inactive | not-done | entered-in-error | unknown Binding: ConsentState (required): Indicates the state of the consent. |
category | Σ | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Binding: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement. Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
text | Σ | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages |
subject | Σ | 1..1 | Reference(Patient) | Who the consent applies to |
decision | ?!Σ | 1..1 | code | deny | permit Binding: ConsentProvisionType (required): Sets the base decision for Consent to be either permit or deny, with provisions assumed to be a negation of the previous level. |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Consent.status | required | ConsentState |
Consent.category | example | Pattern: LOINC code 89057-4 |
Consent.decision | required | ConsentProvisionType |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Consent | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Consent | 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 | Consent | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Consent | 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 |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
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: AllLanguages (required): IETF language tag for a human language | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Identifier for this record (external references) |
status | ?!Σ | 1..1 | code | draft | active | inactive | not-done | entered-in-error | unknown Binding: ConsentState (required): Indicates the state of the consent. |
category | Σ | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Binding: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement. Required Pattern: At least the following |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
version | 0..1 | string | Version of the system - if relevant | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
display | 0..1 | string | Representation defined by the system | |
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
text | 0..1 | string | Plain text representation of the concept | |
id | 0..1 | id | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system |
text | Σ | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages |
subject | Σ | 1..1 | Reference(Patient) | Who the consent applies to |
date | Σ | 0..1 | date | Fully executed date of the consent |
period | Σ | 0..1 | Period | Effective period for this Consent |
grantor | Σ | 0..* | Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Who is granting rights according to the policy and rules |
grantee | Σ | 0..* | Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Who is agreeing to the policy and rules |
manager | 0..* | Reference(HealthcareService | Organization | Patient | Practitioner) | Consent workflow management | |
controller | 0..* | Reference(HealthcareService | Organization | Patient | Practitioner) | Consent Enforcer | |
sourceAttachment | 0..* | Attachment | Source from which this consent is taken | |
sourceReference | 0..* | Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) | Source from which this consent is taken | |
regulatoryBasis | 0..* | CodeableConcept | Regulations establishing base Consent Binding: ConsentPolicyRuleCodes (example): Regulatory policy examples | |
policyBasis | 0..1 | BackboneElement | Computable version of the backing policy | |
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 |
reference | 0..1 | Reference(Resource) | Reference backing policy resource | |
url | 0..1 | url | URL to a computable backing policy | |
policyText | 0..* | Reference(DocumentReference) | Human Readable Policy | |
verification | Σ | 0..* | BackboneElement | Consent Verified by patient or family |
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 |
verified | Σ | 1..1 | boolean | Has been verified |
verificationType | 0..1 | CodeableConcept | Business case of verification Binding: ConsentVerificationCodes (example): Types of Verification/Validation. | |
verifiedBy | 0..1 | Reference(Organization | Practitioner | PractitionerRole) | Person conducting verification | |
verifiedWith | 0..1 | Reference(Patient | RelatedPerson) | Person who verified | |
verificationDate | 0..* | dateTime | When consent verified | |
decision | ?!Σ | 1..1 | code | deny | permit Binding: ConsentProvisionType (required): Sets the base decision for Consent to be either permit or deny, with provisions assumed to be a negation of the previous level. |
provision | Σ | 0..* | BackboneElement | Constraints to the base Consent.policyRule/Consent.policy |
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 |
period | Σ | 0..1 | Period | Timeframe for this provision |
actor | 0..* | BackboneElement | Who|what controlled by this provision (or group, by role) | |
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 |
role | 0..1 | CodeableConcept | How the actor is involved Binding: ParticipationRoleType (extensible): How an actor is involved in the consent considerations. | |
reference | 0..1 | Reference(Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Resource for the actor (or group, by role) | |
action | Σ | 0..* | CodeableConcept | Actions controlled by this provision Binding: ConsentActionCodes (example): Detailed codes for the consent action. |
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System. |
purpose | Σ | 0..* | Coding | Context of activities covered by this provision Binding: PurposeOfUse (extensible): What purposes of use are controlled by this exception. If more than one label is specified, operations must have all the specified labels. |
documentType | Σ | 0..* | Coding | e.g. Resource Type, Profile, CDA, etc Binding: ConsentContentClass (preferred): The document type a consent provision covers. |
resourceType | Σ | 0..* | Coding | e.g. Resource Type, Profile, etc Binding: ResourceType (extensible): The resource types a consent provision covers. |
code | Σ | 0..* | CodeableConcept | e.g. LOINC or SNOMED CT code, etc. in the content Binding: ConsentContentCodes (example): If this code is found in an instance, then the exception applies. |
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this provision |
data | Σ | 0..* | BackboneElement | Data controlled by this provision |
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 |
meaning | Σ | 1..1 | code | instance | related | dependents | authoredby Binding: ConsentDataMeaning (required): How a resource reference is interpreted when testing consent restrictions. |
reference | Σ | 1..1 | Reference(Resource) | The actual data reference |
expression | 0..1 | Expression | A computable expression of the consent | |
provision | 0..* | See provision (Consent) | Nested Exception Provisions | |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Consent.language | required | AllLanguages |
Consent.status | required | ConsentState |
Consent.category | example | Pattern: LOINC code 89057-4 |
Consent.regulatoryBasis | example | ConsentPolicyRuleCodes |
Consent.verification.verificationType | example | ConsentVerificationCodes |
Consent.decision | required | ConsentProvisionType |
Consent.provision.actor.role | extensible | ParticipationRoleType |
Consent.provision.action | example | ConsentActionCodes |
Consent.provision.securityLabel | example | SecurityLabelExamples |
Consent.provision.purpose | extensible | PurposeOfUse |
Consent.provision.documentType | preferred | ConsentContentClass |
Consent.provision.resourceType | extensible | ResourceType |
Consent.provision.code | example | ConsentContentCodes |
Consent.provision.data.meaning | required | ConsentDataMeaning |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Consent | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Consent | 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 | Consent | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Consent | 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 Consent
Differential View
This structure is derived from Consent
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
category | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Required Pattern: At least the following | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
text | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages | |
subject | 1..1 | Reference(Patient) | Who the consent applies to | |
decision | 1..1 | code | deny | permit | |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
status | ?!Σ | 1..1 | code | draft | active | inactive | not-done | entered-in-error | unknown Binding: ConsentState (required): Indicates the state of the consent. |
category | Σ | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Binding: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement. Required Pattern: At least the following |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
text | Σ | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages |
subject | Σ | 1..1 | Reference(Patient) | Who the consent applies to |
decision | ?!Σ | 1..1 | code | deny | permit Binding: ConsentProvisionType (required): Sets the base decision for Consent to be either permit or deny, with provisions assumed to be a negation of the previous level. |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Consent.status | required | ConsentState |
Consent.category | example | Pattern: LOINC code 89057-4 |
Consent.decision | required | ConsentProvisionType |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Consent | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Consent | 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 | Consent | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Consent | 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 |
---|---|---|---|---|
Consent | 0..* | Consent | A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time | |
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: AllLanguages (required): IETF language tag for a human language | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Additional content defined by implementations | |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Identifier for this record (external references) |
status | ?!Σ | 1..1 | code | draft | active | inactive | not-done | entered-in-error | unknown Binding: ConsentState (required): Indicates the state of the consent. |
category | Σ | 0..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Binding: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement. Required Pattern: At least the following |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
coding | 1..* | Coding | Code defined by a terminology system Fixed Value: (complex) | |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations | |
system | 1..1 | uri | Identity of the terminology system Fixed Value: http://loinc.org | |
version | 0..1 | string | Version of the system - if relevant | |
code | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 89057-4 | |
display | 0..1 | string | Representation defined by the system | |
userSelected | 0..1 | boolean | If this coding was chosen directly by the user | |
text | 0..1 | string | Plain text representation of the concept | |
id | 0..1 | id | Unique id for inter-element referencing | |
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
coding | Σ | 0..* | Coding | Code defined by a terminology system |
text | Σ | 0..1 | string | Plain text representation of the concept Required Pattern: Patient consent for SMS messages |
subject | Σ | 1..1 | Reference(Patient) | Who the consent applies to |
date | Σ | 0..1 | date | Fully executed date of the consent |
period | Σ | 0..1 | Period | Effective period for this Consent |
grantor | Σ | 0..* | Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Who is granting rights according to the policy and rules |
grantee | Σ | 0..* | Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Who is agreeing to the policy and rules |
manager | 0..* | Reference(HealthcareService | Organization | Patient | Practitioner) | Consent workflow management | |
controller | 0..* | Reference(HealthcareService | Organization | Patient | Practitioner) | Consent Enforcer | |
sourceAttachment | 0..* | Attachment | Source from which this consent is taken | |
sourceReference | 0..* | Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) | Source from which this consent is taken | |
regulatoryBasis | 0..* | CodeableConcept | Regulations establishing base Consent Binding: ConsentPolicyRuleCodes (example): Regulatory policy examples | |
policyBasis | 0..1 | BackboneElement | Computable version of the backing policy | |
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 |
reference | 0..1 | Reference(Resource) | Reference backing policy resource | |
url | 0..1 | url | URL to a computable backing policy | |
policyText | 0..* | Reference(DocumentReference) | Human Readable Policy | |
verification | Σ | 0..* | BackboneElement | Consent Verified by patient or family |
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 |
verified | Σ | 1..1 | boolean | Has been verified |
verificationType | 0..1 | CodeableConcept | Business case of verification Binding: ConsentVerificationCodes (example): Types of Verification/Validation. | |
verifiedBy | 0..1 | Reference(Organization | Practitioner | PractitionerRole) | Person conducting verification | |
verifiedWith | 0..1 | Reference(Patient | RelatedPerson) | Person who verified | |
verificationDate | 0..* | dateTime | When consent verified | |
decision | ?!Σ | 1..1 | code | deny | permit Binding: ConsentProvisionType (required): Sets the base decision for Consent to be either permit or deny, with provisions assumed to be a negation of the previous level. |
provision | Σ | 0..* | BackboneElement | Constraints to the base Consent.policyRule/Consent.policy |
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 |
period | Σ | 0..1 | Period | Timeframe for this provision |
actor | 0..* | BackboneElement | Who|what controlled by this provision (or group, by role) | |
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 |
role | 0..1 | CodeableConcept | How the actor is involved Binding: ParticipationRoleType (extensible): How an actor is involved in the consent considerations. | |
reference | 0..1 | Reference(Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) | Resource for the actor (or group, by role) | |
action | Σ | 0..* | CodeableConcept | Actions controlled by this provision Binding: ConsentActionCodes (example): Detailed codes for the consent action. |
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System. |
purpose | Σ | 0..* | Coding | Context of activities covered by this provision Binding: PurposeOfUse (extensible): What purposes of use are controlled by this exception. If more than one label is specified, operations must have all the specified labels. |
documentType | Σ | 0..* | Coding | e.g. Resource Type, Profile, CDA, etc Binding: ConsentContentClass (preferred): The document type a consent provision covers. |
resourceType | Σ | 0..* | Coding | e.g. Resource Type, Profile, etc Binding: ResourceType (extensible): The resource types a consent provision covers. |
code | Σ | 0..* | CodeableConcept | e.g. LOINC or SNOMED CT code, etc. in the content Binding: ConsentContentCodes (example): If this code is found in an instance, then the exception applies. |
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this provision |
data | Σ | 0..* | BackboneElement | Data controlled by this provision |
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 |
meaning | Σ | 1..1 | code | instance | related | dependents | authoredby Binding: ConsentDataMeaning (required): How a resource reference is interpreted when testing consent restrictions. |
reference | Σ | 1..1 | Reference(Resource) | The actual data reference |
expression | 0..1 | Expression | A computable expression of the consent | |
provision | 0..* | See provision (Consent) | Nested Exception Provisions | |
Documentation for this format |
Path | Conformance | ValueSet / Code |
Consent.language | required | AllLanguages |
Consent.status | required | ConsentState |
Consent.category | example | Pattern: LOINC code 89057-4 |
Consent.regulatoryBasis | example | ConsentPolicyRuleCodes |
Consent.verification.verificationType | example | ConsentVerificationCodes |
Consent.decision | required | ConsentProvisionType |
Consent.provision.actor.role | extensible | ParticipationRoleType |
Consent.provision.action | example | ConsentActionCodes |
Consent.provision.securityLabel | example | SecurityLabelExamples |
Consent.provision.purpose | extensible | PurposeOfUse |
Consent.provision.documentType | preferred | ConsentContentClass |
Consent.provision.resourceType | extensible | ResourceType |
Consent.provision.code | example | ConsentContentCodes |
Consent.provision.data.meaning | required | ConsentDataMeaning |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Consent | 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Consent | 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 | Consent | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Consent | 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 Consent
Other representations of profile: CSV, Excel, Schematron