RIVO-Noord Zorgviewer Implementation Guide
1.21.0 - CI build

RIVO-Noord Zorgviewer Implementation Guide, published by RIVO-NN HL7NL. This guide is not an authorized publication; it is the continuous build for version 1.21.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/RIVO-Noord/zorgviewer-ig/ and changes regularly. See the Directory of published versions

## Resource Profile: AdvanceDirective

Official URL: http://fhir.hl7.nl/zorgviewer/StructureDefinition/AdvanceDirective | Version: 1.21.0
Active as of 2025-10-28 | Computable Name: AdvanceDirective

Wilsverklaring (Consent)

> Dit Profiel is het resultaat van de vergelijking tussen de zib2017 FHIR Profiel en de implementaties in Epic, Chipsoft, Topicus en Nexus. De elementen die in ieder geval in alle output beschikbaar zullen zijn. Voornamelijk bedoeld voor houvast van een client en voor validatie van output.

### Zorginformatiebouwsteen

ZIB Wilsverklaring

### View Definition

ViewDefinition voor Wilsbeschikkingen

### UI Wireframe

Wilsbeschikkingen

>< | Bron | Datum | Type | Toelichting
--- | --- | --- | --- | ---
+ | Chipsoft-Bundle | 28-6-2019 | Patiëntinformatie - Wilsbeschikkingen |
+ | Chipsoft | 9-4-2018 | Patiëntinformatie - Wilsbeschikkingen | Niet-reanimerenpenning
+ | Epic | 30-6-2022 | Niet reanimeren verklaring | Wilsverklaring
+ | Nexus | 9-4-2018 | volmacht | Niet-reanimerenpenning
+ | Epic | 12-10-2021 | Niet reanimeren verklaring | Definitieve versie handreiking rechtmatigheidscontroles MSZ 2014 versie 2.0.pdf

### Kolom Definities

Kolom label | FHIR Path Expression | FHIR Type | Zib element | Toelichting of regels
Bron | `meta.extension('http://hl7.org/fhir/4.0/StructureDefinition/extension-Meta.source').valueUri` | `string` | nvt | Lookup adhv uri (AGB-Z of OID) `<adressering-base>/Organization?identifier=<.meta.tag.code>` en gebruik dan `Organization.name`
Datum | `dateTime` | `dateTime` | WilsverklaringDatum | Kunnen vage datums zijn
Type | `category[1].text | category[1].coding.display` | `string` | WilsverklaringType |
Toelichting | `extension('http://nictiz.nl/fhir/StructureDefinition/Comment').valueString` | `string` | Toelichting |
UITKLAPVELD
+Document | `sourceAttachement.data` | `base64Binary` | WilsverklaringDocument |

### Request

1. Opvragen (search) wilsbeschikkingen

   `GET <ontsluiten-bronsysteem-base>/Consent?patient=<fhir_patient_id>&category=http://snomed.info/sct|11341000146107`

### Bronsysteem herkennen

De Zorgviewer-backend of Ontsluiten bronsysteem MOET na bevragen van het bronsysteem aan elk resultaat resource een meta-tag toevoegen met de AGB, OID of URA identifier van de zorgaanbieder (zie Organization voor voorbeelden). Dit wordt vervolgens gebruikt in de "Bron" kolom in de Zorgviewer-frontend. N.B. We gebruiken hier een pre-adopt van de FHIR R4 Meta.source.

Toevoegen aan elke response, dus per resource (bij een read) of per Bundle (bij een search):

    "meta": {
        "extension": [ {
            "url": "http://hl7.org/fhir/4.0/StructureDefinition/extension-Meta.source",
            "valueUri": "urn:oid:2.16.840.1.113883.2.4.3.8"
        } ]
    }

