This
page
is
part
of
the
FHIR
Specification
v6.0.0-ballot3:
Release
6
Ballot
(3rd
Draft)
(see
Ballot
Notes
).
The
current
version
is
5.0.0
.
For
a
full
list
Continuous
Integration
Build
of
available
versions,
see
FHIR
(will
be
incorrect/inconsistent
at
times).
See
the
Directory
of
published
versions
Responsible
Owner:
Community
Based
Collaborative
Care
Work
Group
|
|
Security Category : Patient | Compartments : Group , Patient |
A record of a healthcare consumer’s choices or choices made on their behalf by a third party, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time.
The
purpose
of
this
Resource
is
to
be
used
to
express
a
Consent
regarding
Healthcare.
There
are
three
anticipated
uses
for
the
Consent
Resource,
all
of
which
are
written
or
verbal
agreements
by
a
healthcare
consumer
grantor
or
a
personal
representative,
made
to
an
authorized
entity
grantee
concerning
authorized
or
restricted
actions
with
any
limitations
on
purpose
of
use,
and
handling
instructions
to
which
the
authorized
entity
must
comply:
This resource is scoped to cover all three uses and specified via the Category element, but at this time, only the privacy use case is fully modeled, others are being used but no formal modelling exists. Other use cases are possible through the use of the use of other category codes. The scope of the resource may change when the other possible scopes are investigated, tested, or profiled. It is possible to have multiply scoped consent in one Consent resource (e.g., Privacy and Research, or Research and Treatment, etc.) by having multiple provision trees paired.
Usage
of
the
Provenance
resource
may
be
the
best
way
to
manage
the
tracking
of
the
changes
to
Consent.
In
addition,
the
DocumentReference
may
be
used
as
an
attachment
to
show
the
stages
of
consent
ceremony
with
additional
or
updated
document(s)
attached
at
each
stage.
Contract
may
also
be
used
in
this
fashion
where
as
signatures
are
gathered
or
conditions
applied,
the
Contract
resource
can
be
updated
and
attached
to
the
Consent.
In
its
simplest
form,
the
Consent
resource
provides
the
means
to
record
the
content
and
the
metadata
of
a
consent
(either
implicit
consent
as
an
event
or
an
explicit
consent
document).
At
this
level
of
implementation,
basic
metadata
about
the
Consent
(e.g.,
status,
data
and
time,
patient,
and
organization)
is
recorded
in
the
corresponding
attributes
of
the
Consent
resource
to
enable
consent
discovery
by
indexing,
searching,
and
retrieval
of
consents
based
on
this
metadata.
The
sourceAttachment
and/or
sourceReference
elements
can
be
used
to
record
the
original
consent
document
either
in
the
form
of
a
pointer
to
another
resource
or
in
the
form
of
an
attachment.
In a more advanced usage of the Consent resource, in addition to recording the metadata and potentially the original content, the privacy preferences stated in the consent are encoded directly in the form of machine-readable rules. These rules can be processed by a decision engine to adjudicate whether the consent permits a specific given activity (e.g., sharing the patient information with a requester or enrolling the patient in a research project). In other words, the Consent resource is used directly to record rules that can be used by a rules engine to understand and enforce the preferences expressed by the consenter as they were intended.
The current version of the Consent resource provides two different mechanisms for recording computable rules:
Consent management - particularly privacy consent - is complicated by the fact that consent to share is often itself necessary to protect. The need to protect the privacy of the privacy statement itself competes with the execution of the consent statement. For this reason, it is common to deal with 'consent statements' that are only partial representations of the full consent statement that the patient provided.
For this reason, the consent resource contains two elements that refer back to the source: an inline attachment and a direct reference to content from which this Consent Statement was derived. That reference can be one of several things:
,
which
incorporated
the
IHE
Basic
Patient
Privacy
Consents
(BPPC)
),
either
directly,
or
in
a
reference
The consent statements represent a chain that refers back to the original source consent directive. Applications may be able to follow the chain back to the source but should not generally assume that they are authorized to do this.
Consent Directives are executed by verbal acknowledgement or by being signed - either on paper, or digitally. Consent Signatures will be found in the Provenance resource. Implementation Guides will generally make rules about what signatures are required, and how they are to be shared and used.
The Consent resource is structured with a base policy (represented as Consent.decision) which is either permit or deny, followed by a listing of exceptions to that policy (represented as Consent.provision(s)). The exceptions can be additional positive or negative exceptions upon the base policy. The set of exceptions include a list of data objects, list of authors, list of recipients, list of Organizations, list of purposeOfUse, and Date Range.
The enforcement of the Privacy Consent Directive is not included but is expected that enforcement can be done using a mix of the various Access Control enforcement methodologies (e.g. OAuth, UMA, XACML). This enforcement includes the details of the enforcement meaning of the elements of the Privacy Consent Directive, such as the rules in place when there is an opt-in consent would be specific about which organizational roles have access to what kinds of resources (e.g. RBAC, ABAC). The specification of these details is not in scope for the Consent resource.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
|
DomainResource |
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
+ Rule: Either a Permission (.provisionReference) or a .provision tree may exist but not both Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
Identifier
for
this
record
(external
references)
|
|
?! Σ | 1..1 | code |
draft
|
active
|
inactive
|
not-done
|
entered-in-error
|
unknown
Binding: Consent State ( Required ) |
|
Σ | 0..* | CodeableConcept |
Classification
of
the
consent
statement
-
for
indexing/retrieval
Binding: Consent Category Codes ( Example ) |
|
Σ | 0..1 | Reference ( Patient | Practitioner | ResearchSubject | Group ) |
Who
the
consent
applies
to
|
|
Σ | 0..1 | date |
Fully
executed
date
of
the
consent
|
|
Σ | 0..1 | Period |
Effective
period
for
this
Consent
|
|
Σ | 0..* | Reference ( CareTeam | Group | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Who
is
granting
rights
according
to
the
policy
and
rules
|
|
Σ | 0..* | Reference ( CareTeam | Group | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Who
is
agreeing
to
the
policy
and
rules
|
|
0..* | Reference ( HealthcareService | Organization | Patient | Practitioner ) |
Consent
workflow
management
|
|
|
0..* | Reference ( HealthcareService | Organization | Patient | Practitioner ) |
Consent
Enforcer
|
|
|
0..* | Attachment |
Source
from
which
this
consent
is
taken
|
|
|
0..* | Reference ( Consent | DocumentReference | Contract | QuestionnaireResponse ) |
Source
from
which
this
consent
is
taken
|
|
|
0..* | CodeableConcept |
Regulations
establishing
base
Consent
Binding: Consent PolicyRule Codes ( Example ) |
|
|
0..1 | BackboneElement |
Computable
version
of
the
backing
policy
|
|
|
0..1 | Reference ( Any ) |
Reference
backing
policy
resource
|
|
|
0..1 | uri |
URI
to
a
computable
backing
policy
|
|
|
0..* | Reference ( DocumentReference ) |
Human
Readable
Policy
|
|
|
Σ | 0..* | BackboneElement |
Consent
Verified
by
patient
or
family
|
|
Σ | 1..1 | boolean |
Has
been
verified
|
|
0..1 | CodeableConcept |
Business
case
of
verification
Binding: Consent Vefication Codes ( Example ) |
|
|
0..1 | Reference ( Organization | Practitioner | PractitionerRole ) |
Person
conducting
verification
|
|
|
0..1 | Reference ( Patient | RelatedPerson | Group ) |
Person
who
verified
|
|
|
0..* | dateTime |
When
consent
verified
|
|
|
?! Σ | 0..1 | code |
deny
|
permit
Binding: Consent Provision Type ( Required ) |
|
0..* | Reference ( Permission ) |
Permission
Resource
for
provisions
|
|
|
Σ | 0..* | BackboneElement |
Constraints
to
the
base
Consent.policyRule/Consent.policy
|
|
Σ | 0..1 | Period |
Timeframe
for
this
provision
|
|
0..* | BackboneElement |
Who|what
controlled
by
this
provision
(or
group,
by
role)
|
|
|
0..1 | CodeableConcept |
How
the
actor
is
involved
Binding: Participation Role Type ( Extensible ) |
|
|
0..1 | Reference ( Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Resource
for
the
actor
(or
group,
by
role)
|
|
|
Σ | 0..* | CodeableConcept |
Actions
controlled
by
this
provision
Binding: Consent Action Codes ( Example ) |
|
Σ | 0..* | Coding |
Security
Labels
that
define
affected
resources
Binding: Example set of Security Labels ( Example ) |
|
Σ | 0..* | Coding |
Context
of
activities
covered
by
this
provision
Binding: PurposeOfUse
(
Extensible
)
|
|
Σ | 0..* | Coding |
e.g.
Resource
Type,
Profile,
CDA,
etc
Binding: Consent Content Class ( Preferred ) |
|
Σ | 0..* | Coding |
e.g.
Resource
Type,
Profile,
etc
Binding: Resource Types ( Extensible ) |
|
Σ | 0..* | CodeableConcept |
e.g.
LOINC
or
SNOMED
CT
code,
etc.
in
the
content
Binding: Consent Content Codes ( Example ) |
|
Σ | 0..1 | Period |
Timeframe
for
data
controlled
by
this
provision
|
|
Σ | 0..* | BackboneElement |
Data
controlled
by
this
provision
|
|
Σ | 1..1 | code |
instance
|
related
|
dependents
|
authoredby
Binding: Consent Data Meaning ( Required ) |
|
Σ | 1..1 | Reference ( Any ) |
The
actual
data
reference
|
|
0..1 | Expression |
A
computable
expression
of
the
consent
|
|
|
0..* | see provision |
Nested
Exception
Provisions
|
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
UML Diagram ( Legend )
XML Template
<Consent xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier for this record (external references) --></identifier> <status value="[code]"/><!-- 1..1 draft | active | inactive | not-done | entered-in-error | unknown -->
<</category><category><!-- 0..* CodeableConcept Classification of the consent statement - for indexing/retrieval --></category> <subject><!-- 0..1 Reference(Group|Patient|Practitioner|ResearchSubject) Who the consent applies to --></subject> <date value="[date]"/><!-- 0..1 Fully executed date of the consent --> <period><!-- 0..1 Period Effective period for this Consent --></period> <grantor><!-- 0..* Reference(CareTeam|Group|HealthcareService|Organization| Patient|Practitioner|PractitionerRole|RelatedPerson) Who is granting rights according to the policy and rules --></grantor> <grantee><!-- 0..* Reference(CareTeam|Group|HealthcareService|Organization| Patient|Practitioner|PractitionerRole|RelatedPerson) Who is agreeing to the policy and rules --></grantee> <manager><!-- 0..* Reference(HealthcareService|Organization|Patient|Practitioner) Consent workflow management --></manager> <controller><!-- 0..* Reference(HealthcareService|Organization|Patient| Practitioner) Consent Enforcer --></controller> <sourceAttachment><!-- 0..* Attachment Source from which this consent is taken --></sourceAttachment> <sourceReference><!-- 0..* Reference(Consent|Contract|DocumentReference| QuestionnaireResponse) Source from which this consent is taken --></sourceReference> <regulatoryBasis><!-- 0..* CodeableConcept Regulations establishing base Consent --></regulatoryBasis> <policyBasis> <!-- 0..1 Computable version of the backing policy --> <reference><!-- 0..1 Reference(Any) Reference backing policy resource --></reference> <uri value="[uri]"/><!-- 0..1 URI to a computable backing policy --> </policyBasis> <policyText><!-- 0..* Reference(DocumentReference) Human Readable Policy --></policyText> <verification> <!-- 0..* Consent Verified by patient or family --> <verified value="[boolean]"/><!-- 1..1 Has been verified --><</verificationType><type><!-- 0..1 CodeableConcept Business case of verification --></type> <verifiedBy><!-- 0..1 Reference(Organization|Practitioner|PractitionerRole) Person conducting verification --></verifiedBy> <verifiedWith><!-- 0..1 Reference(Group|Patient|RelatedPerson) Person who verified --></verifiedWith><<date value="[dateTime]"/><!-- 0..* When consent verified --> </verification> <decision value="[code]"/><!-- 0..1 deny | permit --> <provisionReference><!-- 0..* Reference(Permission) Permission Resource for provisions --></provisionReference> <provision> <!-- 0..* Constraints to the base Consent.policyRule/Consent.policy --> <period><!-- 0..1 Period Timeframe for this provision --></period> <actor> <!-- 0..* Who|what controlled by this provision (or group, by role) --> <role><!-- 0..1 CodeableConcept How the actor is involved --></role> <reference><!-- 0..1 Reference(CareTeam|Device|Group|Organization|Patient| Practitioner|PractitionerRole|RelatedPerson) Resource for the actor (or group, by role) --></reference> </actor> <action><!-- 0..* CodeableConcept Actions controlled by this provision --></action><</securityLabel> <</purpose><securityLabel><!-- 0..* Coding Security Labels that define affected resources --></securityLabel> <purpose><!-- 0..* Coding Context of activities covered by this provision--></purpose> <documentType><!-- 0..* Coding e.g. Resource Type, Profile, CDA, etc --></documentType> <resourceType><!-- 0..* Coding e.g. Resource Type, Profile, etc --></resourceType> <code><!-- 0..* CodeableConcept e.g. LOINC or SNOMED CT code, etc. in the content --></code> <dataPeriod><!-- 0..1 Period Timeframe for data controlled by this provision --></dataPeriod> <data> <!-- 0..* Data controlled by this provision --> <meaning value="[code]"/><!-- 1..1 instance | related | dependents | authoredby --> <reference><!-- 1..1 Reference(Any) The actual data reference --></reference> </data> <expression><!-- 0..1 Expression A computable expression of the consent --></expression> <provision><!-- 0..* Content as for Consent.provision Nested Exception Provisions --></provision> </provision> </Consent>
JSON Template
{
"resourceType" : "Consent",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // Identifier for this record (external references)
"status" : "<code>", // R! draft | active | inactive | not-done | entered-in-error | unknown
"
"category" : [{ CodeableConcept }], // Classification of the consent statement - for indexing/retrieval
"subject" : { Reference(Group|Patient|Practitioner|ResearchSubject) }, // Who the consent applies to
"date" : "<date>", // Fully executed date of the consent
"period" : { Period }, // Effective period for this Consent
"grantor" : [{ Reference(CareTeam|Group|HealthcareService|Organization|
Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who is granting rights according to the policy and rules
"grantee" : [{ Reference(CareTeam|Group|HealthcareService|Organization|
Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who is agreeing to the policy and rules
"manager" : [{ Reference(HealthcareService|Organization|Patient|Practitioner) }], // Consent workflow management
"controller" : [{ Reference(HealthcareService|Organization|Patient|
Practitioner) }], // Consent Enforcer
"sourceAttachment" : [{ Attachment }], // Source from which this consent is taken
"sourceReference" : [{ Reference(Consent|Contract|DocumentReference|
QuestionnaireResponse) }], // Source from which this consent is taken
"regulatoryBasis" : [{ CodeableConcept }], // Regulations establishing base Consent
"policyBasis" : { // Computable version of the backing policy
"reference" : { Reference(Any) }, // Reference backing policy resource
"uri" : "<uri>" // URI to a computable backing policy
},
"policyText" : [{ Reference(DocumentReference) }], // Human Readable Policy
"verification" : [{ // Consent Verified by patient or family
"verified" : <boolean>, // R! Has been verified
"
"type" : { CodeableConcept }, // Business case of verification
"verifiedBy" : { Reference(Organization|Practitioner|PractitionerRole) }, // Person conducting verification
"verifiedWith" : { Reference(Group|Patient|RelatedPerson) }, // Person who verified
"
"date" : ["<dateTime>"] // When consent verified
}],
"decision" : "<code>", // deny | permit
"provisionReference" : [{ Reference(Permission) }], // Permission Resource for provisions
"provision" : [{ // Constraints to the base Consent.policyRule/Consent.policy
"period" : { Period }, // Timeframe for this provision
"actor" : [{ // Who|what controlled by this provision (or group, by role)
"role" : { CodeableConcept }, // How the actor is involved
"reference" : { Reference(CareTeam|Device|Group|Organization|Patient|
Practitioner|PractitionerRole|RelatedPerson) } // Resource for the actor (or group, by role)
}],
"action" : [{ CodeableConcept }], // Actions controlled by this provision
"
"
"securityLabel" : [{ Coding }], // Security Labels that define affected resources
"purpose" : [{ Coding }], // Context of activities covered by this provision
"documentType" : [{ Coding }], // e.g. Resource Type, Profile, CDA, etc
"resourceType" : [{ Coding }], // e.g. Resource Type, Profile, etc
"code" : [{ CodeableConcept }], // e.g. LOINC or SNOMED CT code, etc. in the content
"dataPeriod" : { Period }, // Timeframe for data controlled by this provision
"data" : [{ // Data controlled by this provision
"meaning" : "<code>", // R! instance | related | dependents | authoredby
"reference" : { Reference(Any) } // R! The actual data reference
}],
"expression" : { Expression }, // A computable expression of the consent
"provision" : [{ Content as for Consent.provision }] // Nested Exception Provisions
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Consent; fhir:nodeRole fhir:treeRoot; # if this is the parser root
# from # from# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifier for this record (external references) fhir:status [ code ] ; # 1..1 draft | active | inactive | not-done | entered-in-error | unknown fhir:category ( [ CodeableConcept ] ... ) ; # 0..* Classification of the consent statement - for indexing/retrieval fhir:subject [ Reference(Group|Patient|Practitioner|ResearchSubject) ] ; # 0..1 Who the consent applies to fhir:date [ date ] ; # 0..1 Fully executed date of the consent fhir:period [ Period ] ; # 0..1 Effective period for this Consent fhir:grantor ( [ Reference(CareTeam|Group|HealthcareService|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Who is granting rights according to the policy and rules fhir:grantee ( [ Reference(CareTeam|Group|HealthcareService|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Who is agreeing to the policy and rules fhir:manager ( [ Reference(HealthcareService|Organization|Patient|Practitioner) ] ... ) ; # 0..* Consent workflow management fhir:controller ( [ Reference(HealthcareService|Organization|Patient|Practitioner) ] ... ) ; # 0..* Consent Enforcer fhir:sourceAttachment ( [ Attachment ] ... ) ; # 0..* Source from which this consent is taken fhir:sourceReference ( [ Reference(Consent|Contract|DocumentReference|QuestionnaireResponse) ] ... ) ; # 0..* Source from which this consent is taken fhir:regulatoryBasis ( [ CodeableConcept ] ... ) ; # 0..* Regulations establishing base Consent fhir:policyBasis [ # 0..1 Computable version of the backing policy fhir:reference [ Reference(Any) ] ; # 0..1 Reference backing policy resource fhir:uri [ uri ] ; # 0..1 URI to a computable backing policy ] ; fhir:policyText ( [ Reference(DocumentReference) ] ... ) ; # 0..* Human Readable Policy fhir:verification ( [ # 0..* Consent Verified by patient or family fhir:verified [ boolean ] ; # 1..1 Has been verifiedfhir:fhir:type [ CodeableConcept ] ; # 0..1 Business case of verification fhir:verifiedBy [ Reference(Organization|Practitioner|PractitionerRole) ] ; # 0..1 Person conducting verification fhir:verifiedWith [ Reference(Group|Patient|RelatedPerson) ] ; # 0..1 Person who verifiedfhir:fhir:date ( [ dateTime ] ... ) ; # 0..* When consent verified ] ... ) ; fhir:decision [ code ] ; # 0..1 deny | permit fhir:provisionReference ( [ Reference(Permission) ] ... ) ; # 0..* Permission Resource for provisions fhir:provision ( [ # 0..* Constraints to the base Consent.policyRule/Consent.policy fhir:period [ Period ] ; # 0..1 Timeframe for this provision fhir:actor ( [ # 0..* Who|what controlled by this provision (or group, by role) fhir:role [ CodeableConcept ] ; # 0..1 How the actor is involved fhir:reference [ Reference(CareTeam|Device|Group|Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) ] ; # 0..1 Resource for the actor (or group, by role) ] ... ) ; fhir:action ( [ CodeableConcept ] ... ) ; # 0..* Actions controlled by this provision fhir:securityLabel ( [ Coding ] ... ) ; # 0..* Security Labels that define affected resources fhir:purpose ( [ Coding ] ... ) ; # 0..* Context of activities covered by this provision fhir:documentType ( [ Coding ] ... ) ; # 0..* e.g. Resource Type, Profile, CDA, etc fhir:resourceType ( [ Coding ] ... ) ; # 0..* e.g. Resource Type, Profile, etc fhir:code ( [ CodeableConcept ] ... ) ; # 0..* e.g. LOINC or SNOMED CT code, etc. in the content fhir:dataPeriod [ Period ] ; # 0..1 Timeframe for data controlled by this provision fhir:data ( [ # 0..* Data controlled by this provision fhir:meaning [ code ] ; # 1..1 instance | related | dependents | authoredby fhir:reference [ Reference(Any) ] ; # 1..1 The actual data reference ] ... ) ; fhir:expression [ Expression ] ; # 0..1 A computable expression of the consent fhir:provision ( [ See Consent.provision ] ... ) ; # 0..* Nested Exception Provisions ] ... ) ; ]
Changes from both R4 and R4B
| Consent | |
| Consent.status |
|
| Consent.category |
|
| Consent.subject |
|
| Consent.date |
|
| Consent.period |
|
| Consent.grantor |
|
| Consent.grantee |
|
| Consent.manager |
|
| Consent.controller |
|
| Consent.sourceAttachment |
|
| Consent.sourceReference |
|
| Consent.regulatoryBasis |
|
| Consent.policyBasis |
|
| Consent.policyBasis.reference |
|
| Consent.policyBasis.uri |
|
| Consent.policyText |
|
|
|
|
| Consent.verification.verifiedBy |
|
| Consent.verification.verifiedWith |
|
|
|
|
| Consent.decision |
|
| Consent.provisionReference |
|
| Consent.provision |
|
| Consent.provision.actor.role |
|
| Consent.provision.actor.reference |
|
| Consent.provision.securityLabel |
|
| Consent.provision.documentType |
|
| Consent.provision.resourceType |
|
| Consent.provision.expression |
|
| Consent.scope |
|
| Consent.organization |
|
| Consent.source[x] |
|
| Consent.policy.authority |
|
| Consent.policyRule |
|
| Consent.verification.verificationDate |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
|
DomainResource |
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
+ Rule: Either a Permission (.provisionReference) or a .provision tree may exist but not both Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
Identifier
for
this
record
(external
references)
|
|
?! Σ | 1..1 | code |
draft
|
active
|
inactive
|
not-done
|
entered-in-error
|
unknown
Binding: Consent State ( Required ) |
|
Σ | 0..* | CodeableConcept |
Classification
of
the
consent
statement
-
for
indexing/retrieval
Binding: Consent Category Codes ( Example ) |
|
Σ | 0..1 | Reference ( Patient | Practitioner | ResearchSubject | Group ) |
Who
the
consent
applies
to
|
|
Σ | 0..1 | date |
Fully
executed
date
of
the
consent
|
|
Σ | 0..1 | Period |
Effective
period
for
this
Consent
|
|
Σ | 0..* | Reference ( CareTeam | Group | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Who
is
granting
rights
according
to
the
policy
and
rules
|
|
Σ | 0..* | Reference ( CareTeam | Group | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Who
is
agreeing
to
the
policy
and
rules
|
|
0..* | Reference ( HealthcareService | Organization | Patient | Practitioner ) |
Consent
workflow
management
|
|
|
0..* | Reference ( HealthcareService | Organization | Patient | Practitioner ) |
Consent
Enforcer
|
|
|
0..* | Attachment |
Source
from
which
this
consent
is
taken
|
|
|
0..* | Reference ( Consent | DocumentReference | Contract | QuestionnaireResponse ) |
Source
from
which
this
consent
is
taken
|
|
|
0..* | CodeableConcept |
Regulations
establishing
base
Consent
Binding: Consent PolicyRule Codes ( Example ) |
|
|
0..1 | BackboneElement |
Computable
version
of
the
backing
policy
|
|
|
0..1 | Reference ( Any ) |
Reference
backing
policy
resource
|
|
|
0..1 | uri |
URI
to
a
computable
backing
policy
|
|
|
0..* | Reference ( DocumentReference ) |
Human
Readable
Policy
|
|
|
Σ | 0..* | BackboneElement |
Consent
Verified
by
patient
or
family
|
|
Σ | 1..1 | boolean |
Has
been
verified
|
|
0..1 | CodeableConcept |
Business
case
of
verification
Binding: Consent Vefication Codes ( Example ) |
|
|
0..1 | Reference ( Organization | Practitioner | PractitionerRole ) |
Person
conducting
verification
|
|
|
0..1 | Reference ( Patient | RelatedPerson | Group ) |
Person
who
verified
|
|
|
0..* | dateTime |
When
consent
verified
|
|
|
?! Σ | 0..1 | code |
deny
|
permit
Binding: Consent Provision Type ( Required ) |
|
0..* | Reference ( Permission ) |
Permission
Resource
for
provisions
|
|
|
Σ | 0..* | BackboneElement |
Constraints
to
the
base
Consent.policyRule/Consent.policy
|
|
Σ | 0..1 | Period |
Timeframe
for
this
provision
|
|
0..* | BackboneElement |
Who|what
controlled
by
this
provision
(or
group,
by
role)
|
|
|
0..1 | CodeableConcept |
How
the
actor
is
involved
Binding: Participation Role Type ( Extensible ) |
|
|
0..1 | Reference ( Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole ) |
Resource
for
the
actor
(or
group,
by
role)
|
|
|
Σ | 0..* | CodeableConcept |
Actions
controlled
by
this
provision
Binding: Consent Action Codes ( Example ) |
|
Σ | 0..* | Coding |
Security
Labels
that
define
affected
resources
Binding: Example set of Security Labels ( Example ) |
|
Σ | 0..* | Coding |
Context
of
activities
covered
by
this
provision
Binding: PurposeOfUse
(
Extensible
)
|
|
Σ | 0..* | Coding |
e.g.
Resource
Type,
Profile,
CDA,
etc
Binding: Consent Content Class ( Preferred ) |
|
Σ | 0..* | Coding |
e.g.
Resource
Type,
Profile,
etc
Binding: Resource Types ( Extensible ) |
|
Σ | 0..* | CodeableConcept |
e.g.
LOINC
or
SNOMED
CT
code,
etc.
in
the
content
Binding: Consent Content Codes ( Example ) |
|
Σ | 0..1 | Period |
Timeframe
for
data
controlled
by
this
provision
|
|
Σ | 0..* | BackboneElement |
Data
controlled
by
this
provision
|
|
Σ | 1..1 | code |
instance
|
related
|
dependents
|
authoredby
Binding: Consent Data Meaning ( Required ) |
|
Σ | 1..1 | Reference ( Any ) |
The
actual
data
reference
|
|
0..1 | Expression |
A
computable
expression
of
the
consent
|
|
|
0..* | see provision |
Nested
Exception
Provisions
|
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
XML Template
<Consent xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Identifier for this record (external references) --></identifier> <status value="[code]"/><!-- 1..1 draft | active | inactive | not-done | entered-in-error | unknown -->
<</category><category><!-- 0..* CodeableConcept Classification of the consent statement - for indexing/retrieval --></category> <subject><!-- 0..1 Reference(Group|Patient|Practitioner|ResearchSubject) Who the consent applies to --></subject> <date value="[date]"/><!-- 0..1 Fully executed date of the consent --> <period><!-- 0..1 Period Effective period for this Consent --></period> <grantor><!-- 0..* Reference(CareTeam|Group|HealthcareService|Organization| Patient|Practitioner|PractitionerRole|RelatedPerson) Who is granting rights according to the policy and rules --></grantor> <grantee><!-- 0..* Reference(CareTeam|Group|HealthcareService|Organization| Patient|Practitioner|PractitionerRole|RelatedPerson) Who is agreeing to the policy and rules --></grantee> <manager><!-- 0..* Reference(HealthcareService|Organization|Patient|Practitioner) Consent workflow management --></manager> <controller><!-- 0..* Reference(HealthcareService|Organization|Patient| Practitioner) Consent Enforcer --></controller> <sourceAttachment><!-- 0..* Attachment Source from which this consent is taken --></sourceAttachment> <sourceReference><!-- 0..* Reference(Consent|Contract|DocumentReference| QuestionnaireResponse) Source from which this consent is taken --></sourceReference> <regulatoryBasis><!-- 0..* CodeableConcept Regulations establishing base Consent --></regulatoryBasis> <policyBasis> <!-- 0..1 Computable version of the backing policy --> <reference><!-- 0..1 Reference(Any) Reference backing policy resource --></reference> <uri value="[uri]"/><!-- 0..1 URI to a computable backing policy --> </policyBasis> <policyText><!-- 0..* Reference(DocumentReference) Human Readable Policy --></policyText> <verification> <!-- 0..* Consent Verified by patient or family --> <verified value="[boolean]"/><!-- 1..1 Has been verified --><</verificationType><type><!-- 0..1 CodeableConcept Business case of verification --></type> <verifiedBy><!-- 0..1 Reference(Organization|Practitioner|PractitionerRole) Person conducting verification --></verifiedBy> <verifiedWith><!-- 0..1 Reference(Group|Patient|RelatedPerson) Person who verified --></verifiedWith><<date value="[dateTime]"/><!-- 0..* When consent verified --> </verification> <decision value="[code]"/><!-- 0..1 deny | permit --> <provisionReference><!-- 0..* Reference(Permission) Permission Resource for provisions --></provisionReference> <provision> <!-- 0..* Constraints to the base Consent.policyRule/Consent.policy --> <period><!-- 0..1 Period Timeframe for this provision --></period> <actor> <!-- 0..* Who|what controlled by this provision (or group, by role) --> <role><!-- 0..1 CodeableConcept How the actor is involved --></role> <reference><!-- 0..1 Reference(CareTeam|Device|Group|Organization|Patient| Practitioner|PractitionerRole|RelatedPerson) Resource for the actor (or group, by role) --></reference> </actor> <action><!-- 0..* CodeableConcept Actions controlled by this provision --></action><</securityLabel> <</purpose><securityLabel><!-- 0..* Coding Security Labels that define affected resources --></securityLabel> <purpose><!-- 0..* Coding Context of activities covered by this provision--></purpose> <documentType><!-- 0..* Coding e.g. Resource Type, Profile, CDA, etc --></documentType> <resourceType><!-- 0..* Coding e.g. Resource Type, Profile, etc --></resourceType> <code><!-- 0..* CodeableConcept e.g. LOINC or SNOMED CT code, etc. in the content --></code> <dataPeriod><!-- 0..1 Period Timeframe for data controlled by this provision --></dataPeriod> <data> <!-- 0..* Data controlled by this provision --> <meaning value="[code]"/><!-- 1..1 instance | related | dependents | authoredby --> <reference><!-- 1..1 Reference(Any) The actual data reference --></reference> </data> <expression><!-- 0..1 Expression A computable expression of the consent --></expression> <provision><!-- 0..* Content as for Consent.provision Nested Exception Provisions --></provision> </provision> </Consent>
JSON Template
{
"resourceType" : "Consent",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // Identifier for this record (external references)
"status" : "<code>", // R! draft | active | inactive | not-done | entered-in-error | unknown
"
"category" : [{ CodeableConcept }], // Classification of the consent statement - for indexing/retrieval
"subject" : { Reference(Group|Patient|Practitioner|ResearchSubject) }, // Who the consent applies to
"date" : "<date>", // Fully executed date of the consent
"period" : { Period }, // Effective period for this Consent
"grantor" : [{ Reference(CareTeam|Group|HealthcareService|Organization|
Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who is granting rights according to the policy and rules
"grantee" : [{ Reference(CareTeam|Group|HealthcareService|Organization|
Patient|Practitioner|PractitionerRole|RelatedPerson) }], // Who is agreeing to the policy and rules
"manager" : [{ Reference(HealthcareService|Organization|Patient|Practitioner) }], // Consent workflow management
"controller" : [{ Reference(HealthcareService|Organization|Patient|
Practitioner) }], // Consent Enforcer
"sourceAttachment" : [{ Attachment }], // Source from which this consent is taken
"sourceReference" : [{ Reference(Consent|Contract|DocumentReference|
QuestionnaireResponse) }], // Source from which this consent is taken
"regulatoryBasis" : [{ CodeableConcept }], // Regulations establishing base Consent
"policyBasis" : { // Computable version of the backing policy
"reference" : { Reference(Any) }, // Reference backing policy resource
"uri" : "<uri>" // URI to a computable backing policy
},
"policyText" : [{ Reference(DocumentReference) }], // Human Readable Policy
"verification" : [{ // Consent Verified by patient or family
"verified" : <boolean>, // R! Has been verified
"
"type" : { CodeableConcept }, // Business case of verification
"verifiedBy" : { Reference(Organization|Practitioner|PractitionerRole) }, // Person conducting verification
"verifiedWith" : { Reference(Group|Patient|RelatedPerson) }, // Person who verified
"
"date" : ["<dateTime>"] // When consent verified
}],
"decision" : "<code>", // deny | permit
"provisionReference" : [{ Reference(Permission) }], // Permission Resource for provisions
"provision" : [{ // Constraints to the base Consent.policyRule/Consent.policy
"period" : { Period }, // Timeframe for this provision
"actor" : [{ // Who|what controlled by this provision (or group, by role)
"role" : { CodeableConcept }, // How the actor is involved
"reference" : { Reference(CareTeam|Device|Group|Organization|Patient|
Practitioner|PractitionerRole|RelatedPerson) } // Resource for the actor (or group, by role)
}],
"action" : [{ CodeableConcept }], // Actions controlled by this provision
"
"
"securityLabel" : [{ Coding }], // Security Labels that define affected resources
"purpose" : [{ Coding }], // Context of activities covered by this provision
"documentType" : [{ Coding }], // e.g. Resource Type, Profile, CDA, etc
"resourceType" : [{ Coding }], // e.g. Resource Type, Profile, etc
"code" : [{ CodeableConcept }], // e.g. LOINC or SNOMED CT code, etc. in the content
"dataPeriod" : { Period }, // Timeframe for data controlled by this provision
"data" : [{ // Data controlled by this provision
"meaning" : "<code>", // R! instance | related | dependents | authoredby
"reference" : { Reference(Any) } // R! The actual data reference
}],
"expression" : { Expression }, // A computable expression of the consent
"provision" : [{ Content as for Consent.provision }] // Nested Exception Provisions
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Consent; fhir:nodeRole fhir:treeRoot; # if this is the parser root
# from # from# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifier for this record (external references) fhir:status [ code ] ; # 1..1 draft | active | inactive | not-done | entered-in-error | unknown fhir:category ( [ CodeableConcept ] ... ) ; # 0..* Classification of the consent statement - for indexing/retrieval fhir:subject [ Reference(Group|Patient|Practitioner|ResearchSubject) ] ; # 0..1 Who the consent applies to fhir:date [ date ] ; # 0..1 Fully executed date of the consent fhir:period [ Period ] ; # 0..1 Effective period for this Consent fhir:grantor ( [ Reference(CareTeam|Group|HealthcareService|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Who is granting rights according to the policy and rules fhir:grantee ( [ Reference(CareTeam|Group|HealthcareService|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) ] ... ) ; # 0..* Who is agreeing to the policy and rules fhir:manager ( [ Reference(HealthcareService|Organization|Patient|Practitioner) ] ... ) ; # 0..* Consent workflow management fhir:controller ( [ Reference(HealthcareService|Organization|Patient|Practitioner) ] ... ) ; # 0..* Consent Enforcer fhir:sourceAttachment ( [ Attachment ] ... ) ; # 0..* Source from which this consent is taken fhir:sourceReference ( [ Reference(Consent|Contract|DocumentReference|QuestionnaireResponse) ] ... ) ; # 0..* Source from which this consent is taken fhir:regulatoryBasis ( [ CodeableConcept ] ... ) ; # 0..* Regulations establishing base Consent fhir:policyBasis [ # 0..1 Computable version of the backing policy fhir:reference [ Reference(Any) ] ; # 0..1 Reference backing policy resource fhir:uri [ uri ] ; # 0..1 URI to a computable backing policy ] ; fhir:policyText ( [ Reference(DocumentReference) ] ... ) ; # 0..* Human Readable Policy fhir:verification ( [ # 0..* Consent Verified by patient or family fhir:verified [ boolean ] ; # 1..1 Has been verifiedfhir:fhir:type [ CodeableConcept ] ; # 0..1 Business case of verification fhir:verifiedBy [ Reference(Organization|Practitioner|PractitionerRole) ] ; # 0..1 Person conducting verification fhir:verifiedWith [ Reference(Group|Patient|RelatedPerson) ] ; # 0..1 Person who verifiedfhir:fhir:date ( [ dateTime ] ... ) ; # 0..* When consent verified ] ... ) ; fhir:decision [ code ] ; # 0..1 deny | permit fhir:provisionReference ( [ Reference(Permission) ] ... ) ; # 0..* Permission Resource for provisions fhir:provision ( [ # 0..* Constraints to the base Consent.policyRule/Consent.policy fhir:period [ Period ] ; # 0..1 Timeframe for this provision fhir:actor ( [ # 0..* Who|what controlled by this provision (or group, by role) fhir:role [ CodeableConcept ] ; # 0..1 How the actor is involved fhir:reference [ Reference(CareTeam|Device|Group|Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) ] ; # 0..1 Resource for the actor (or group, by role) ] ... ) ; fhir:action ( [ CodeableConcept ] ... ) ; # 0..* Actions controlled by this provision fhir:securityLabel ( [ Coding ] ... ) ; # 0..* Security Labels that define affected resources fhir:purpose ( [ Coding ] ... ) ; # 0..* Context of activities covered by this provision fhir:documentType ( [ Coding ] ... ) ; # 0..* e.g. Resource Type, Profile, CDA, etc fhir:resourceType ( [ Coding ] ... ) ; # 0..* e.g. Resource Type, Profile, etc fhir:code ( [ CodeableConcept ] ... ) ; # 0..* e.g. LOINC or SNOMED CT code, etc. in the content fhir:dataPeriod [ Period ] ; # 0..1 Timeframe for data controlled by this provision fhir:data ( [ # 0..* Data controlled by this provision fhir:meaning [ code ] ; # 1..1 instance | related | dependents | authoredby fhir:reference [ Reference(Any) ] ; # 1..1 The actual data reference ] ... ) ; fhir:expression [ Expression ] ; # 0..1 A computable expression of the consent fhir:provision ( [ See Consent.provision ] ... ) ; # 0..* Nested Exception Provisions ] ... ) ; ]
Changes from both R4 and R4B
| Consent | |
| Consent.status |
|
| Consent.category |
|
| Consent.subject |
|
| Consent.date |
|
| Consent.period |
|
| Consent.grantor |
|
| Consent.grantee |
|
| Consent.manager |
|
| Consent.controller |
|
| Consent.sourceAttachment |
|
| Consent.sourceReference |
|
| Consent.regulatoryBasis |
|
| Consent.policyBasis |
|
| Consent.policyBasis.reference |
|
| Consent.policyBasis.uri |
|
| Consent.policyText |
|
|
|
|
| Consent.verification.verifiedBy |
|
| Consent.verification.verifiedWith |
|
|
|
|
| Consent.decision |
|
| Consent.provisionReference |
|
| Consent.provision |
|
| Consent.provision.actor.role |
|
| Consent.provision.actor.reference |
|
| Consent.provision.securityLabel |
|
| Consent.provision.documentType |
|
| Consent.provision.resourceType |
|
| Consent.provision.expression |
|
| Consent.scope |
|
| Consent.organization |
|
| Consent.source[x] |
|
| Consent.policy.authority |
|
| Consent.policyRule |
|
| Consent.verification.verificationDate |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
Additional definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis
| Path | ValueSet | Type | Documentation |
|---|---|---|---|
| Consent.status | ConsentState | Required |
Indicates the state of the consent. |
| Consent.category | ConsentCategoryCodes | Example |
This value set includes sample Consent Directive Type codes, including several consent directive related LOINC codes; HL7 VALUE SET: ActConsentType(2.16.840.1.113883.1.11.19897); examples of US realm consent directive legal descriptions and references to online and/or downloadable forms such as the SSA-827 Authorization to Disclose Information to the Social Security Administration; and other anticipated consent directives related to participation in a clinical trial, medical procedures, reproductive procedures; health care directive (Living Will); advance directive, do not resuscitate (DNR); Physician Orders for Life-Sustaining Treatment (POLST) |
| Consent.regulatoryBasis | ConsentPolicyRuleCodes | Example |
This value set includes sample Regulatory consent policy types from the US and other regions. |
|
|
ConsentVerificationCodes | Example |
This value set includes base Consent Verification codes. |
| Consent.decision | ConsentProvisionType | Required |
How a rule statement is applied, such as adding additional consent or removing consent. |
| Consent.provision.actor.role | ParticipationRoleType | Extensible |
This FHIR value set is comprised of Actor participation Type codes, which can be used to value FHIR agents, actors, and other role elements. The codes are intended to express how the agent participated in some activity. Sometimes refered to the agent functional-role relative to the activity. |
| Consent.provision.action | ConsentActionCodes | Example |
This value set includes sample Consent Action codes. |
| Consent.provision.securityLabel | SecurityLabelExamples | Example |
A sample of security labels from Healthcare Privacy and Security Classification System as the combination of data and event codes. |
| Consent.provision.purpose |
PurposeOfUse
|
Extensible |
Supports communication of purpose of use at a general level. |
| Consent.provision.documentType | ConsentContentClass | Preferred |
This value set includes the FHIR resource types, along with some other important content class codes |
| Consent.provision.resourceType | ResourceType | Extensible |
Concrete FHIR Resource Types |
| Consent.provision.code | ConsentContentCodes | Example |
This example value set contains all LOINC code |
| Consent.provision.data.meaning | ConsentDataMeaning | Required |
How a resource reference is interpreted when testing consent restrictions. |
| UniqueKey | Level | Location | Description | Expression |
ppc-1
|
Rule | (base) | Either a Permission (.provisionReference) or a .provision tree may exist but not both | provisionReference.exists() or provision.exists() |
The
Consent
resource
has
a
reference
to
a
single
PolicyBasis
.
Many
organizations
will
work
in
a
context
where
multiple
different
consent
regulations
and
policies
apply.
In
these
cases,
the
single
rule
reference
refers
to
a
policy
document
that
resolves
and
reconciles
the
various
policies
and
presents
a
single
policy
for
patient
consent.
If
it
is
still
necessary
to
track
which
of
the
underlying
regulations
an
exception
is
make
in
regard
to,
the
RegulatoryBasis
may
be
used.
Policies attached to PolicyBasis should be written using positive language. For an example, a patient wanting to opt-out will be recorded with an opt-in policy where the Consent.provision[0].type indicates "deny".
The following is the general model of Privacy Consent Directives.
There are context setting parameters:
A Privacy Consent may transition through many states including: that no consent has been sought, consent has been proposed, consent has been rejected, and consent approved.
There are set of patterns.
For each of these patterns (positive or negative pattern), there can be exceptions. These exceptions are explicitly recorded in the provision element.
The provision structure provides a mechanism for modeling consent rules in a machine-readable and computable way. This is the FHIR Consent's native mechanism for expressing and encoding policy rules within the resource --an alternative to using an external policy language.
The
default
decision
of
the
consent
is
stated
by
the
decision
attribute
(
permit
or
deny
)
and
provisions
state
the
exceptions
to
the
base
decision.
Each
provision
may
have
its
own
sub-provisions
that,
in
turn,
state
the
exceptions
to
the
rules
stated
in
the
parent
provision.
The
following
figure
depicts
this
structure:
For
example,
if
the
base
decision
for
a
consent
is
permit
,
the
first
level
of
provisions
express
exceptions
to
this
decision,
therefore,
the
decision
when
matching
these
provisions
will
be
a
deny
.
The
immediate
child
provisions
to
any
of
these
provisions
would
express
exceptions
to
their
deny
decision,
therefore,
their
effect,
when
matched,
will
be
permit
.
The provision structure provides a rich mechanism to construct complex rules using logical AND and OR :
If
the
value
of
an
attribute
is
a
code
from
a
hierarchical
code
structure
(e.g.,
a
Confidentiality
code
),
the
subsumption
relationship
between
the
codes
in
the
hierarchy
must
be
considered
in
the
interpretation
of
the
provision:
permit
,
all
the
subsumed
descending
codes
(that
are
below
the
mentioned
code
in
the
hierarchy)
are
also
permitted.
For
example,
if
a
provision
permits
access
to
very
restricted
(
V
)
data,
it
also
permits
access
to
restricted
(
R
)
data.
deny
,
all
the
subsuming
parent
codes
(that
are
above
the
mentioned
code
in
the
hierarchy)
are
also
denied.
For
example,
if
a
provision
denies
access
to
restricted
(
R
)
data,
it
also
denies
access
to
very
restricted
(
V
)
data.
The following figure visualizes this in the course of an example.
The
base
decision
is
a
deny
to
which
the
first
exception,
expressed
in
the
first
provision,
states
that
during
the
time
period
from
01/01/2020
to
31/12/2022
all
access
by
Org
A
is
permitted.
In
order
to
match
this
provision,
and
therefore
for
this
permit
decision
to
be
applicable,
the
requestor
identifier
must
match
Org
A
AND
the
current
date
must
be
within
the
range
01/01/2020-31/12/2022.
The subsequent child provisions state exceptions to this base rule. Matching any of these provisions results in a deny since these are exceptions to a permit parent provision.
HMK
).
R
).
Note
that
this
implies
access
is
also
denied
if
the
requested
data
is
very
restricted
(
V
).
PAY
)
unless:
Claims
,
OR
Claim
Responses
,
OR
Accounts
.
Tracking changes in consent can be managed in two possible ways:
HL7 does not recommend a specific method.
A FHIR Consent Directive instance is considered the encoded legally binding Consent Directive if it meets requirements of a policy domain requirements for an enforceable contract. In some domains, electronic signatures of one or both of the parties to the content of an encoded representation of a Consent Form is deemed to constitute a legally binding Consent Directive. Some domains accept a notary’s electronic signature over the wet or electronic signature of a party to the Consent Directive as the additional identity proofing required to make an encoded Consent Directive legally binding. Other domains may only accept a wet signature or might not require the parties’ signatures at all.
Whatever the criteria are for making an encoded FHIR Consent Directive legally binding, anything less than a legally binding representation of a Consent Directive must be identified as such, i.e., as a derivative of the legally binding Consent Directive, which has specific usage in Consent Directive workflow management.
Definitions:
| Consent | The record of a healthcare consumer’s policy choices or choices made on their behalf by a third party, which permits or denies identified recipient(s) or recipient role(s) to perform one or more actions within a given policy context, for specific purposes and periods of time |
| Consent Directive | The legal record of a healthcare consumer's agreement or agreements made on their behalf with a party responsible for enforcing the consumer’s choices or choices made on their behalf by a third party, which permits or denies identified actors or roles to perform actions affecting the consumer within a given context for specific purposes and periods of time |
| Consent Form | Human readable consent content describing one or more actions impacting the grantor for which the grantee would be authorized or prohibited from performing. It includes the terms, rules, and conditions pertaining to the authorization or restrictions, such as effective time, applicability or scope, purposes of use, obligations and prohibitions to which the grantee must comply. Once a Consent Form is “executed” by means required by policy, such as verbal agreement, wet signature, or electronic/digital signature, it becomes a legally binding Consent Directive. |
| Consent Directive Derivative |
Consent
Content
that
conveys
the
minimal
set
of
information
needed
to
manage
Consent
Directive
workflow,
including
providing
Consent
Directive
content
sufficient
to:
Derived Consent content includes the Security Labels encoding the applicable privacy and security policies. Consent Security Labels inform recipients about specific access control measures required for compliance. |
| Consent Statement | A Consent Directive derivative has less than full fidelity to the legally binding Consent Directive from which it was "transcribed". It provides recipients with the full content representation they may require for compliance purposes, and typically include a reference to or an attached unstructured representation for recipients needing an exact copy of the legal agreement. |
| Consent Registration | The legal record of a healthcare consumer's agreement with a party responsible for enforcing the consumer’s choices, which permits or denies identified actors or roles to perform actions affecting the consumer within a given context for specific purposes and periods of time. A Consent Directive derivative that conveys the minimal set of information needed to register an active and revoked Consent Directive, or to update Consent status as it changes during its lifecycle. |
| Policy context | Any organizational or jurisdictional policies, which may limit the consumer’s policy choices, and which includes the named range of actions allowed |
| Healthcare Consumer | The individual establishing his/her personal consent (i.e. Consenter). In FHIR, this is referred to as the 'Patient' though this word is not used across all contexts of care |
Privacy policies define how Individually Identifiable Health Information (IIHI) is to be collected, accessed, used and disclosed. A Privacy Consent Directive as a legal record of a patient's (e.g. a healthcare consumer) agreement with a party responsible for enforcing the patient's choices, which permits or denies identified actors or roles to perform actions affecting the patient within a given context for specific purposes and periods of time. All consent directives have a policy context, which is any set of organizational or jurisdictional policies which may limit the consumer’s policy choices, and which include a named range of actions allowed. In addition, Privacy Consent Directives provide the ability for a healthcare consumer to delegate authority to a Substitute Decision Maker who may act on behalf of that individual. Alternatively, a consumer may author/publish their privacy preferences as a self-declared Privacy Consent Directive.
The Consent resource on FHIR provides support for alternative representations for expressing interoperable health information privacy consent directives in a standard form for the exchange and enforcement by sending, intermediating, or receiving systems of privacy policies that can be enforced by consuming systems (e.g., scanned documents, of computable structured entries elements, FHIR structures with optional attached, or referenced unstructured representations.) It may be used to represent the Privacy Consent Directive itself, a Consent Statement, which electronically represents a Consent Directive, or Consent Metadata, which is the minimum necessary consent content derived from a Consent Directive for use in workflow management.
The following steps represent the optimal path for searching for a Consent resource.
Search parameters for this resource. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
| Name | Type | Description | Expression | In Common |
| action | token | LOINC or SNOMED CT code, etc. in the content |
|
|
| actor | reference | Resource for the actor (or group, by role) |
( Practitioner , Group , Organization , CareTeam , Device , Patient , PractitionerRole , RelatedPerson ) |
|
| category | token | Classification of the consent statement - for indexing/retrieval | Consent.category | |
| controller | reference | Consent Enforcer |
Consent.controller
( Practitioner , Organization , Patient , HealthcareService ) |
|
| data | reference | The actual data reference |
(Any) |
|
| date | date | When consent was agreed to | Consent.date |
|
| grantee | reference | Who is agreeing to the policy and rules |
Consent.grantee
( Practitioner , Group , Organization , CareTeam , Patient , HealthcareService , PractitionerRole , RelatedPerson ) |
|
| identifier | token | Identifier for this record (external references) | Consent.identifier |
|
| manager | reference | Consent workflow management |
Consent.manager
( Practitioner , Organization , Patient , HealthcareService ) |
|
| patient | reference | Who the consent applies to |
Consent.subject.where(resolve()
is
Patient)
( Patient ) |
|
| period | date | Timeframe for this rule |
|
|
| purpose | token | Context of activities covered by this rule |
|
|
| security-label | token | Security Labels that define affected resources |
|
|
| source-reference | reference | Search by reference to a Consent, DocumentReference, Contract or QuestionnaireResponse |
Consent.sourceReference
( Consent , Contract , QuestionnaireResponse , DocumentReference ) |
|
| status | token | draft | active | inactive | entered-in-error | unknown | Consent.status | |
| subject | reference | Who the consent applies to |
Consent.subject
( Practitioner , Group , Patient , ResearchSubject ) |
|
| verified | token | Has been verified | Consent.verification.verified | |
| verified-date | date | When consent verified |
|