cdac.medinfo.sdk.hl7282.baselibs.segments

## Class EDU

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

- All Implemented Interfaces:
    ISegment

      public class EDU
      extends Segment

  EDU - Educational Detail Segment

  The EDU segment adds detailed educational information to the staff member identified by the STF segment.

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

  EDU-1: Set ID _ EDU (SI)Required
  EDU-2: Academic Degree (CWE)Optional
  EDU-3: Academic Degree Program Date Range (DR)Optional
  EDU-4: Academic Degree Program Participation Date Range (DR)Optional
  EDU-5: Academic Degree Granted Date (DT)Optional
  EDU-6: School (XON)Optional
  EDU-7: School Type Code (CWE)Optional
  EDU-8: School Address (XAD)Optional
  EDU-9: Major Field of Study (CWE)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
    `EDU()` Constructs the EDU segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addMajorFieldofStudy(CWE objMajorFieldofStudy)` Add the Major Field of Study.
    `void` | `addMajorFieldofStudy(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)` Add the Major Field of Study.
    `CWE` | `getAcademicDegree()` Retrieves the Academic Degree.
    `DT` | `getAcademicDegreeGrantedDate()` Retrieves the Academic Degree Granted Date.
    `DR` | `getAcademicDegreeProgramDateRange()` Retrieves the Academic Degree Program Date Range.
    `DR` | `getAcademicDegreeProgramParticipationDateRange()` Retrieves the Academic Degree Program Participation Date Range.
    `ISingleCollection<CWE>` | `getMajorFieldofStudy()` Retrieves the Major Field of Study.
    `XON` | `getSchool()` Retrieves the School.
    `XAD` | `getSchoolAddress()` Retrieves the School Address.
    `CWE` | `getSchoolTypeCode()` Retrieves the School Type Code.
    `SI` | `getSetID_EDU()` Retrieves the Set ID EDU.
    `void` | `setAcademicDegree(CWE objAcademicDegree)` Set the Academic Degree.
    `void` | `setAcademicDegree(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 Academic Degree.
    `void` | `setAcademicDegreeGrantedDate(DT objAcademicDegreeGrantedDate)` Set the Academic Degree Granted Date.
    `void` | `setAcademicDegreeGrantedDate(java.lang.String strAcademicDegreeGrantedDate)` Set the Academic Degree Granted Date.
    `void` | `setAcademicDegreeProgramDateRange(DR objAcademicDegreeProgramDateRange)` Set the Academic Degree Program Date Range.
    `void` | `setAcademicDegreeProgramDateRange(DTM objRangeStartDateTime, DTM objRangeEndDateTime)` Set the Academic Degree Program Date Range.
    `void` | `setAcademicDegreeProgramParticipationDateRange(DR objAcademicDegreeProgramParticipationDateRange)` Set the Academic Degree Program Participation Date Range.
    `void` | `setAcademicDegreeProgramParticipationDateRange(DTM objRangeStartDateTime, DTM objRangeEndDateTime)` Set the Academic Degree Program Participation Date Range.
    `void` | `setMajorFieldofStudy(ISingleCollection<CWE> objMajorFieldofStudyList)` Add the Major Field of Study.
    `void` | `setSchool(java.lang.String strOrganizationName, CWE objOrganizationNameTypeCode, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, java.lang.String strOrganizationIdentifier)` Set the School.
    `void` | `setSchool(XON objSchool)` Set the School.
    `void` | `setSchoolAddress(SAD objStreetAddress, java.lang.String strOtherDesignation, java.lang.String strCity, java.lang.String strStateOrProvince, java.lang.String strZipOrPostalCode, java.lang.String strCountry, java.lang.String strAddressType, java.lang.String strOtherGeographicDesignation, CWE objCountyParishCode, CWE objCensusTract, java.lang.String strAddressRepresentationCode, DTM objEffectiveDate, DTM objExpirationDate, CWE objEXpirationReason, java.lang.String strTemporaryIndicator, java.lang.String strBadAddressIndicator, java.lang.String strAddressUsage, java.lang.String strAddressee, java.lang.String strComment, java.lang.String strPreferenceOrder, CWE objProtectionCode, EI objAddressIdentifier)` Set the School Address.
    `void` | `setSchoolAddress(XAD objSchoolAddress)` Set the School Address.
    `void` | `setSchoolTypeCode(CWE objSchoolTypeCode)` Set the School Type Code.
    `void` | `setSchoolTypeCode(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 School Type Code.
    `void` | `setSetID_EDU(SI objSetID_EDU)` Set the Set ID EDU.
    `void` | `setSetID_EDU(java.lang.String strSetID_EDU)` Set the Set ID EDU.
    `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

    - #### EDU

          public EDU()

      Constructs the EDU segment.

  - ### Method Detail

    - #### getAcademicDegree

          public CWE getAcademicDegree()

      Retrieves the Academic Degree. This field contains the standard classification award upon completion of a unified program of study.
      Returns:
        String - academicDegree

    - #### getAcademicDegreeGrantedDate

          public DT getAcademicDegreeGrantedDate()

      Retrieves the Academic Degree Granted Date. This field contains the date of the academic degree is grant to the staff member.
      Returns:
        String - academicDegreeGrantedDate

    - #### getAcademicDegreeProgramDateRange

          public DR getAcademicDegreeProgramDateRange()

      Retrieves the Academic Degree Program Date Range. This field contains the date range when the academic degree program take place.
      Returns:
        DR - academicDegreeProgramDateRange

    - #### getAcademicDegreeProgramParticipationDateRange

          public DR getAcademicDegreeProgramParticipationDateRange()

      Retrieves the Academic Degree Program Participation Date Range. This field contains the date range during which the staff member participated in the academic degree program.
      Returns:
        DR - academicDegreeProgramParticipationDateRange

    - #### getMajorFieldofStudy

          public ISingleCollection<CWE> getMajorFieldofStudy()

      Retrieves the Major Field of Study. This field contains the subject of academic study associated with the specific academic degree program pursued by the staff member as his/her area of specialization.
      Returns:
        ISingleCollection - majorFieldofStudy

    - #### getSchool

          public XON getSchool()

      Retrieves the School. This field contains the official name of the academic institution that granted the degree to the Staff Member.
      Returns:
        XON - school

    - #### getSchoolAddress

          public XAD getSchoolAddress()

      Retrieves the School Address. This field contains the postal address of the academic institution that granted the degree to the Staff Member.
      Returns:
        XAD - schoolAddress

    - #### getSchoolTypeCode

          public CWE getSchoolTypeCode()

      Retrieves the School Type Code. This field contains the categorization of the academic institution that granted the degree to the Staff Member.
      Returns:
        CWE - schoolTypeCode

    - #### getSetID_EDU

          public SI getSetID_EDU()

      Retrieves the Set ID EDU. This field contains the number that identify this transaction.
      Returns:
        String - setID_EDU

    - #### setSetID_EDU

          public void setSetID_EDU(java.lang.String strSetID_EDU)

      Set the Set ID EDU. This field contains the number that identify this transaction.
      Parameters:
        `strSetID_EDU` - This field contains the number that identifies transaction.

    - #### setSetID_EDU

          public void setSetID_EDU(SI objSetID_EDU)

      Set the Set ID EDU. This field contains the number that identify this transaction.
      Parameters:
        `objSetID_EDU` - Object of Set ID EDU.

    - #### setAcademicDegree

          public void setAcademicDegree(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 Academic Degree. This field contains the standard classification award upon completion of a unified program of study.
      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.

    - #### setAcademicDegree

          public void setAcademicDegree(CWE objAcademicDegree)

      Set the Academic Degree. This field contains the standard classification award upon completion of a unified program of study.
      Parameters:
        `objAcademicDegree` - Object of Academic Degree.

    - #### setAcademicDegreeProgramDateRange

          public void setAcademicDegreeProgramDateRange(DTM objRangeStartDateTime,
                                               DTM objRangeEndDateTime)

      Set the Academic Degree Program Date Range. This field contains the date range when the academic degree program take place.
      Parameters:
        `objRangeStartDateTime` - Specifies the earliest date/time (time stamp) in the specified range.
        `objRangeEndDateTime` - Specifies the latest date/time in the specified range.

    - #### setAcademicDegreeProgramDateRange

          public void setAcademicDegreeProgramDateRange(DR objAcademicDegreeProgramDateRange)

      Set the Academic Degree Program Date Range. This field contains the date range when the academic degree program take place.
      Parameters:
        `objAcademicDegreeProgramDateRange` - Object of Academic Degree Program Date Range.

    - #### setAcademicDegreeProgramParticipationDateRange

          public void setAcademicDegreeProgramParticipationDateRange(DTM objRangeStartDateTime,
                                                            DTM objRangeEndDateTime)

      Set the Academic Degree Program Participation Date Range. This field contains the date range during which the staff member participated in the academic degree program.
      Parameters:
        `objRangeStartDateTime` - Specifies the earliest date/time (time stamp) in the specified range.
        `objRangeEndDateTime` - Specifies the latest date/time in the specified range.

    - #### setAcademicDegreeProgramParticipationDateRange

          public void setAcademicDegreeProgramParticipationDateRange(DR objAcademicDegreeProgramParticipationDateRange)

      Set the Academic Degree Program Participation Date Range. This field contains the date range during which the staff member participated in the academic degree program.
      Parameters:
        `objAcademicDegreeProgramParticipationDateRange` - Object of Academic Degree Program Participation Date Range.

    - #### setAcademicDegreeGrantedDate

          public void setAcademicDegreeGrantedDate(java.lang.String strAcademicDegreeGrantedDate)

      Set the Academic Degree Granted Date. This field contains the date of the academic degree is grant to the staff member.
      Parameters:
        `strAcademicDegreeGrantedDate` - Used for AcademicDegreeGrantedDate.

    - #### setAcademicDegreeGrantedDate

          public void setAcademicDegreeGrantedDate(DT objAcademicDegreeGrantedDate)

      Set the Academic Degree Granted Date. This field contains the date of the academic degree is grant to the staff member.
      Parameters:
        `objAcademicDegreeGrantedDate` - Object of Academic Degree Granted Date.

    - #### setSchool

          public void setSchool(java.lang.String strOrganizationName,
                       CWE objOrganizationNameTypeCode,
                       HD objAssigningAuthority,
                       java.lang.String strIdentifierTypeCode,
                       HD objAssigningFacility,
                       java.lang.String strNameRepresentationCode,
                       java.lang.String strOrganizationIdentifier)

      Set the School. This field contains the official name of the academic institution that granted the degree to the Staff Member.
      Parameters:
        `strOrganizationName` - Specifies name of the specified organization.
        `objOrganizationNameTypeCode` - Specifies a code that represents the type of name i.e., legal name, display name. Suggested Values A,L,D,SL.[Refer to table No.0204]
        `objAssigningAuthority` - Specifies The assigning authority is a unique identifier of the system (or organization or agency or department) that creates the data.
        `strIdentifierTypeCode` - Specifies a code corresponding to the type of identifier.
        `objAssigningFacility` - Specifies The place or location identifier where the identifier was first assigned to the person.
        `strNameRepresentationCode` - Specifies representations of the same name/address Suggested values are I,A,P [Refer table 0465]
        `strOrganizationIdentifier` - This component contains the sequence of characters (the code) that uniquely identifies the item being referenced by XON.1 Organization Name. This component replaces XON.3 ID Number as of v 2.5.

    - #### setSchool

          public void setSchool(XON objSchool)

      Set the School. This field contains the official name of the academic institution that granted the degree to the Staff Member.
      Parameters:
        `objSchool` - Object of School.

    - #### setSchoolTypeCode

          public void setSchoolTypeCode(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 School Type Code. This field contains the categorization of the academic institution that granted the degree to the Staff Member.
      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.

    - #### setSchoolTypeCode

          public void setSchoolTypeCode(CWE objSchoolTypeCode)

      Set the School Type Code. This field contains the categorization of the academic institution that granted the degree to the Staff Member.
      Parameters:
        `objSchoolTypeCode` - Object of School Type Code.

    - #### setSchoolAddress

          public void setSchoolAddress(SAD objStreetAddress,
                              java.lang.String strOtherDesignation,
                              java.lang.String strCity,
                              java.lang.String strStateOrProvince,
                              java.lang.String strZipOrPostalCode,
                              java.lang.String strCountry,
                              java.lang.String strAddressType,
                              java.lang.String strOtherGeographicDesignation,
                              CWE objCountyParishCode,
                              CWE objCensusTract,
                              java.lang.String strAddressRepresentationCode,
                              DTM objEffectiveDate,
                              DTM objExpirationDate,
                              CWE objEXpirationReason,
                              java.lang.String strTemporaryIndicator,
                              java.lang.String strBadAddressIndicator,
                              java.lang.String strAddressUsage,
                              java.lang.String strAddressee,
                              java.lang.String strComment,
                              java.lang.String strPreferenceOrder,
                              CWE objProtectionCode,
                              EI objAddressIdentifier)

      Set the School Address. This field contains the postal address of the academic institution that granted the degree to the Staff Member.
      Parameters:
        `objStreetAddress` - Specifies the street address.
        `strOtherDesignation` - Specifies the Second line of address.
        `strCity` - The city, or district or place where the addressee is located.
        `strStateOrProvince` - Specifies the state or province where the addressee is located.
        `strZipOrPostalCode` - Specifies the zip or postal code where the addressee is located.
        `strCountry` - Specifies the country where the addressee is located.
        `strAddressType` - Specifies the kind or type of address.
        `strOtherGeographicDesignation` - Specifies any other geographic designation.
        `objCountyParishCode` - Specifies a code that represents the county in which the specified address resides.
        `objCensusTract` - Specifies a code that represents the census tract in which the specified address resides.
        `strAddressRepresentationCode` - Specifies representations of the same name/address Suggested values are I,A,P [Refer table 0465]
        `objEffectiveDate` - It is The first date, if known, on which the address is valid and active.
        `objExpirationDate` - It is The last date, if known, on which the address is valid and active.
        `objExpirationReason` - indicates why this address was marked as ended.
        `strTemporaryIndicator` - indicates whether address is considered temporary .
        `strBadAddressIndicator` - indicates whether it is possible to contact the owning entity.
        `strAddressUsage` - indicates how the address is intended to be used.
        `strAddressee` - indicates the name of the person whose address is intended to be used.
        `strComment` - indicated descriptive information
        `strPreferenceOrder` - preference order
        `objProtectionCode` - indicates that an address need to be protected
        `objAddressIdentifier` - indicates a unique identifier for address

    - #### setSchoolAddress

          public void setSchoolAddress(XAD objSchoolAddress)

      Set the School Address. This field contains the postal address of the academic institution that granted the degree to the Staff Member.
      Parameters:
        `objSchoolAddress` - Object of School Address.

    - #### addMajorFieldofStudy

          public void addMajorFieldofStudy(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)

      Add the Major Field of Study. This field contains the subject of academic study associated with the specific academic degree program pursued by the staff member as his/her area of specialization.
      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.

    - #### addMajorFieldofStudy

          public void addMajorFieldofStudy(CWE objMajorFieldofStudy)

      Add the Major Field of Study. This field contains the subject of academic study associated with the specific academic degree program pursued by the staff member as his/her area of specialization.
      Parameters:
        `objMajorFieldofStudy` - Object of Major Field of Study.

    - #### setMajorFieldofStudy

          public void setMajorFieldofStudy(ISingleCollection<CWE> objMajorFieldofStudyList)

      Add the Major Field of Study. This field contains the subject of academic study associated with the specific academic degree program pursued by the staff member as his/her area of specialization.
      Parameters:
        `objMajorFieldofStudyList` - List of Major Field of Study.

    - #### 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 checks 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` - Throws when Segment Validation fails.