Class Encounter

  • All Implemented Interfaces:
    Visitable

    @Generated("com.ibm.fhir.tools.CodeGenerator")
    public class Encounter
    extends DomainResource
    An interaction between a patient and healthcare provider(s) for the purpose of providing healthcare service(s) or assessing the health status of a patient.

    Maturity level: FMM2 (Trial Use)

    • Method Detail

      • getIdentifier

        public java.util.List<Identifier> getIdentifier()
        Identifier(s) by which this encounter is known.
        Returns:
        An unmodifiable list containing immutable objects of type Identifier that may be empty.
      • getStatus

        public EncounterStatus getStatus()
        planned | arrived | triaged | in-progress | onleave | finished | cancelled +.
        Returns:
        An immutable object of type EncounterStatus that is non-null.
      • getStatusHistory

        public java.util.List<Encounter.StatusHistory> getStatusHistory()
        The status history permits the encounter resource to contain the status history without needing to read through the historical versions of the resource, or even have the server store them.
        Returns:
        An unmodifiable list containing immutable objects of type Encounter.StatusHistory that may be empty.
      • getClazz

        public Coding getClazz()
        Concepts representing classification of patient encounter such as ambulatory (outpatient), inpatient, emergency, home health or others due to local variations.
        Returns:
        An immutable object of type Coding that is non-null.
      • getClassHistory

        public java.util.List<Encounter.ClassHistory> getClassHistory()
        The class history permits the tracking of the encounters transitions without needing to go through the resource history. This would be used for a case where an admission starts of as an emergency encounter, then transitions into an inpatient scenario. Doing this and not restarting a new encounter ensures that any lab/diagnostic results can more easily follow the patient and not require re-processing and not get lost or cancelled during a kind of discharge from emergency to inpatient.
        Returns:
        An unmodifiable list containing immutable objects of type Encounter.ClassHistory that may be empty.
      • getType

        public java.util.List<CodeableConcept> getType()
        Specific type of encounter (e.g. e-mail consultation, surgical day-care, skilled nursing, rehabilitation).
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getServiceType

        public CodeableConcept getServiceType()
        Broad categorization of the service that is to be provided (e.g. cardiology).
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getPriority

        public CodeableConcept getPriority()
        Indicates the urgency of the encounter.
        Returns:
        An immutable object of type CodeableConcept that may be null.
      • getSubject

        public Reference getSubject()
        The patient or group present at the encounter.
        Returns:
        An immutable object of type Reference that may be null.
      • getEpisodeOfCare

        public java.util.List<Reference> getEpisodeOfCare()
        Where a specific encounter should be classified as a part of a specific episode(s) of care this field should be used. This association can facilitate grouping of related encounters together for a specific purpose, such as government reporting, issue tracking, association via a common problem. The association is recorded on the encounter as these are typically created after the episode of care and grouped on entry rather than editing the episode of care to append another encounter to it (the episode of care could span years).
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getBasedOn

        public java.util.List<Reference> getBasedOn()
        The request this encounter satisfies (e.g. incoming referral or procedure request).
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getParticipant

        public java.util.List<Encounter.Participant> getParticipant()
        The list of people responsible for providing the service.
        Returns:
        An unmodifiable list containing immutable objects of type Encounter.Participant that may be empty.
      • getAppointment

        public java.util.List<Reference> getAppointment()
        The appointment that scheduled this encounter.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getPeriod

        public Period getPeriod()
        The start and end time of the encounter.
        Returns:
        An immutable object of type Period that may be null.
      • getLength

        public Duration getLength()
        Quantity of time the encounter lasted. This excludes the time during leaves of absence.
        Returns:
        An immutable object of type Duration that may be null.
      • getReasonCode

        public java.util.List<CodeableConcept> getReasonCode()
        Reason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getReasonReference

        public java.util.List<Reference> getReasonReference()
        Reason the encounter takes place, expressed as a code. For admissions, this can be used for a coded admission diagnosis.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getDiagnosis

        public java.util.List<Encounter.Diagnosis> getDiagnosis()
        The list of diagnosis relevant to this encounter.
        Returns:
        An unmodifiable list containing immutable objects of type Encounter.Diagnosis that may be empty.
      • getAccount

        public java.util.List<Reference> getAccount()
        The set of accounts that may be used for billing for this Encounter.
        Returns:
        An unmodifiable list containing immutable objects of type Reference that may be empty.
      • getLocation

        public java.util.List<Encounter.Location> getLocation()
        List of locations where the patient has been during this encounter.
        Returns:
        An unmodifiable list containing immutable objects of type Encounter.Location that may be empty.
      • getServiceProvider

        public Reference getServiceProvider()
        The organization that is primarily responsible for this Encounter's services. This MAY be the same as the organization on the Patient record, however it could be different, such as if the actor performing the services was from an external organization (which may be billed seperately) for an external consultation. Refer to the example bundle showing an abbreviated set of Encounters for a colonoscopy.
        Returns:
        An immutable object of type Reference that may be null.
      • getPartOf

        public Reference getPartOf()
        Another Encounter of which this encounter is a part of (administratively or in time).
        Returns:
        An immutable object of type Reference that may be null.
      • accept

        public void accept​(java.lang.String elementName,
                           int elementIndex,
                           Visitor visitor)
        Description copied from interface: Visitable
        Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:
         if (visitor.preVisit(this)) {
             visitor.visitStart(elementName, elementIndex, this);
             if (visitor.visit(elementName, elementIndex, this)) {
                 // visit children
             }
             visitor.visitEnd(elementName, elementIndex, this);
             visitor.postVisit(this);
         }
         
        Specified by:
        accept in interface Visitable
        Specified by:
        accept in class AbstractVisitable
        Parameters:
        elementName - the name of the element in the context of this visit
        elementIndex - the index of the element in a list or -1 if it is not contained within a List
        visitor - the visitor to use
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object