R6 Ballot (2nd Draft)

Publish-box (todo)

Adverseevent.shex

Patient Care Work GroupMaturity Level: N/AStandards Status: InformativeCompartments: Patient, Practitioner, RelatedPerson

Raw ShEx

ShEx statement for adverseevent

PREFIX fhir: <http://hl7.org/fhir/> 
PREFIX fhirvs: <http://hl7.org/fhir/ValueSet/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> 
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> 

IMPORT <code.shex>
IMPORT <Group.shex>
IMPORT <Period.shex>
IMPORT <Device.shex>
IMPORT <Patient.shex>
IMPORT <boolean.shex>
IMPORT <dateTime.shex>
IMPORT <Location.shex>
IMPORT <CareTeam.shex>
IMPORT <Reference.shex>
IMPORT <Encounter.shex>
IMPORT <Condition.shex>
IMPORT <Identifier.shex>
IMPORT <Annotation.shex>
IMPORT <Observation.shex>
IMPORT <Practitioner.shex>
IMPORT <Organization.shex>
IMPORT <RelatedPerson.shex>
IMPORT <ResearchStudy.shex>
IMPORT <DomainResource.shex>
IMPORT <CodeableConcept.shex>
IMPORT <BackboneElement.shex>
IMPORT <PractitionerRole.shex>
IMPORT <CodeableReference.shex>


start=@<AdverseEvent> AND {fhir:nodeRole [fhir:treeRoot]}

# An event that may be related to unintended effects on a patient or research participant
<AdverseEvent> EXTENDS @<DomainResource> CLOSED {   

    a [fhir:AdverseEvent]?;
    fhir:nodeRole [fhir:treeRoot]?;

    fhir:identifier @<OneOrMore_Identifier>?;  # Business identifier for the event
    fhir:status @<code> AND
    	{fhir:v @fhirvs:adverse-event-status};  # in-progress | completed | 
                                            # entered-in-error | unknown 
    fhir:actuality @<code> AND
    	{fhir:v @fhirvs:adverse-event-actuality};  # actual | potential
    fhir:category @<OneOrMore_CodeableConcept>?;  # wrong-patient | procedure-mishap | 
                                            # medication-mishap | device | 
                                            # unsafe-physical-environment | 
                                            # hospital-aquired-infection | 
                                            # wrong-body-site 
    fhir:code @<CodeableConcept>?;          # Event or incident that occurred or 
                                            # was averted 
    fhir:subject @<Reference> AND {fhir:link 
    			@<Group> OR 
    			@<Patient> OR 
    			@<Practitioner> OR 
    			@<RelatedPerson> ? };  # Subject impacted by event
    fhir:encounter @<Reference> AND {fhir:link 
    			@<Encounter> ? }?;  # The Encounter associated with the 
                                            # start of the AdverseEvent 
    fhir:cause @<dateTime>  OR 
    			@<Period>  ?;  # When the cause of the AdverseEvent 
                                            # occurred 
    fhir:effect @<dateTime>  OR 
    			@<Period>  ?;  # When the effect of the 
                                            # AdverseEvent occurred 
    fhir:detected @<dateTime>?;             # When the event was detected
    fhir:recordedDate @<dateTime>?;         # When the event was recorded
    fhir:resultingEffect @<OneOrMore_Reference_Condition_OR_Observation>?;  # Effect on the subject due to this 
                                            # event 
    fhir:location @<Reference> AND {fhir:link 
    			@<Location> ? }?;  # Location where adverse event 
                                            # occurred 
    fhir:seriousness @<CodeableConcept>?;   # Seriousness or gravity of the event
    fhir:outcome @<OneOrMore_CodeableConcept>?;  # Type of outcome from the adverse 
                                            # event 
    fhir:recorder @<Reference> AND {fhir:link 
    			@<Patient> OR 
    			@<Practitioner> OR 
    			@<PractitionerRole> OR 
    			@<RelatedPerson> ? }?;  # Who recorded the adverse event
    fhir:participant @<OneOrMore_AdverseEvent.participant>?;  # Who was involved in the adverse 
                                            # event or the potential adverse 
                                            # event and what they did 
    fhir:study @<OneOrMore_Reference_ResearchStudy>?;  # Research study that the subject is 
                                            # enrolled in 
    fhir:expectedInResearchStudy @<boolean>?;  # Considered likely or probable or 
                                            # anticipated in the research study 
    fhir:suspectEntity @<OneOrMore_AdverseEvent.suspectEntity>?;  # The suspected agent causing the 
                                            # adverse event 
    fhir:contributingFactor @<OneOrMore_CodeableReference>?;  # Contributing factors suspected to 
                                            # have increased the probability or 
                                            # severity of the adverse event 
    fhir:preventiveAction @<OneOrMore_CodeableReference>?;  # Preventive actions that 
                                            # contributed to avoiding the 
                                            # adverse event 
    fhir:mitigatingAction @<OneOrMore_CodeableReference>?;  # Ameliorating actions taken after 
                                            # the adverse event occurred in 
                                            # order to reduce the extent of harm 
    fhir:supportingInfo @<OneOrMore_CodeableReference>?;  # Subject medical history or 
                                            # document relevant to this adverse 
                                            # event 
    fhir:note @<OneOrMore_Annotation>?;     # Comment on adverse event
}  

