0.1.0 - ci-build

EUAITransparencyIG - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: EU AI Patient Explanation Communication

Official URL: http://example.org/fhir/eu-ai-transparency/StructureDefinition/eu-ai-patient-explanation Version: 0.1.0
Draft as of 2026-07-31 Computable Name: EU_AIPatientExplanation

A Communication profile documenting that an explanation regarding an AI-supported clinical decision was provided to a patient. The explanation may describe the role of the AI system, the related human oversight, and the key elements of the resulting clinical decision in accordance with Article 86 of the EU AI Act.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... subject SΣ 1..1 Reference(Patient) The patient who received the explanation
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... sent S 1..1 dateTime Date and time the explanation was provided
... sender S 1..1 Reference(PractitionerRole) The human-in-the-loop providing the explanation
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.status Base required EventStatus 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Communication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Communication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Communication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Communication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Communication A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Communication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... subject S 1..1 Reference(Patient) The patient who received the explanation
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... sent S 1..1 dateTime Date and time the explanation was provided
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Unique identifier
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this communication
... partOf Σ 0..* Reference(Resource) Part of referenced event (e.g. Communication, Procedure)
... inResponseTo 0..* Reference(Communication) Reply to
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
... category 0..* CodeableConcept Message category
Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instructions, etc.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Codes indicating the relative importance of a communication.
... medium 0..* CodeableConcept A channel of communication
Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc.
... subject SΣ 1..1 Reference(Patient) The patient who received the explanation
... topic 0..1 CodeableConcept Description of the purpose/content
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... encounter Σ 0..1 Reference(Encounter) The Encounter during which this Communication was created
... sent S 1..1 dateTime Date and time the explanation was provided
... received 0..1 dateTime When received
... recipient 0..* Reference(CareTeam | Device | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Endpoint) Who the information is shared with
... sender S 1..1 Reference(PractitionerRole) The human-in-the-loop providing the explanation
... reason Σ 0..* CodeableReference(Resource) Indication for message
Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication.
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)
... note 0..* Annotation Comments made about the communication

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.language Base required All Languages 📍5.0.0 FHIR Std.
Communication.status Base required EventStatus 📍5.0.0 FHIR Std.
Communication.statusReason Base example Communication Not Done Reason 📍5.0.0 FHIR Std.
Communication.category Base example Communication Category 📍5.0.0 FHIR Std.
Communication.priority Base required RequestPriority 📍5.0.0 FHIR Std.
Communication.medium Base example ParticipationMode 📦3.0.0 THO v7.3
Communication.topic Base example Communication Topic 📍5.0.0 FHIR Std.
Communication.reason Base example SNOMED CT Clinical Findings 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Communication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Communication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Communication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Communication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Communication A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Communication

Summary

Mandatory: 5 elements
Must-Support: 5 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... subject SΣ 1..1 Reference(Patient) The patient who received the explanation
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... sent S 1..1 dateTime Date and time the explanation was provided
... sender S 1..1 Reference(PractitionerRole) The human-in-the-loop providing the explanation
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.status Base required EventStatus 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Communication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Communication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Communication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Communication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Communication A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

This structure is derived from Communication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... subject S 1..1 Reference(Patient) The patient who received the explanation
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... sent S 1..1 dateTime Date and time the explanation was provided
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Communication 0..* Communication A clinical or business level record of information being transmitted or shared
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Unique identifier
... instantiatesCanonical Σ 0..* canonical(PlanDefinition | ActivityDefinition | Measure | OperationDefinition | Questionnaire) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(Resource) Request fulfilled by this communication
... partOf Σ 0..* Reference(Resource) Part of referenced event (e.g. Communication, Procedure)
... inResponseTo 0..* Reference(Communication) Reply to
... status ?!Σ 1..1 code preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown
Binding: EventStatus (required): The status of the communication.
... statusReason Σ 0..1 CodeableConcept Reason for current status
Binding: CommunicationNotDoneReason (example): Codes for the reason why a communication did not happen.
... category 0..* CodeableConcept Message category
Binding: CommunicationCategory (example): Codes for general categories of communications such as alerts, instructions, etc.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Codes indicating the relative importance of a communication.
... medium 0..* CodeableConcept A channel of communication
Binding: ParticipationMode (example): Codes for communication mediums such as phone, fax, email, in person, etc.
... subject SΣ 1..1 Reference(Patient) The patient who received the explanation
... topic 0..1 CodeableConcept Description of the purpose/content
Binding: CommunicationTopic (example): Codes describing the purpose or content of the communication.
... about S 1..* Reference(Resource) The specific decision the patient wants to have explained
... encounter Σ 0..1 Reference(Encounter) The Encounter during which this Communication was created
... sent S 1..1 dateTime Date and time the explanation was provided
... received 0..1 dateTime When received
... recipient 0..* Reference(CareTeam | Device | Group | HealthcareService | Location | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Endpoint) Who the information is shared with
... sender S 1..1 Reference(PractitionerRole) The human-in-the-loop providing the explanation
... reason Σ 0..* CodeableReference(Resource) Indication for message
Binding: SNOMEDCTClinicalFindings (example): Codes for describing reasons for the occurrence of a communication.
... payload S 1..* BackboneElement Patient-facing explanation or reference to an explanation document
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... content[x] 1..1 Message part content
..... contentAttachment Attachment
..... contentReference Reference(DocumentReference)
... note 0..* Annotation Comments made about the communication

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Communication.language Base required All Languages 📍5.0.0 FHIR Std.
Communication.status Base required EventStatus 📍5.0.0 FHIR Std.
Communication.statusReason Base example Communication Not Done Reason 📍5.0.0 FHIR Std.
Communication.category Base example Communication Category 📍5.0.0 FHIR Std.
Communication.priority Base required RequestPriority 📍5.0.0 FHIR Std.
Communication.medium Base example ParticipationMode 📦3.0.0 THO v7.3
Communication.topic Base example Communication Topic 📍5.0.0 FHIR Std.
Communication.reason Base example SNOMED CT Clinical Findings 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Communication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Communication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Communication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Communication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Communication A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Communication

Summary

Mandatory: 5 elements
Must-Support: 5 elements

 

Other representations of profile: CSV, Excel, Schematron