Alternatief: Elke entry van een search response Bundle bevat een referentie naar de bijbehorende Patient (`<resource>.subject|patient`). Elke patient heeft een `Patient.managingOrganization` en in de gerefereerde `Organization.identifier` staat vervolgens o.a. de OID van het bronsysyeem. Of je gebruikt de identifiers om een volledige Organization op te zoeken in het adresboek en zie inhoud hier.

Usages:

- CapabilityStatements using this Profile: Ontsluiten Bronsysteem
- This Profile is not used by any profiles in this Implementation Guide

You can also check for usages in the FHIR IG Statistics

Changes since version 1.20.0:

- New Content

### Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent | C | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill Constraints: ppc-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:disorder |  | 0..* | Reference(HCIM Problem(3.0.7)) | Disorder URL: http://nictiz.nl/fhir/StructureDefinition/zib-AdvanceDirective-Disorder Constraints: ext-1
extension:comment | S | 0..1 | string | Comment URL: http://nictiz.nl/fhir/StructureDefinition/Comment Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | draft | proposed | active | rejected | inactive | entered-in-error Binding: ConsentState (required): Indicates the state of the consent
Slices for category | Σ | 2..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Slice: Unordered, Open by value:$this Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement
category:livingWill | Σ | 1..1 | CodeableConcept | Living will and advance directive record Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 11341000146107
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
category:typeOfLivingWill | S Σ | 1..1 | CodeableConcept | TypeOfLivingWill Binding: WilsverklaringTypeCodelijst (required): List of the different types of living wills.
coding | Σ | 1..* | Coding | Code defined by a terminology system
system | Σ | 1..1 | uri | Identity of the terminology system
code | Σ | 1..1 | code | Symbol in syntax defined by the system
patient | Σ | 1..1 | Reference(nl-core-patient(2.2.5)) | Who the consent applies to
dateTime | S Σ | 1..1 | dateTime | LivingWillDate
consentingParty | Σ | 0..1 | Reference(nl-core-relatedperson(2.0.5)) | Representative
Slices for source[x] | Σ | 0..1 | Attachment | LivingWillDocument Slice: Unordered, Closed by type:$this
source[x]:sourceAttachment | S Σ | 0..1 | Attachment | LivingWillDocument
data | S | 0..1 | base64Binary | Data inline, base64ed
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Consent.status | Base | required | ConsentState | 📦3.0.2 | FHIR Std.
Consent.category | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:livingWill | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:typeOfLivingWill | Base | required | WilsverklaringTypeCodelijst | 📦2017-12-31T00:00:00 | nictiz.fhir.nl.stu3.zib2017 v2.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
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 | `contained.where(('#'+id in %resource.descendants().reference).not()).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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Consent.extension:disorder, Consent.extension:comment | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
ppc-1 | error | Consent | Either a Policy or PolicyRule | `policy.exists() or policyRule.exists()`

This structure is derived from Zib AdvanceDirective

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent |  | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill
Slices for extension |  |  |  | Content/Rules for all slices
extension:comment | S | 0..1 | Comment | Comment
Slices for category |  |  |  | Content/Rules for all slices
category:typeOfLivingWill | S | 1..1 | CodeableConcept | TypeOfLivingWill
dateTime | S | 1..1 | dateTime | LivingWillDate
sourceAttachment | S | 0..1 | Attachment | LivingWillDocument
data | S | 0..1 | base64Binary | Data inline, base64ed
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent | C | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill Constraints: ppc-1
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: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:disorder |  | 0..* | Reference(HCIM Problem(3.0.7)) | Disorder URL: http://nictiz.nl/fhir/StructureDefinition/zib-AdvanceDirective-Disorder Constraints: ext-1
extension:comment | S | 0..1 | string | Comment URL: http://nictiz.nl/fhir/StructureDefinition/Comment Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..1 | Identifier | Identifier for this record (external references) Example General: {"system":"urn:ietf:rfc:3986","value":"Local eCMS identifier"}
status | ?!Σ | 1..1 | code | draft | proposed | active | rejected | inactive | entered-in-error Binding: ConsentState (required): Indicates the state of the consent
Slices for category | Σ | 2..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Slice: Unordered, Open by value:$this Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement
category:livingWill | Σ | 1..1 | CodeableConcept | Living will and advance directive record Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 11341000146107
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 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system
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
category:typeOfLivingWill | S Σ | 1..1 | CodeableConcept | TypeOfLivingWill Binding: WilsverklaringTypeCodelijst (required): List of the different types of living wills.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 1..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 1..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 1..1 | code | Symbol in syntax defined by the system
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
patient | Σ | 1..1 | Reference(nl-core-patient(2.2.5)) | Who the consent applies to
period | Σ | 0..1 | Period | Period that this consent applies
dateTime | S Σ | 1..1 | dateTime | LivingWillDate
consentingParty | Σ | 0..1 | Reference(nl-core-relatedperson(2.0.5)) | Representative
actor | Σ | 0..* | BackboneElement | Who|what controlled by this consent (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
role |  | 1..1 | CodeableConcept | How the actor is involved Binding: SecurityRoleType (extensible): How an actor is involved in the consent considerations
reference |  | 1..1 | Reference(Device | Group | CareTeam | nl-core-organization(2.0.6) | nl-core-patient(2.2.5) | nl-core-practitioner(2.0.7) | nl-core-relatedperson(2.0.5)) | Resource for the actor (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole(2.0.7)) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
action | Σ | 0..* | CodeableConcept | Actions controlled by this consent Binding: Consent Action Codes (example): Detailed codes for the consent action.
organization | Σ | 0..* | Reference(nl-core-organization(2.0.6)) | Custodian of the consent
Slices for source[x] | Σ | 0..1 | Attachment | LivingWillDocument Slice: Unordered, Closed by type:$this
source[x]:sourceAttachment | S Σ | 0..1 | Attachment | LivingWillDocument
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
contentType | Σ | 0..1 | code | Mime type of the content, with charset etc. Binding: (required): The mime type of an attachment. Any valid mime type is allowed. Example General: text/plain; charset=UTF-8, image/png
language | Σ | 0..1 | code | Human language of the content (BCP-47) Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
Example General: en-AU
data | S | 0..1 | base64Binary | Data inline, base64ed
url | Σ | 0..1 | uri | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
size | Σ | 0..1 | unsignedInt | Number of bytes of content (if url provided)
hash | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed)
title | Σ | 0..1 | string | Label to display in place of the data Example General: Official Corporate Logo
creation | Σ | 0..1 | dateTime | Date attachment was first created
policy |  | 0..* | BackboneElement | Policies covered by this consent
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
authority | C | 0..1 | uri | Enforcement source for policy
uri | C | 0..1 | uri | Specific policy covered by this consent Example General Dutch Law: http://wetten.overheid.nl/
policyRule | Σ C | 0..1 | uri | Policy that this consents to
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
purpose | Σ | 0..* | Coding | Context of activities for which the agreement is made 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
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this consent
data | Σ | 0..* | BackboneElement | Data controlled by this consent
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
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
except | Σ | 0..* | BackboneElement | Additional rule - addition or removal of permissions
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type | Σ | 1..1 | code | deny | permit Binding: ConsentExceptType (required): How an exception statement is applied, such as adding additional consent or removing consent
period | Σ | 0..1 | Period | Timeframe for this exception
actor | Σ | 0..* | BackboneElement | Who|what controlled by this exception (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
role |  | 1..1 | CodeableConcept | How the actor is involved Binding: SecurityRoleType (extensible): How an actor is involved in the consent considerations
reference |  | 1..1 | Reference(Device | Group | CareTeam | nl-core-organization(2.0.6) | nl-core-patient(2.2.5) | nl-core-practitioner(2.0.7) | nl-core-relatedperson(2.0.5)) | Resource for the actor (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole(2.0.7)) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
action | Σ | 0..* | CodeableConcept | Actions controlled by this exception Binding: Consent Action Codes (example): Detailed codes for the consent action.
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
purpose | Σ | 0..* | Coding | Context of activities covered by this exception 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
class | Σ | 0..* | Coding | e.g. Resource Type, Profile, or CDA etc Binding: Consent Content Class (extensible): The class (type) of information a consent rule covers
code | Σ | 0..* | Coding | e.g. LOINC or SNOMED CT code, etc in the content Binding: Consent Content Codes (example): If this code is found in an instance, then the exception applies
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this exception
data | Σ | 0..* | BackboneElement | Data controlled by this exception
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Consent.language | Base | extensible | Common Languages | 📦3.0.2 | FHIR Std.
Consent.status | Base | required | ConsentState | 📦3.0.2 | FHIR Std.
Consent.category | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:livingWill | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:typeOfLivingWill | Base | required | WilsverklaringTypeCodelijst | 📦2017-12-31T00:00:00 | nictiz.fhir.nl.stu3.zib2017 v2.0
Consent.actor.role | Base | extensible | SecurityRoleType | 📦1.8.0 | FHIR Std.
Consent.action | Base | example | Consent Action Codes | 📦3.0.2 | FHIR Std.
Consent.source[x]:sourceAttachment.​contentType | Base | required | ​ null (missing link) | 📦 | unknown?
Consent.source[x]:sourceAttachment.​language | Base | extensible | Common Languages | 📍3.0.2 | FHIR Std.
Consent.securityLabel | Base | extensible | All Security Labels | 📦3.0.2 | FHIR Std.
Consent.purpose | Base | extensible | PurposeOfUse | 📦2014-03-26 | FHIR Std.
Consent.data.meaning | Base | required | ConsentDataMeaning | 📦3.0.2 | FHIR Std.
Consent.except.type | Base | required | ConsentExceptType | 📦3.0.2 | FHIR Std.
Consent.except.actor.​role | Base | extensible | SecurityRoleType | 📦1.8.0 | FHIR Std.
Consent.except.action | Base | example | Consent Action Codes | 📦3.0.2 | FHIR Std.
Consent.except.securityLabel | Base | extensible | All Security Labels | 📦3.0.2 | FHIR Std.
Consent.except.purpose | Base | extensible | PurposeOfUse | 📦2014-03-26 | FHIR Std.
Consent.except.class | Base | extensible | Consent Content Class | 📦3.0.2 | FHIR Std.
Consent.except.code | Base | example | Consent Content Codes | 📦3.0.2 | FHIR Std.
Consent.except.data.​meaning | Base | required | ConsentDataMeaning | 📦3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
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 | `contained.where(('#'+id in %resource.descendants().reference).not()).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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Consent.extension:disorder, Consent.extension:comment, Consent.actor.reference.extension:practitionerRole, Consent.except.actor.reference.extension:practitionerRole | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
ppc-1 | error | Consent | Either a Policy or PolicyRule | `policy.exists() or policyRule.exists()`