# Information on the possible cause of the event
<AdverseEvent.suspectEntity.causality> EXTENDS @<BackboneElement> CLOSED {   
    fhir:assessmentMethod @<CodeableConcept>?;  # Method of evaluating the 
                                            # relatedness of the suspected 
                                            # entity to the event 
    fhir:entityRelatedness @<CodeableConcept>?;  # Result of the assessment regarding 
                                            # the relatedness of the suspected 
                                            # entity to the event 
    fhir:author @<Reference> AND {fhir:link 
    			@<Patient> OR 
    			@<Practitioner> OR 
    			@<PractitionerRole> OR 
    			@<RelatedPerson> ? }?;  # Author of the information on the 
                                            # possible cause of the event 
}  

# Who was involved in the adverse event or the potential adverse event and what they did
<AdverseEvent.participant> EXTENDS @<BackboneElement> CLOSED {   
    fhir:function @<CodeableConcept>?;      # Type of involvement
    fhir:actor @<Reference> AND {fhir:link 
    			@<CareTeam> OR 
    			@<Device> OR 
    			@<Organization> OR 
    			@<Patient> OR 
    			@<Practitioner> OR 
    			@<PractitionerRole> OR 
    			@<RelatedPerson> ? };  # Who was involved in the adverse 
                                            # event or the potential adverse 
                                            # event 
}  

# The suspected agent causing the adverse event
<AdverseEvent.suspectEntity> EXTENDS @<BackboneElement> CLOSED {   
    fhir:instance @<CodeableReference>;     # Refers to the specific entity that 
                                            # caused the adverse event 
    fhir:causality @<AdverseEvent.suspectEntity.causality>?;  # Information on the possible cause 
                                            # of the event 
}  

#---------------------- Cardinality Types (OneOrMore) -------------------

<OneOrMore_Identifier> CLOSED {
    rdf:first @<Identifier>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Identifier> 
}

<OneOrMore_CodeableConcept> CLOSED {
    rdf:first @<CodeableConcept>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_CodeableConcept> 
}

<OneOrMore_Reference_Condition_OR_Observation> CLOSED {
    rdf:first @<Reference> AND {fhir:link 
			@<Condition> OR 
			@<Observation> } ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Reference_Condition_OR_Observation> 
}

<OneOrMore_AdverseEvent.participant> CLOSED {
    rdf:first @<AdverseEvent.participant>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_AdverseEvent.participant> 
}

<OneOrMore_Reference_ResearchStudy> CLOSED {
    rdf:first @<Reference> AND {fhir:link 
			@<ResearchStudy> } ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Reference_ResearchStudy> 
}

<OneOrMore_AdverseEvent.suspectEntity> CLOSED {
    rdf:first @<AdverseEvent.suspectEntity>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_AdverseEvent.suspectEntity> 
}

<OneOrMore_CodeableReference> CLOSED {
    rdf:first @<CodeableReference>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_CodeableReference> 
}

<OneOrMore_Annotation> CLOSED {
    rdf:first @<Annotation>  ;
    rdf:rest [rdf:nil] OR @<OneOrMore_Annotation> 
}

#---------------------- Value Sets ------------------------

# Overall nature of the adverse event, e.g. real or potential.
fhirvs:adverse-event-actuality ["actual" "potential"]

# Codes identifying the lifecycle stage of an adverse event.
fhirvs:adverse-event-status ["in-progress" "completed" "entered-in-error" "unknown"]


Usage note: every effort has been made to ensure that the ShEx files are correct and useful, but they are not a normative part of the specification.