Onconova Implementation Guide
0.2.0 - ci-build
Onconova Implementation Guide - Local Development build (v0.2.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Official URL: http://onconova.github.io/fhir/StructureDefinition/onconova-adverse-event | Version: 0.2.0 | |||
Active as of 2025-10-17 | Computable Name: OnconovaAdverseEvent |
A profile representing an adverse event experienced by a cancer patient as a result of an antineoplastic treatment, structured according to the Common Terminology Criteria for Adverse Events (CTCAE). This resource is used to capture and standardize the documentation of adverse events occurring during cancer care, including the type of event, its CTCAE grade, and any mitigation actions taken.
The profile constrains the base FHIR AdverseEvent
resource to ensure consistent use of CTCAE codes and grades, and supports linkage to related treatments such as medications, radiotherapy, or surgical procedures documented in Onconova. The profile also provides extensions for recording mitigation strategies, supporting detailed tracking and management of adverse events in cancer patients.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | AdverseEvent(4.0.1) | Medical care, research study or other healthcare event causing physical injury Constraints: ae-req-1, ae-req-2, ae-req-3, ae-req-4, ae-req-5, ae-req-6, ae-req-7 |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1 | |
![]() ![]() ![]() ![]() |
C | 1..1 | integer | CTCAE Grade URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade Constraints: ext-1, ctcae-grade |
![]() ![]() ![]() ![]() |
C | 0..* | (Complex) | Adverse Event Mitigation Action(s) URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation Constraints: ext-1, drug-mitigation, adjustment-mitigation, procedural-mitigation |
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1 |
![]() ![]() ![]() |
?!Σ | 1..1 | code | actual | potential Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential. Required Pattern: actual |
![]() ![]() ![]() |
Σ | 0..* | CodeableConcept | Not used in this profile Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational. |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of the event itself in relation to the subject Binding: CTCAdverseEvents (0.2.0) (required) |
![]() ![]() ![]() |
Σ | 1..1 | Reference(Cancer Patient Profile(0.2.0)) | Subject impacted by event |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Location) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient. |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject. |
![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | resolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown Binding: AdverseEventOutcome (required): TODO (and should this be required?). |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Device) | Not used in this profile |
![]() |
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.actuality | Base | required | AdverseEventActuality | 📍4.0.1 | FHIR Std. |
AdverseEvent.category | Base | extensible | AdverseEventCategory | 📍4.0.1 | FHIR Std. |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
AdverseEvent.seriousness | Base | example | AdverseEventSeriousness | 📍4.0.1 | FHIR Std. |
AdverseEvent.severity | Base | required | AdverseEventSeverity | 📍4.0.1 | FHIR Std. |
AdverseEvent.outcome | Base | required | AdverseEventOutcome | 📍4.0.1 | FHIR Std. |
Id | Grade | Path(s) | Description | Expression |
adjustment-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Adjustment', then only mitigation adjustment must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49157' implies (extension('adjustment').exists() and not extension('procedure').exists() and not extension('drug').exists())
|
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
ctcae-grade | error | AdverseEvent.extension:ctcGrade | The CTCAE grade must be between 1 and 5, inclusive. |
valueInteger() >= 1 and valueInteger() <= 5
|
dom-2 | error | AdverseEvent | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
dom-3 | error | AdverseEvent | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
dom-4 | error | AdverseEvent | 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 | AdverseEvent | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
dom-6 | best practice | AdverseEvent | A resource should have narrative for robust management |
text.`div`.exists()
|
drug-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Drug', then only mitigation drug must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49158' implies (extension('drug').exists() and not extension('procedure').exists() and not extension('adjustment').exists())
|
ele-1 | error | AdverseEvent.implicitRules, AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.actuality, AdverseEvent.category, AdverseEvent.event, AdverseEvent.subject, AdverseEvent.encounter, AdverseEvent.detected, AdverseEvent.recordedDate, AdverseEvent.resultingCondition, AdverseEvent.location, AdverseEvent.seriousness, AdverseEvent.severity, AdverseEvent.outcome, AdverseEvent.recorder, AdverseEvent.contributor | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
ext-1 | error | AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
procedural-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Procedure', then only mitigation procedure must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49159' implies (extension('procedure').exists() and not extension('adjustment').exists() and not extension('drug').exists())
|
This structure is derived from AdverseEvent
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
Id | Grade | Path(s) | Description | Expression |
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
C | 0..* | AdverseEvent(4.0.1) | Medical care, research study or other healthcare event causing physical injury Constraints: ae-req-1, ae-req-2, ae-req-3, ae-req-4, ae-req-5, ae-req-6, ae-req-7 | ||||
![]() ![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() |
C | 1..1 | integer | CTCAE Grade URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade Constraints: ext-1, ctcae-grade | ||||
![]() ![]() ![]() ![]() |
C | 0..* | (Complex) | Adverse Event Mitigation Action(s) URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation Constraints: ext-1, drug-mitigation, adjustment-mitigation, procedural-mitigation | ||||
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Identifier | Business identifier for the event | ||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | actual | potential Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential. Required Pattern: actual | ||||
![]() ![]() ![]() |
Σ | 0..* | CodeableConcept | Not used in this profile Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational. | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of the event itself in relation to the subject Binding: CTCAdverseEvents (0.2.0) (required) | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Cancer Patient Profile(0.2.0)) | Subject impacted by event | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | When the event occurred | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Location) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient. | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject. | ||||
![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | resolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown Binding: AdverseEventOutcome (required): TODO (and should this be required?). | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Device) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The suspected agent causing the adverse event | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Medication Administration Profile(0.2.0) | Radiotherapy Summary Profile(0.2.0) | Surgical Procedure Profile(0.2.0)) | Refers to the specific entity that caused the adverse event | ||||
![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Information on the possible cause of the event | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1 | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Assessment of if the entity caused the event Binding: AdverseEventCausalityAssessment (example): Codes for the assessment of whether the entity caused the event. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | AdverseEvent.suspectEntity.causalityProductRelatedness | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Practitioner | PractitionerRole) | AdverseEvent.suspectEntity.causalityAuthor | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | ProbabilityScale | Bayesian | Checklist Binding: AdverseEventCausalityMethod (example): TODO. | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference) | AdverseEvent.subjectMedicalHistory | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(DocumentReference) | AdverseEvent.referenceDocument | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(ResearchStudy) | AdverseEvent.study | ||||
![]() |
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
AdverseEvent.actuality | Base | required | AdverseEventActuality | 📍4.0.1 | FHIR Std. |
AdverseEvent.category | Base | extensible | AdverseEventCategory | 📍4.0.1 | FHIR Std. |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
AdverseEvent.seriousness | Base | example | AdverseEventSeriousness | 📍4.0.1 | FHIR Std. |
AdverseEvent.severity | Base | required | AdverseEventSeverity | 📍4.0.1 | FHIR Std. |
AdverseEvent.outcome | Base | required | AdverseEventOutcome | 📍4.0.1 | FHIR Std. |
AdverseEvent.suspectEntity.causality.assessment | Base | example | AdverseEventCausalityAssessment | 📍4.0.1 | FHIR Std. |
AdverseEvent.suspectEntity.causality.method | Base | example | AdverseEventCausalityMethod | 📍4.0.1 | FHIR Std. |
Id | Grade | Path(s) | Description | Expression |
adjustment-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Adjustment', then only mitigation adjustment must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49157' implies (extension('adjustment').exists() and not extension('procedure').exists() and not extension('drug').exists())
|
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
ctcae-grade | error | AdverseEvent.extension:ctcGrade | The CTCAE grade must be between 1 and 5, inclusive. |
valueInteger() >= 1 and valueInteger() <= 5
|
dom-2 | error | AdverseEvent | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
dom-3 | error | AdverseEvent | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
dom-4 | error | AdverseEvent | 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 | AdverseEvent | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
dom-6 | best practice | AdverseEvent | A resource should have narrative for robust management |
text.`div`.exists()
|
drug-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Drug', then only mitigation drug must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49158' implies (extension('drug').exists() and not extension('procedure').exists() and not extension('adjustment').exists())
|
ele-1 | error | AdverseEvent.meta, AdverseEvent.implicitRules, AdverseEvent.language, AdverseEvent.text, AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.identifier, AdverseEvent.actuality, AdverseEvent.category, AdverseEvent.event, AdverseEvent.subject, AdverseEvent.encounter, AdverseEvent.date, AdverseEvent.detected, AdverseEvent.recordedDate, AdverseEvent.resultingCondition, AdverseEvent.location, AdverseEvent.seriousness, AdverseEvent.severity, AdverseEvent.outcome, AdverseEvent.recorder, AdverseEvent.contributor, AdverseEvent.suspectEntity, AdverseEvent.suspectEntity.extension, AdverseEvent.suspectEntity.modifierExtension, AdverseEvent.suspectEntity.instance, AdverseEvent.suspectEntity.causality, AdverseEvent.suspectEntity.causality.extension, AdverseEvent.suspectEntity.causality.modifierExtension, AdverseEvent.suspectEntity.causality.assessment, AdverseEvent.suspectEntity.causality.productRelatedness, AdverseEvent.suspectEntity.causality.author, AdverseEvent.suspectEntity.causality.method, AdverseEvent.subjectMedicalHistory, AdverseEvent.referenceDocument, AdverseEvent.study | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
ext-1 | error | AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.suspectEntity.extension, AdverseEvent.suspectEntity.modifierExtension, AdverseEvent.suspectEntity.causality.extension, AdverseEvent.suspectEntity.causality.modifierExtension | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
procedural-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Procedure', then only mitigation procedure must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49159' implies (extension('procedure').exists() and not extension('adjustment').exists() and not extension('drug').exists())
|
This structure is derived from AdverseEvent
Summary
Mandatory: 2 elements
Must-Support: 1 element
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Key Elements View
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
---|---|---|---|---|
![]() ![]() |
C | 0..* | AdverseEvent(4.0.1) | Medical care, research study or other healthcare event causing physical injury Constraints: ae-req-1, ae-req-2, ae-req-3, ae-req-4, ae-req-5, ae-req-6, ae-req-7 |
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1 | |
![]() ![]() ![]() ![]() |
C | 1..1 | integer | CTCAE Grade URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade Constraints: ext-1, ctcae-grade |
![]() ![]() ![]() ![]() |
C | 0..* | (Complex) | Adverse Event Mitigation Action(s) URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation Constraints: ext-1, drug-mitigation, adjustment-mitigation, procedural-mitigation |
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1 |
![]() ![]() ![]() |
?!Σ | 1..1 | code | actual | potential Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential. Required Pattern: actual |
![]() ![]() ![]() |
Σ | 0..* | CodeableConcept | Not used in this profile Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational. |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of the event itself in relation to the subject Binding: CTCAdverseEvents (0.2.0) (required) |
![]() ![]() ![]() |
Σ | 1..1 | Reference(Cancer Patient Profile(0.2.0)) | Subject impacted by event |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Location) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient. |
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject. |
![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | resolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown Binding: AdverseEventOutcome (required): TODO (and should this be required?). |
![]() ![]() ![]() |
Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Not used in this profile |
![]() ![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Device) | Not used in this profile |
![]() |
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.actuality | Base | required | AdverseEventActuality | 📍4.0.1 | FHIR Std. |
AdverseEvent.category | Base | extensible | AdverseEventCategory | 📍4.0.1 | FHIR Std. |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
AdverseEvent.seriousness | Base | example | AdverseEventSeriousness | 📍4.0.1 | FHIR Std. |
AdverseEvent.severity | Base | required | AdverseEventSeverity | 📍4.0.1 | FHIR Std. |
AdverseEvent.outcome | Base | required | AdverseEventOutcome | 📍4.0.1 | FHIR Std. |
Id | Grade | Path(s) | Description | Expression |
adjustment-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Adjustment', then only mitigation adjustment must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49157' implies (extension('adjustment').exists() and not extension('procedure').exists() and not extension('drug').exists())
|
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
ctcae-grade | error | AdverseEvent.extension:ctcGrade | The CTCAE grade must be between 1 and 5, inclusive. |
valueInteger() >= 1 and valueInteger() <= 5
|
dom-2 | error | AdverseEvent | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
dom-3 | error | AdverseEvent | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
dom-4 | error | AdverseEvent | 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 | AdverseEvent | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
dom-6 | best practice | AdverseEvent | A resource should have narrative for robust management |
text.`div`.exists()
|
drug-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Drug', then only mitigation drug must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49158' implies (extension('drug').exists() and not extension('procedure').exists() and not extension('adjustment').exists())
|
ele-1 | error | AdverseEvent.implicitRules, AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.actuality, AdverseEvent.category, AdverseEvent.event, AdverseEvent.subject, AdverseEvent.encounter, AdverseEvent.detected, AdverseEvent.recordedDate, AdverseEvent.resultingCondition, AdverseEvent.location, AdverseEvent.seriousness, AdverseEvent.severity, AdverseEvent.outcome, AdverseEvent.recorder, AdverseEvent.contributor | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
ext-1 | error | AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
procedural-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Procedure', then only mitigation procedure must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49159' implies (extension('procedure').exists() and not extension('adjustment').exists() and not extension('drug').exists())
|
Differential View
This structure is derived from AdverseEvent
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
Id | Grade | Path(s) | Description | Expression |
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
Snapshot View
Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
---|---|---|---|---|---|---|---|---|
![]() ![]() |
C | 0..* | AdverseEvent(4.0.1) | Medical care, research study or other healthcare event causing physical injury Constraints: ae-req-1, ae-req-2, ae-req-3, ae-req-4, ae-req-5, ae-req-6, ae-req-7 | ||||
![]() ![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() ![]() |
1..* | Extension | Extension Slice: Unordered, Open by value:url Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() |
C | 1..1 | integer | CTCAE Grade URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade Constraints: ext-1, ctcae-grade | ||||
![]() ![]() ![]() ![]() |
C | 0..* | (Complex) | Adverse Event Mitigation Action(s) URL: http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation Constraints: ext-1, drug-mitigation, adjustment-mitigation, procedural-mitigation | ||||
![]() ![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored Constraints: ext-1 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Identifier | Business identifier for the event | ||||
![]() ![]() ![]() |
?!Σ | 1..1 | code | actual | potential Binding: AdverseEventActuality (required): Overall nature of the adverse event, e.g. real or potential. Required Pattern: actual | ||||
![]() ![]() ![]() |
Σ | 0..* | CodeableConcept | Not used in this profile Binding: AdverseEventCategory (extensible): Overall categorization of the event, e.g. product-related or situational. | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Type of the event itself in relation to the subject Binding: CTCAdverseEvents (0.2.0) (required) | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Cancer Patient Profile(0.2.0)) | Subject impacted by event | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Encounter) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | When the event occurred | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | dateTime | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Location) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeriousness (example): Overall seriousness of this event for the patient. | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Not used in this profile Binding: AdverseEventSeverity (required): The severity of the adverse event itself, in direct relation to the subject. | ||||
![]() ![]() ![]() |
SΣ | 0..1 | CodeableConcept | resolved | recovering | ongoing | resolvedWithSequelae | fatal | unknown Binding: AdverseEventOutcome (required): TODO (and should this be required?). | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Practitioner | PractitionerRole | Device) | Not used in this profile | ||||
![]() ![]() ![]() |
Σ | 0..* | BackboneElement | The suspected agent causing the adverse event | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1 | ||||
![]() ![]() ![]() ![]() |
Σ | 1..1 | Reference(Medication Administration Profile(0.2.0) | Radiotherapy Summary Profile(0.2.0) | Surgical Procedure Profile(0.2.0)) | Refers to the specific entity that caused the adverse event | ||||
![]() ![]() ![]() ![]() |
Σ | 0..* | BackboneElement | Information on the possible cause of the event | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Constraints: ext-1 | |||||
![]() ![]() ![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized Constraints: ext-1 | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Assessment of if the entity caused the event Binding: AdverseEventCausalityAssessment (example): Codes for the assessment of whether the entity caused the event. | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | AdverseEvent.suspectEntity.causalityProductRelatedness | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | Reference(Practitioner | PractitionerRole) | AdverseEvent.suspectEntity.causalityAuthor | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | ProbabilityScale | Bayesian | Checklist Binding: AdverseEventCausalityMethod (example): TODO. | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(Condition | Observation | AllergyIntolerance | FamilyMemberHistory | Immunization | Procedure | Media | DocumentReference) | AdverseEvent.subjectMedicalHistory | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(DocumentReference) | AdverseEvent.referenceDocument | ||||
![]() ![]() ![]() |
Σ | 0..* | Reference(ResearchStudy) | AdverseEvent.study | ||||
![]() |
Path | Status | Usage | ValueSet | Version | Source |
AdverseEvent.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
AdverseEvent.actuality | Base | required | AdverseEventActuality | 📍4.0.1 | FHIR Std. |
AdverseEvent.category | Base | extensible | AdverseEventCategory | 📍4.0.1 | FHIR Std. |
AdverseEvent.event | Base | required | CTC Adverse Events | 📍0.2.0 | This IG |
AdverseEvent.seriousness | Base | example | AdverseEventSeriousness | 📍4.0.1 | FHIR Std. |
AdverseEvent.severity | Base | required | AdverseEventSeverity | 📍4.0.1 | FHIR Std. |
AdverseEvent.outcome | Base | required | AdverseEventOutcome | 📍4.0.1 | FHIR Std. |
AdverseEvent.suspectEntity.causality.assessment | Base | example | AdverseEventCausalityAssessment | 📍4.0.1 | FHIR Std. |
AdverseEvent.suspectEntity.causality.method | Base | example | AdverseEventCausalityMethod | 📍4.0.1 | FHIR Std. |
Id | Grade | Path(s) | Description | Expression |
adjustment-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Adjustment', then only mitigation adjustment must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49157' implies (extension('adjustment').exists() and not extension('procedure').exists() and not extension('drug').exists())
|
ae-req-1 | error | AdverseEvent | The subject element is required and must be provided. |
subject.exists() and subject.resolve().is(Patient)
|
ae-req-2 | error | AdverseEvent | The date element is required and must be provided. |
date.exists() and date.hasValue()
|
ae-req-3 | error | AdverseEvent | The event element is required and must be provided. |
event.exists() and event.coding.exists()
|
ae-req-4 | error | AdverseEvent | The CTC Grade extension is required and must be provided. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-ctc-grade').exists()
|
ae-req-5 | error | AdverseEvent | The outcome is required and must be provided. |
outcome.exists() and outcome.coding.exists()
|
ae-req-6 | error | AdverseEvent | If suspectedEntity is provided, then at least one instance must exist. |
suspectEntity.exists() implies (suspectEntity.count() > 0 and suspectEntity.instance.exists())
|
ae-req-7 | error | AdverseEvent | If adverseEventMitigation extension is provided, then at least one instance must exist. |
extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').exists() implies extension('http://onconova.github.io/fhir/StructureDefinition/onconova-ext-adverse-event-mitigation').count() > 0
|
ctcae-grade | error | AdverseEvent.extension:ctcGrade | The CTCAE grade must be between 1 and 5, inclusive. |
valueInteger() >= 1 and valueInteger() <= 5
|
dom-2 | error | AdverseEvent | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
dom-3 | error | AdverseEvent | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
dom-4 | error | AdverseEvent | 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 | AdverseEvent | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
dom-6 | best practice | AdverseEvent | A resource should have narrative for robust management |
text.`div`.exists()
|
drug-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Drug', then only mitigation drug must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49158' implies (extension('drug').exists() and not extension('procedure').exists() and not extension('adjustment').exists())
|
ele-1 | error | AdverseEvent.meta, AdverseEvent.implicitRules, AdverseEvent.language, AdverseEvent.text, AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.identifier, AdverseEvent.actuality, AdverseEvent.category, AdverseEvent.event, AdverseEvent.subject, AdverseEvent.encounter, AdverseEvent.date, AdverseEvent.detected, AdverseEvent.recordedDate, AdverseEvent.resultingCondition, AdverseEvent.location, AdverseEvent.seriousness, AdverseEvent.severity, AdverseEvent.outcome, AdverseEvent.recorder, AdverseEvent.contributor, AdverseEvent.suspectEntity, AdverseEvent.suspectEntity.extension, AdverseEvent.suspectEntity.modifierExtension, AdverseEvent.suspectEntity.instance, AdverseEvent.suspectEntity.causality, AdverseEvent.suspectEntity.causality.extension, AdverseEvent.suspectEntity.causality.modifierExtension, AdverseEvent.suspectEntity.causality.assessment, AdverseEvent.suspectEntity.causality.productRelatedness, AdverseEvent.suspectEntity.causality.author, AdverseEvent.suspectEntity.causality.method, AdverseEvent.subjectMedicalHistory, AdverseEvent.referenceDocument, AdverseEvent.study | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
ext-1 | error | AdverseEvent.extension, AdverseEvent.extension:ctcGrade, AdverseEvent.extension:adverseEventMitigation, AdverseEvent.modifierExtension, AdverseEvent.suspectEntity.extension, AdverseEvent.suspectEntity.modifierExtension, AdverseEvent.suspectEntity.causality.extension, AdverseEvent.suspectEntity.causality.modifierExtension | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
procedural-mitigation | error | AdverseEvent.extension:adverseEventMitigation | If the mitigation category is 'Procedure', then only mitigation procedure must be specified. |
extension('category').valueCodeableConcept.coding.code = 'C49159' implies (extension('procedure').exists() and not extension('adjustment').exists() and not extension('drug').exists())
|
This structure is derived from AdverseEvent
Summary
Mandatory: 2 elements
Must-Support: 1 element
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Other representations of profile: CSV, Excel, Schematron