This structure is derived from Zib AdvanceDirective

Summary

Must-Support: 5 elements

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent | C | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill Constraints: ppc-1
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
Slices for extension |  |  |  | Content/Rules for all slices
extension:disorder |  | 0..* | Reference(HCIM Problem(3.0.7)) | Disorder URL: http://nictiz.nl/fhir/StructureDefinition/zib-AdvanceDirective-Disorder Constraints: ext-1
extension:comment | S | 0..1 | string | Comment URL: http://nictiz.nl/fhir/StructureDefinition/Comment Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
status | ?!Σ | 1..1 | code | draft | proposed | active | rejected | inactive | entered-in-error Binding: ConsentState (required): Indicates the state of the consent
Slices for category | Σ | 2..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Slice: Unordered, Open by value:$this Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement
category:livingWill | Σ | 1..1 | CodeableConcept | Living will and advance directive record Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 11341000146107
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
category:typeOfLivingWill | S Σ | 1..1 | CodeableConcept | TypeOfLivingWill Binding: WilsverklaringTypeCodelijst (required): List of the different types of living wills.
coding | Σ | 1..* | Coding | Code defined by a terminology system
system | Σ | 1..1 | uri | Identity of the terminology system
code | Σ | 1..1 | code | Symbol in syntax defined by the system
patient | Σ | 1..1 | Reference(nl-core-patient(2.2.5)) | Who the consent applies to
dateTime | S Σ | 1..1 | dateTime | LivingWillDate
consentingParty | Σ | 0..1 | Reference(nl-core-relatedperson(2.0.5)) | Representative
Slices for source[x] | Σ | 0..1 | Attachment | LivingWillDocument Slice: Unordered, Closed by type:$this
source[x]:sourceAttachment | S Σ | 0..1 | Attachment | LivingWillDocument
data | S | 0..1 | base64Binary | Data inline, base64ed
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Consent.status | Base | required | ConsentState | 📦3.0.2 | FHIR Std.
Consent.category | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:livingWill | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:typeOfLivingWill | Base | required | WilsverklaringTypeCodelijst | 📦2017-12-31T00:00:00 | nictiz.fhir.nl.stu3.zib2017 v2.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
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 | `contained.where(('#'+id in %resource.descendants().reference).not()).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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Consent.extension:disorder, Consent.extension:comment | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
ppc-1 | error | Consent | Either a Policy or PolicyRule | `policy.exists() or policyRule.exists()`

Differential View

This structure is derived from Zib AdvanceDirective

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent |  | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill
Slices for extension |  |  |  | Content/Rules for all slices
extension:comment | S | 0..1 | Comment | Comment
Slices for category |  |  |  | Content/Rules for all slices
category:typeOfLivingWill | S | 1..1 | CodeableConcept | TypeOfLivingWill
dateTime | S | 1..1 | dateTime | LivingWillDate
sourceAttachment | S | 0..1 | Attachment | LivingWillDocument
data | S | 0..1 | base64Binary | Data inline, base64ed
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
Consent | C | 0..* | Zib AdvanceDirective(2.1.5) | LivingWill Constraints: ppc-1
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: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:disorder |  | 0..* | Reference(HCIM Problem(3.0.7)) | Disorder URL: http://nictiz.nl/fhir/StructureDefinition/zib-AdvanceDirective-Disorder Constraints: ext-1
extension:comment | S | 0..1 | string | Comment URL: http://nictiz.nl/fhir/StructureDefinition/Comment Constraints: ext-1
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | Σ | 0..1 | Identifier | Identifier for this record (external references) Example General: {"system":"urn:ietf:rfc:3986","value":"Local eCMS identifier"}
status | ?!Σ | 1..1 | code | draft | proposed | active | rejected | inactive | entered-in-error Binding: ConsentState (required): Indicates the state of the consent
Slices for category | Σ | 2..* | CodeableConcept | Classification of the consent statement - for indexing/retrieval Slice: Unordered, Open by value:$this Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement
category:livingWill | Σ | 1..1 | CodeableConcept | Living will and advance directive record Binding: Consent Category Codes (example): A classification of the type of consents found in a consent statement Required Pattern: At least the following
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
coding |  | 1..* | Coding | Code defined by a terminology system Fixed Value: (Complex)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
system |  | 1..1 | uri | Identity of the terminology system Fixed Value: http://snomed.info/sct
version |  | 0..1 | string | Version of the system - if relevant
code |  | 1..1 | code | Symbol in syntax defined by the system Fixed Value: 11341000146107
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 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 0..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 0..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 0..1 | code | Symbol in syntax defined by the system
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
category:typeOfLivingWill | S Σ | 1..1 | CodeableConcept | TypeOfLivingWill Binding: WilsverklaringTypeCodelijst (required): List of the different types of living wills.
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
coding | Σ | 1..* | Coding | Code defined by a terminology system
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
system | Σ | 1..1 | uri | Identity of the terminology system
version | Σ | 0..1 | string | Version of the system - if relevant
code | Σ | 1..1 | code | Symbol in syntax defined by the system
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
patient | Σ | 1..1 | Reference(nl-core-patient(2.2.5)) | Who the consent applies to
period | Σ | 0..1 | Period | Period that this consent applies
dateTime | S Σ | 1..1 | dateTime | LivingWillDate
consentingParty | Σ | 0..1 | Reference(nl-core-relatedperson(2.0.5)) | Representative
actor | Σ | 0..* | BackboneElement | Who|what controlled by this consent (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
role |  | 1..1 | CodeableConcept | How the actor is involved Binding: SecurityRoleType (extensible): How an actor is involved in the consent considerations
reference |  | 1..1 | Reference(Device | Group | CareTeam | nl-core-organization(2.0.6) | nl-core-patient(2.2.5) | nl-core-practitioner(2.0.7) | nl-core-relatedperson(2.0.5)) | Resource for the actor (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole(2.0.7)) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
action | Σ | 0..* | CodeableConcept | Actions controlled by this consent Binding: Consent Action Codes (example): Detailed codes for the consent action.
organization | Σ | 0..* | Reference(nl-core-organization(2.0.6)) | Custodian of the consent
Slices for source[x] | Σ | 0..1 | Attachment | LivingWillDocument Slice: Unordered, Closed by type:$this
source[x]:sourceAttachment | S Σ | 0..1 | Attachment | LivingWillDocument
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
contentType | Σ | 0..1 | code | Mime type of the content, with charset etc. Binding: (required): The mime type of an attachment. Any valid mime type is allowed. Example General: text/plain; charset=UTF-8, image/png
language | Σ | 0..1 | code | Human language of the content (BCP-47) Binding: Common Languages (extensible): A human language.
Additional Bindings | Purpose
All Languages | Max Binding
Example General: en-AU
data | S | 0..1 | base64Binary | Data inline, base64ed
url | Σ | 0..1 | uri | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
size | Σ | 0..1 | unsignedInt | Number of bytes of content (if url provided)
hash | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed)
title | Σ | 0..1 | string | Label to display in place of the data Example General: Official Corporate Logo
creation | Σ | 0..1 | dateTime | Date attachment was first created
policy |  | 0..* | BackboneElement | Policies covered by this consent
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
authority | C | 0..1 | uri | Enforcement source for policy
uri | C | 0..1 | uri | Specific policy covered by this consent Example General Dutch Law: http://wetten.overheid.nl/
policyRule | Σ C | 0..1 | uri | Policy that this consents to
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
purpose | Σ | 0..* | Coding | Context of activities for which the agreement is made 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
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this consent
data | Σ | 0..* | BackboneElement | Data controlled by this consent
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
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
except | Σ | 0..* | BackboneElement | Additional rule - addition or removal of permissions
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
type | Σ | 1..1 | code | deny | permit Binding: ConsentExceptType (required): How an exception statement is applied, such as adding additional consent or removing consent
period | Σ | 0..1 | Period | Timeframe for this exception
actor | Σ | 0..* | BackboneElement | Who|what controlled by this exception (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
role |  | 1..1 | CodeableConcept | How the actor is involved Binding: SecurityRoleType (extensible): How an actor is involved in the consent considerations
reference |  | 1..1 | Reference(Device | Group | CareTeam | nl-core-organization(2.0.6) | nl-core-patient(2.2.5) | nl-core-practitioner(2.0.7) | nl-core-relatedperson(2.0.5)) | Resource for the actor (or group, by role)
id |  | 0..1 | string | xml:id (or equivalent in JSON)
Slices for extension |  | 0..* | Extension | Additional Content defined by implementations Slice: Unordered, Open by value:url
extension:practitionerRole |  | 0..1 | Reference(nl-core-practitionerrole(2.0.7)) | Optional Extensions Element URL: http://nictiz.nl/fhir/StructureDefinition/practitionerrole-reference Constraints: ext-1
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
action | Σ | 0..* | CodeableConcept | Actions controlled by this exception Binding: Consent Action Codes (example): Detailed codes for the consent action.
securityLabel | Σ | 0..* | Coding | Security Labels that define affected resources Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
purpose | Σ | 0..* | Coding | Context of activities covered by this exception 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
class | Σ | 0..* | Coding | e.g. Resource Type, Profile, or CDA etc Binding: Consent Content Class (extensible): The class (type) of information a consent rule covers
code | Σ | 0..* | Coding | e.g. LOINC or SNOMED CT code, etc in the content Binding: Consent Content Codes (example): If this code is found in an instance, then the exception applies
dataPeriod | Σ | 0..1 | Period | Timeframe for data controlled by this exception
data | Σ | 0..* | BackboneElement | Data controlled by this exception
id |  | 0..1 | string | xml:id (or equivalent in JSON)
extension |  | 0..* | Extension | Additional Content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored
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
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
Consent.language | Base | extensible | Common Languages | 📦3.0.2 | FHIR Std.
Consent.status | Base | required | ConsentState | 📦3.0.2 | FHIR Std.
Consent.category | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:livingWill | Base | example | Consent Category Codes | 📦3.0.2 | FHIR Std.
Consent.category:typeOfLivingWill | Base | required | WilsverklaringTypeCodelijst | 📦2017-12-31T00:00:00 | nictiz.fhir.nl.stu3.zib2017 v2.0
Consent.actor.role | Base | extensible | SecurityRoleType | 📦1.8.0 | FHIR Std.
Consent.action | Base | example | Consent Action Codes | 📦3.0.2 | FHIR Std.
Consent.source[x]:sourceAttachment.​contentType | Base | required | ​ null (missing link) | 📦 | unknown?
Consent.source[x]:sourceAttachment.​language | Base | extensible | Common Languages | 📍3.0.2 | FHIR Std.
Consent.securityLabel | Base | extensible | All Security Labels | 📦3.0.2 | FHIR Std.
Consent.purpose | Base | extensible | PurposeOfUse | 📦2014-03-26 | FHIR Std.
Consent.data.meaning | Base | required | ConsentDataMeaning | 📦3.0.2 | FHIR Std.
Consent.except.type | Base | required | ConsentExceptType | 📦3.0.2 | FHIR Std.
Consent.except.actor.​role | Base | extensible | SecurityRoleType | 📦1.8.0 | FHIR Std.
Consent.except.action | Base | example | Consent Action Codes | 📦3.0.2 | FHIR Std.
Consent.except.securityLabel | Base | extensible | All Security Labels | 📦3.0.2 | FHIR Std.
Consent.except.purpose | Base | extensible | PurposeOfUse | 📦2014-03-26 | FHIR Std.
Consent.except.class | Base | extensible | Consent Content Class | 📦3.0.2 | FHIR Std.
Consent.except.code | Base | example | Consent Content Codes | 📦3.0.2 | FHIR Std.
Consent.except.data.​meaning | Base | required | ConsentDataMeaning | 📦3.0.2 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-1 | error | Consent | If the resource is contained in another resource, it SHALL NOT contain any narrative | `contained.text.empty()`
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 | `contained.where(('#'+id in %resource.descendants().reference).not()).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()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() | (children().count() > id.count())`
ext-1 | error | Consent.extension:disorder, Consent.extension:comment, Consent.actor.reference.extension:practitionerRole, Consent.except.actor.reference.extension:practitionerRole | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`
ppc-1 | error | Consent | Either a Policy or PolicyRule | `policy.exists() or policyRule.exists()`

This structure is derived from Zib AdvanceDirective

Summary

Must-Support: 5 elements

Other representations of profile: CSV, Excel, Schematron