cdac.medinfo.sdk.hl7282.baselibs.segments

## Class EVN

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.segments.Segment
  - - cdac.medinfo.sdk.hl7282.baselibs.segments.EVN

- All Implemented Interfaces:
    ISegment

      public class EVN
      extends Segment

  EVN - Event Type Segment

  The EVN segment is used to communicate necessary trigger event information to receiving applications. Valid event types for all chapters are contained in HL7 Table 0003 - Event Type.

  Represents an HL7 EVN message segment. This segment has the following fields:

  EVN-1: Event Type Code (ID)Withdrawn
  EVN-2: Recorded Date/Time (DTM)Required
  EVN-3: Date/Time Planned Event (DTM)Optional
  EVN-4: Event Reason Code (CWE)Optional
  EVN-5: Operator ID (XCN)Optional
  EVN-6: Event Occurred (DTM)Optional
  EVN-7: Event Facility (HD)Optional

  This class provides mechanism to validate message against HL7 v 2.8.2 standard. The class provides accessors & mutators for the elements mentioned above. The class has validate method which validates Message against HL7 v 2.8.2 standard.

  User can also create Segment through `SegmentFactory`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EVN()` Constructs the EVN segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addOperatorID(java.lang.String strIDNumber, FN objFamilyName, java.lang.String strGivenName, java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof, java.lang.String strSuffix, java.lang.String strPrefix, java.lang.String strSourceTable, HD objAssigningAuthority, java.lang.String strNameTypeCode, java.lang.String strIdentifierCheckDigit, java.lang.String strCheckDigitScheme, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, CWE objNameContext, java.lang.String strNameAssemblyOrder, DTM objEffectiveDate, DTM objExpirationDate, java.lang.String strProfessionalSuffix, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepratment)` Set the Operator ID.
    `void` | `addOperatorID(XCN objOperatorID)` Sets the Operator ID.
    `DTM` | `getDateTimePlannedEvent()` Retrieves the Date Time Planned Event.
    `HD` | `getEventFacility()` Retrieves the Event Facility.
    `DTM` | `getEventOccurred()` Retrieves the Event Occurred.
    `CWE` | `getEventReasonCode()` Retrieves the Event Reason Code.
    `ISingleCollection<XCN>` | `getOperatorID()` Retrieves the Operator ID.
    `DTM` | `getRecordedDateTime()` Retrieves the Recorded Date Time.
    `void` | `setDateTimePlannedEvent(DTM objDateTimePlannedEvent)` set the Date Time Planned Event.
    `void` | `setDateTimePlannedEvent(java.lang.String strDateTimePlannedEvent)` Set the Date Time Planned Event.
    `void` | `setEventFacility(HD objeventFacility)` Set the Event Facility.
    `void` | `setEventFacility(java.lang.String strNamespaceID, java.lang.String strUniversalID, java.lang.String strUniversalIDType)` Set the Event Facility.
    `void` | `setEventOccurred(DTM objeventOccurred)` Sets the Event Occurred.
    `void` | `setEventOccurred(java.lang.String strEventOccurred)` Set the Event Occurred.
    `void` | `setEventReasonCode(CWE objEventReasonCode)` set the Event Reason Code.
    `void` | `setEventReasonCode(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Set the Event Reason Code.
    `void` | `setOperatorID(ISingleCollection<XCN> objOpeartorID)` This sets the Operator ID.
    `void` | `setRecordedDateTime(DTM objrecordedDateTime)` Set the Recorded Date Time.
    `void` | `setRecordedDateTime(java.lang.String strRecordedDateTime)` Set the Recorded Date Time.
    `boolean` | `validate()` Validates HL7 Message objects .

    - ### Methods inherited from class cdac.medinfo.sdk.hl7282.baselibs.segments.Segment

      `addUnRecognizedField, dumpSegment, getFields, getName, getUnrecognizedFields, moveToNextSegment, parse, removeDataElement, removeDataElement, serialize, setName, setUnRecognizedField, updateDataElement, updateDataElement, writeToXML`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EVN

          public EVN()

      Constructs the EVN segment.

  - ### Method Detail

    - #### getDateTimePlannedEvent

          public DTM getDateTimePlannedEvent()

      Retrieves the Date Time Planned Event. This field contains the date/time of the event is plan.
      Returns:
        DTM - dateTimePlannedEvent

    - #### getEventFacility

          public HD getEventFacility()

      Retrieves the Event Facility. This field identify the actual facility where the event occurr and differentiate from the sending facility (MSH-4).
      Returns:
        HD - eventFacility

    - #### getEventOccurred

          public DTM getEventOccurred()

      Retrieves the Event Occurred. This field contains the date/time of the event actually occurr.
      Returns:
        DTM - eventOccurred

    - #### getEventReasonCode

          public CWE getEventReasonCode()

      Retrieves the Event Reason Code. This field contains the reason for this event.
      Returns:
        String - eventReasonCode

    - #### getOperatorID

          public ISingleCollection<XCN> getOperatorID()

      Retrieves the Operator ID. This field identify the individual, responsible for triggering the event.
      Returns:
        ISingleCollection - operatorID

    - #### getRecordedDateTime

          public DTM getRecordedDateTime()

      Retrieves the Recorded Date Time.
      Returns:
        DTM - recordedDateTime

    - #### setRecordedDateTime

          public void setRecordedDateTime(java.lang.String strRecordedDateTime)

      Set the Recorded Date Time.
      Parameters:
        `strRecordedDateTime` - Specifies recorded date time.

    - #### setRecordedDateTime

          public void setRecordedDateTime(DTM objrecordedDateTime)

      Set the Recorded Date Time.
      Parameters:
        `objrecordedDateTime` - object of Recorded Date Time.

    - #### setDateTimePlannedEvent

          public void setDateTimePlannedEvent(java.lang.String strDateTimePlannedEvent)

      Set the Date Time Planned Event. This field contains the date/time of the event is plan.
      Parameters:
        `strDateTimePlannedEvent` - This field contains the date/time that the event is planned.

    - #### setDateTimePlannedEvent

          public void setDateTimePlannedEvent(DTM objDateTimePlannedEvent)

      set the Date Time Planned Event.
      Parameters:
        `objDateTimePlannedEvent` - This field contains the date/time that the event is planned.

    - #### setEventReasonCode

          public void setEventReasonCode(java.lang.String strIdentifier,
                                java.lang.String strText,
                                java.lang.String strNameOfCodingSystem,
                                java.lang.String strAlternateIdentifier,
                                java.lang.String strAlternateText,
                                java.lang.String strNameOfAlternateCodingSystem,
                                java.lang.String strCodingSystemVersionID,
                                java.lang.String strAlternateCodingSystemVersionId,
                                java.lang.String strOriginalText,
                                java.lang.String strSecondAlternateIdentifier,
                                java.lang.String strSecondAlternateText,
                                java.lang.String strNameofSecondAlternateCodingSystem,
                                java.lang.String strSecondAlternateCodingSystemVersionID,
                                java.lang.String strCodingSystemOID,
                                java.lang.String strValueSetOID,
                                java.lang.String strValueSetVersionID,
                                java.lang.String strAlternateCodingSystemOID,
                                java.lang.String strAlternateValueSetOID,
                                java.lang.String strAlternateValueSetVersionID,
                                java.lang.String strSecondAlternateCodingSystemOID,
                                java.lang.String strSecondAlternateValueSetOID,
                                java.lang.String strSecondAlternateValueSetVersionID)

      Set the Event Reason Code. This field contains the reason for this event.
      Parameters:
        `strIdentifier` - Specifies of characters (the code) that uniquely identifies the item being referenced.
        `strText` - Specifies The descriptive or textual name of the identifier, e.g., myocardial infarction.
        `strNameOfCodingSystem` - Identifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies an alternate sequence of characters (the code) that uniquely identifies the item being referenced.
        `strAlternateText` - Specifies the descriptive or textual name of the alternate identifier. See usage note in section introduction.
        `strNameOfAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - A sequence of characters that uniquely identifies a second alternate code.
        `strAlternateCodingSystemVersionId` - This component carries the version for the coding system identified by components 4-6.
        `strOriginalText` - The text as seen and/or selected by the user who entered the data.
        `strSecondAlternateIdentifier` - A sequence of characters that uniquely identifies a second alternate code.
        `strSecondAlternateText` - The descriptive or textual name of the alternate identifier.
        `strNameofSecondAlternateCodingSystem` - Identifies the coding scheme being used in the alternate identifier component.
        `strSecondAlternateCodingSystemVersionID` - This component carries the version for the coding system identified by components 10-12.
        `strCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.3.
        `strValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.1 is obtained.
        `strValueSetVersionID` - This component carries the version for the value set identified by CWE.15. The version is a date. The date is the date/time that the value set being used was published.
        `strAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.6.
        `strAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.4 is obtained.
        `strAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.18. The version is a date.
        `strSecondAlternateCodingSystemOID` - This component contains the ISO Object Identifier (OID) for the coding system or value set named in CWE.12.
        `strSecondAlternateValueSetOID` - This component contains the ISO Object Identifier (OID) to allow identification of the value set from which the value in CWE.10 is obtained.
        `strSecondAlternateValueSetVersionID` - This component carries the version for the value set identified by CWE.21. The version is a date.

    - #### setEventReasonCode

          public void setEventReasonCode(CWE objEventReasonCode)

      set the Event Reason Code.
      Parameters:
        `objEventReasonCode` - object of Event Reason Code.

    - #### addOperatorID

          public void addOperatorID(java.lang.String strIDNumber,
                           FN objFamilyName,
                           java.lang.String strGivenName,
                           java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof,
                           java.lang.String strSuffix,
                           java.lang.String strPrefix,
                           java.lang.String strSourceTable,
                           HD objAssigningAuthority,
                           java.lang.String strNameTypeCode,
                           java.lang.String strIdentifierCheckDigit,
                           java.lang.String strCheckDigitScheme,
                           java.lang.String strIdentifierTypeCode,
                           HD objAssigningFacility,
                           java.lang.String strNameRepresentationCode,
                           CWE objNameContext,
                           java.lang.String strNameAssemblyOrder,
                           DTM objEffectiveDate,
                           DTM objExpirationDate,
                           java.lang.String strProfessionalSuffix,
                           CWE objAssigningJurisdiction,
                           CWE objAssigningAgencyOrDepratment)

      Set the Operator ID. This field identify the individual, responsible for triggering the event.
      Parameters:
        `strIDNumber` - Refers to the coded ID according to a user-defined table
        `objFamilyName` - Specifies the surname of a person.
        `strGivenName` - Specifies First name.
        `strSecondAndFurtherGivenNamesOrInitialsThereof` - Specifies multiple middle names that may be included by separating them with spaces.
        `strSuffix` - Used to specify a name suffix (e.g., Jr. or III).
        `strPrefix` - Used to specify a name prefix (e.g., Dr.).
        `strSourceTable` - Used as the HL7 identifier for the user-defined table of values for this component. [Refer User-defined Table 0297 - CN ID.]
        `objAssigningAuthority` - Specifies a unique identifier of the system (or organization or agency of department) that creates the data. [Refer User-defined Table 0363 - Assigning authority]
        `strNameTypeCode` - Specifies a code that represents the type of name.
        `strIdentifierCheckDigit` - Specifies part of the identifying number used in the sending application.
        `strCheckDigitScheme` - Specifies the code identifying the check digit scheme employed.[Refer HL7 Table 0061 - Check digit scheme].
        `strIdentifierTypeCode` - Specifies A code corresponding to the type of identifier.[Refer HL7 Table 0203 - Identifier type].
        `objAssigningFacility` - Specifies the place or location identifier where the identifier was first assigned to the person
        `strNameRepresentationCode` - provides an indication of the representation provided by the data item.
        `objNameContext` - Designates the context in which a name is used. [Refer User-defined Table 0448 ]
        `strNameAssemblyOrder` - Specifies a code that represents the preferred display order of the components of this person name. Suggested values are G,F[Refer table 0444.]
        `objEffectiveDate` - Specifies the first date, if known, on which the address is valid and active.
        `objExpirationDate` - Specifies the last date, if known, on which the address is valid and active.
        `strProfessionalSuffix` - Used to specify an abbreviation, or a string of abbreviations, denoting qualifications that support the person's profession, (e.g., licenses).
        `objAssigningJurisdiction` - Specifies the geo-political body that assigned the identifier.
        `objAssigningAgencyOrDepratment` - Specifies the agency or department that assigned the identifier

    - #### addOperatorID

          public void addOperatorID(XCN objOperatorID)

      Sets the Operator ID.
      Parameters:
        `objOperatorID` - object of Operator ID.

    - #### setOperatorID

          public void setOperatorID(ISingleCollection<XCN> objOpeartorID)

      This sets the Operator ID.
      Parameters:
        `objOpeartorID` - Collection of Operator ID.

    - #### setEventOccurred

          public void setEventOccurred(java.lang.String strEventOccurred)

      Set the Event Occurred. This field contains the date/time of the event actually occurr.
      Parameters:
        `strEventOccurred` - The date/time that the event actually occurred.

    - #### setEventOccurred

          public void setEventOccurred(DTM objeventOccurred)

      Sets the Event Occurred.
      Parameters:
        `objeventOccurred` - object of Event Occurred.

    - #### setEventFacility

          public void setEventFacility(java.lang.String strNamespaceID,
                              java.lang.String strUniversalID,
                              java.lang.String strUniversalIDType)

      Set the Event Facility. This field identify the actual facility where the event occurr and differentiate from the sending facility (MSH-4).
      Parameters:
        `strNamespaceID` - Specifies Specifies the HL7 identifier for the user-defined table of values for this component.[Refer Table No.300]
        `strUniversalID` - Specifies a string formatted according to the scheme defined by the component, (UID type).
        `strUniversalIDType` - Governs the interpretation of the strUniversalId.

    - #### setEventFacility

          public void setEventFacility(HD objeventFacility)

      Set the Event Facility. This field identify the actual facility where the event occurr and differentiate from the sending facility (MSH-4).
      Parameters:
        `objeventFacility` - object of Event Facility.

    - #### validate

          public boolean validate()
                           throws InvalidSegmentException

      Validates HL7 Message objects . Validate method checks for validation each and every segments in side the Message object against specified message Structure. Validation chcecks include optionality of segment or group. It also verifies the number of times segment or group is repeated in message. e.g {PSH} while parsing PSH segment validate method will check for its mandatory presence. [PSH] in this case validate will throw exception if one tries to enter more than one PSH segment.
      Specified by:
        `validate` in interface `ISegment`
      Overrides:
        `validate` in class `Segment`
      Returns:
        boolean - true or false.
      Throws:
        `InvalidSegmentException` - If Segment Validation fails