cdac.medinfo.sdk.hl7282.baselibs.segments

## Class GOL

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

- All Implemented Interfaces:
    ISegment

      public class GOL
      extends Segment

  GOL - Goal Detail Segment:

  The goal detail segment contains the data necessary to add, update, correct, and delete the goals for an individual.

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

  GOL-1: Action Code (ID)Required
  GOL-2: Action Date/Time (DTM)Required
  GOL-3: Goal ID (CWE)Required
  GOL-4: Goal Instance ID (EI)Required
  GOL-5: Episode of Care ID (EI)Optional
  GOL-6: Goal List Priority (NM)Optional
  GOL-7: Goal Established Date/Time (DTM)Optional
  GOL-8: Expected Goal Achieve Date/Time (DTM)Optional
  GOL-9: Goal Classification (CWE)Optional
  GOL-10: Goal Management Discipline (CWE)Optional
  GOL-11: Current Goal Review Status (CWE)Optional
  GOL-12: Current Goal Review Date/Time (DTM)Optional
  GOL-13: Next Goal Review Date/Time (DTM)Optional
  GOL-14: Previous Goal Review Date/Time (DTM)Optional
  GOL-15: Goal Review Interval (TQ)Withdrawn
  GOL-16: Goal Evaluation (CWE)Optional
  GOL-17: Goal Evaluation Comment (ST)Optional
  GOL-18: Goal Life Cycle Status (CWE)Optional
  GOL-19: Goal Life Cycle Status Date/Time (DTM)Optional
  GOL-20: Goal Target Type (CWE)Optional
  GOL-21: Goal Target Name (XPN)Optional
  GOL-22: Mood Code (CNE)Conditional

  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
    `GOL()` Constructs the GOL segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addGoalEvaluationComment(ST objtempGoalEvaluationComment)` Set the Goal Evaluation Comment.
    `void` | `addGoalEvaluationComment(java.lang.String strVarianceDescription)` Set the Goal Evaluation Comment.
    `void` | `addGoalTargetName(FN objFamilyName, java.lang.String strGivenName, java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof, java.lang.String strSuffix, java.lang.String strPrefix, java.lang.String strNameTypeCode, java.lang.String strNameRepresentationCode, CWE objNameContext, java.lang.String strNameAssemblyOrder, DTM objEffectiveDate, DTM objExpirationDate, java.lang.String strProfessionalSuffix, java.lang.String strCalledBy)` Set the Goal Target Name.
    `void` | `addGoalTargetName(XPN objtempGoalTargetName)` Set the Goal Target Name.
    `void` | `addGoalTargetType(CWE objtempGoalTargetType)` Set the Goal Target Type.
    `void` | `addGoalTargetType(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 Goal Target Type.
    `ID` | `getActionCode()` Retrieves the action code.
    `DTM` | `getActionDateTime()` Retrieves the Action Date Time.
    `DTM` | `getCurrentGoalReviewDateTime()` Retrieves the Current Goal Review Date Time.
    `CWE` | `getCurrentGoalReviewStatus()` Retrieves the Current Goal Review Status.
    `EI` | `getEpisodeofCareID()` Retrieves the Episode of Care ID.
    `DTM` | `getExpectedGoalAchieveDateTime()` Retrieves the Expected Goal Achieve Date Time.
    `CWE` | `getGoalClassification()` Retrieves the Goal Classification.
    `DTM` | `getGoalEstablishedDateTime()` Retrieves the Goal Established Date Time.
    `CWE` | `getGoalEvaluation()` Retrieves the Goal Evaluation.
    `ISingleCollection<ST>` | `getGoalEvaluationComment()` Retrieves the Goal Evaluation Comment.
    `CWE` | `getGoalID()` Retrieves the Goal ID.
    `EI` | `getGoalInstanceID()` Retrieves the Goal Instance ID.
    `CWE` | `getGoalLifeCycleStatus()` Retrieves the Goal Life Cycle Status.
    `DTM` | `getGoalLifeCycleStatusDateTime()` Retrieves the Goal Life Cycle Status Date Time.
    `NM` | `getGoalListPriority()` Retrieves the Goal List Priority.
    `CWE` | `getGoalManagementDiscipline()` Retrieves the Goal Management Discipline.
    `ISingleCollection<XPN>` | `getGoalTargetName()` Retrieves the Goal Target Name.
    `ISingleCollection<CWE>` | `getGoalTargetType()` Retrieves the Goal Target Type.
    `CNE` | `getMoodCode()` Retrieves the Mood Code.
    `DTM` | `getNextGoalReviewDateTime()` Retrieves the Next Goal Review Date Time.
    `DTM` | `getPreviousGoalReviewDateTime()` Retrieves the Previous Goal Review Date Time.
    `void` | `setActionCode(ID objactionCode)` Set the action code.
    `void` | `setActionCode(java.lang.String strActionCode)` Set the action code.
    `void` | `setActionDateTime(DTM objactionDateTime)` Set the Action Date Time.
    `void` | `setActionDateTime(java.lang.String strTime)` Set the Action Date Time.
    `void` | `setCurrentGoalReviewDateTime(DTM objcurrentGoalReviewDateTime)` Set the Current Goal Review Date Time.
    `void` | `setCurrentGoalReviewDateTime(java.lang.String strTime)` Set the Current Goal Review Date Time.
    `void` | `setCurrentGoalReviewStatus(CWE objcurrentGoalReviewStatus)` Set the Current Goal Review Status.
    `void` | `setCurrentGoalReviewStatus(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 Current Goal Review Status.
    `void` | `setEpisodeofCareID(EI objepisodeofCareID)` Set the Episode of Care ID.
    `void` | `setEpisodeofCareID(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Episode of Care ID.
    `void` | `setExpectedGoalAchieveDateTime(DTM objexpectedGoalAchieveDateTime)` Set the Expected Goal Achieve Date Time.
    `void` | `setExpectedGoalAchieveDateTime(java.lang.String strTime)` Set the Expected Goal Achieve Date Time.
    `void` | `setGoalClassification(CWE objgoalClassification)` Set the Goal Classification.
    `void` | `setGoalClassification(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 Goal Classification.
    `void` | `setGoalEstablishedDateTime(DTM objgoalEstablishedDateTime)` Set the Goal Established Date Time.
    `void` | `setGoalEstablishedDateTime(java.lang.String strTime)` Set the Goal Established Date Time.
    `void` | `setGoalEvaluation(CWE objgoalEvaluation)` Set the Goal Evaluation.
    `void` | `setGoalEvaluation(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 Goal Evaluation.
    `void` | `setGoalEvaluationComment(ISingleCollection<ST> objGoalEvaluationCommentList)` Set the GoalEvaluationComment
    `void` | `setGoalID(CWE objgoalID)` Set the Goal ID.
    `void` | `setGoalID(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 Goal ID.
    `void` | `setGoalInstanceID(EI objgoalInstanceID)` Set the Goal Instance ID.
    `void` | `setGoalInstanceID(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Goal Instance ID.
    `void` | `setGoalLifeCycleStatus(CWE objgoalLifeCycleStatus)` Set the Goal Life Cycle Status.
    `void` | `setGoalLifeCycleStatus(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 Goal Life Cycle Status.
    `void` | `setGoalLifeCycleStatusDateTime(DTM objgoalLifeCycleStatusDateTime)` Set the Goal Life Cycle Status Date Time.
    `void` | `setGoalLifeCycleStatusDateTime(java.lang.String strTime)` Set the Goal Life Cycle Status Date Time.
    `void` | `setGoalListPriority(NM objgoalListPriority)` Set the Goal List Priority.
    `void` | `setGoalListPriority(java.lang.String strPolicyLimitDays)` Set the Goal List Priority.
    `void` | `setGoalManagementDiscipline(CWE objgoalManagementDiscipline)` Set the Goal Management Discipline.
    `void` | `setGoalManagementDiscipline(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 Goal Management Discipline.
    `void` | `setGoalTargetName(ISingleCollection<XPN> objGoalTargetNameList)` Set the GoalTargetName
    `void` | `setGoalTargetType(ISingleCollection<CWE> objGoalTargetTypeList)` Set the GoalTargetType
    `void` | `setMoodCode(CNE objMoodCode)` Set the Mood Code.
    `void` | `setMoodCode(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 strNameOfSecondAltenateCodingSystem, 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 Mood Code.
    `void` | `setNextGoalReviewDateTime(DTM objnextGoalReviewDateTime)` Set the Next Goal Review Date Time.
    `void` | `setNextGoalReviewDateTime(java.lang.String strTime)` Set the Next Goal Review Date Time.
    `void` | `setPreviousGoalReviewDateTime(DTM objpreviousGoalReviewDateTime)` Set the Previous Goal Review Date Time.
    `void` | `setPreviousGoalReviewDateTime(java.lang.String strTime)` Set the Previous Goal Review 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

    - #### GOL

          public GOL()

      Constructs the GOL segment.

  - ### Method Detail

    - #### getActionCode

          public ID getActionCode()

      Retrieves the action code. This field gives the intent of the problem or goal.
      Returns:
        ID - actionCode

    - #### getActionDateTime

          public DTM getActionDateTime()

      Retrieves the Action Date Time. This field contains the date/time that the operation represented by the action code is performed.
      Returns:
        DTM - actionDateTime

    - #### getCurrentGoalReviewDateTime

          public DTM getCurrentGoalReviewDateTime()

      Retrieves the Current Goal Review Date Time. This field contains the date/time of the current review of the goal.
      Returns:
        DTM - currentGoalReviewDateTime

    - #### getCurrentGoalReviewStatus

          public CWE getCurrentGoalReviewStatus()

      Retrieves the Current Goal Review Status. This field contains the current point in the continuum of a goal review cycle (e.g., due, initiated, reviewed, overdue, verified, etc.).
      Returns:
        CWE - currentGoalReviewStatus

    - #### getEpisodeofCareID

          public EI getEpisodeofCareID()

      Retrieves the Episode of Care ID. This field uniquely identifies the episode of care to which this goal applies.
      Returns:
        EI - episodeofCareID

    - #### getExpectedGoalAchieveDateTime

          public DTM getExpectedGoalAchieveDateTime()

      Retrieves the Expected Goal Achieve Date Time. This field contains the projected date/time for achieving the stated goal.
      Returns:
        DTM - expectedGoalAchieveDateTime

    - #### getGoalClassification

          public CWE getGoalClassification()

      Retrieves the Goal Classification. This field indicates the kind of goal. This field can be used to categorize goals so that they may be managed and viewed independently within different applications.
      Returns:
        CWE - goalClassification

    - #### getGoalEstablishedDateTime

          public DTM getGoalEstablishedDateTime()

      Retrieves the Goal Established Date Time. This field identifies the date/time when the stated goal was initially created.
      Returns:
        DTM - goalEstablishedDateTime

    - #### getGoalEvaluation

          public CWE getGoalEvaluation()

      Retrieves the Goal Evaluation. This field provides an indicator of progress towards achievement of the goal.
      Returns:
        CWE - goalEvaluation

    - #### getGoalEvaluationComment

          public ISingleCollection<ST> getGoalEvaluationComment()

      Retrieves the Goal Evaluation Comment. This field contains the comments associated with the goal evaluation.
      Returns:
        ISingleCollection - goalEvaluationComment

    - #### getGoalID

          public CWE getGoalID()

      Retrieves the Goal ID. This field identifies the goal. This is the identifier from an institution's master list of goals.
      Returns:
        CWE - goalID

    - #### getGoalInstanceID

          public EI getGoalInstanceID()

      Retrieves the Goal Instance ID. This field contains the unique identifier assigned by an initiating system to this instance of the goal.
      Returns:
        EI - goalInstanceID

    - #### getGoalLifeCycleStatus

          public CWE getGoalLifeCycleStatus()

      Retrieves the Goal Life Cycle Status. This field contains an indication of the state of the goal.
      Returns:
        CWE - goalLifeCycleStatus

    - #### getGoalLifeCycleStatusDateTime

          public DTM getGoalLifeCycleStatusDateTime()

      Retrieves the Goal Life Cycle Status Date Time. This field contains the effective date/time of the current goal life cycle status.
      Returns:
        DTM - goalLifeCycleStatusDateTime

    - #### getGoalListPriority

          public NM getGoalListPriority()

      Retrieves the Goal List Priority. This field prioritizes this goal on a list that is maintained for an individual.
      Returns:
        NM - goalListPriority

    - #### getGoalManagementDiscipline

          public CWE getGoalManagementDiscipline()

      Retrieves the Goal Management Discipline. This field indicates the category of caregiver with responsibility for managing this specific goal.
      Returns:
        CWE - goalManagementDiscipline

    - #### getGoalTargetName

          public ISingleCollection<XPN> getGoalTargetName()

      Retrieves the Goal Target Name. This field contains the identification of the person(s) on whom the goal is focused.
      Returns:
        ISingleCollection - goalTargetName

    - #### getGoalTargetType

          public ISingleCollection<CWE> getGoalTargetType()

      Retrieves the Goal Target Type. This field contains the individual/group for whom the goal has been established.
      Returns:
        ISingleCollection - goalTargetType

    - #### getNextGoalReviewDateTime

          public DTM getNextGoalReviewDateTime()

      Retrieves the Next Goal Review Date Time. This field contains the date/time of the next scheduled goal review.
      Returns:
        DTM - nextGoalReviewDateTime

    - #### getPreviousGoalReviewDateTime

          public DTM getPreviousGoalReviewDateTime()

      Retrieves the Previous Goal Review Date Time. This field contains the date/time that the goal is reviewed prior to the current review.
      Returns:
        DTM - previousGoalReviewDateTime

    - #### getMoodCode

          public CNE getMoodCode()

      Retrieves the Mood Code. This field indicates the Mood of the Goal. It allows expression of the context of the problem.
      Returns:
        CNE - moodCode

    - #### setActionCode

          public void setActionCode(java.lang.String strActionCode)

      Set the action code. This field gives the intent of the problem or goal.
      Parameters:
        `strActionCode` - Specifies the the intent of the message

    - #### setActionCode

          public void setActionCode(ID objactionCode)

      Set the action code. This field gives the intent of the problem or goal.
      Parameters:
        `objactionCode` - Specifies the the intent of the message

    - #### setActionDateTime

          public void setActionDateTime(java.lang.String strTime)

      Set the Action Date Time. This field contains the date/time that the operation represented by the action code is performed.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setActionDateTime

          public void setActionDateTime(DTM objactionDateTime)

      Set the Action Date Time. This field contains the date/time that the operation represented by the action code is performed.
      Parameters:
        `objactionDateTime` -

    - #### setCurrentGoalReviewDateTime

          public void setCurrentGoalReviewDateTime(java.lang.String strTime)

      Set the Current Goal Review Date Time. This field contains the date/time of the current review of the goal.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setCurrentGoalReviewDateTime

          public void setCurrentGoalReviewDateTime(DTM objcurrentGoalReviewDateTime)

      Set the Current Goal Review Date Time. This field contains the date/time of the current review of the goal.
      Parameters:
        `objcurrentGoalReviewDateTime` -

    - #### setCurrentGoalReviewStatus

          public void setCurrentGoalReviewStatus(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 Current Goal Review Status. This field contains the current point in the continuum of a goal review cycle (e.g., due, initiated, reviewed, overdue, verified, etc.).
      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.

    - #### setCurrentGoalReviewStatus

          public void setCurrentGoalReviewStatus(CWE objcurrentGoalReviewStatus)

      Set the Current Goal Review Status. This field contains the current point in the continuum of a goal review cycle (e.g., due, initiated, reviewed, overdue, verified, etc.).
      Parameters:
        `objcurrentGoalReviewStatus` -

    - #### setEpisodeofCareID

          public void setEpisodeofCareID(java.lang.String strEntityIdentifier,
                                java.lang.String strNamespaceId,
                                java.lang.String strUniversalId,
                                java.lang.String strUniversalIdType)

      Set the Episode of Care ID. This field uniquely identifies the episode of care to which this goal applies.
      Parameters:
        `strEntityIdentifier` - Specifies defined by a hierarchic designator, represented by components 2 through 4. [Reference Section 2.A.33, "HD - hierarchic designator".]
        `strNamespaceId` - Specifies the HL7 identifier for the user-defined table of values for this component. [Refer to User-defined Table 0363 - Assigning authority]
        `strUniversalId` - Specifies string formatted according to the scheme defined by the component, (UID type).
        `strUniversalIdType` - Specifies the interpretation of the second component of the HD.

    - #### setEpisodeofCareID

          public void setEpisodeofCareID(EI objepisodeofCareID)

      Set the Episode of Care ID. This field uniquely identifies the episode of care to which this goal applies.
      Parameters:
        `objepisodeofCareID` -

    - #### setExpectedGoalAchieveDateTime

          public void setExpectedGoalAchieveDateTime(java.lang.String strTime)

      Set the Expected Goal Achieve Date Time. This field contains the projected date/time for achieving the stated goal.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setExpectedGoalAchieveDateTime

          public void setExpectedGoalAchieveDateTime(DTM objexpectedGoalAchieveDateTime)

      Set the Expected Goal Achieve Date Time. This field contains the projected date/time for achieving the stated goal.
      Parameters:
        `objexpectedGoalAchieveDateTime` -

    - #### setGoalClassification

          public void setGoalClassification(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 Goal Classification. This field indicates the kind of goal. This field can be used to categorize goals so that they may be managed and viewed independently within different applications.
      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.

    - #### setGoalClassification

          public void setGoalClassification(CWE objgoalClassification)

      Set the Goal Classification. This field indicates the kind of goal. This field can be used to categorize goals so that they may be managed and viewed independently within different applications.
      Parameters:
        `objgoalClassification` -

    - #### setGoalEstablishedDateTime

          public void setGoalEstablishedDateTime(java.lang.String strTime)

      Set the Goal Established Date Time. This field identifies the date/time when the stated goal was initially created.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setGoalEstablishedDateTime

          public void setGoalEstablishedDateTime(DTM objgoalEstablishedDateTime)

      Set the Goal Established Date Time. This field identifies the date/time when the stated goal was initially created.
      Parameters:
        `objgoalEstablishedDateTime` -

    - #### setGoalEvaluation

          public void setGoalEvaluation(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 Goal Evaluation. This field provides an indicator of progress towards achievement of the goal.
      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.

    - #### setGoalEvaluation

          public void setGoalEvaluation(CWE objgoalEvaluation)

      Set the Goal Evaluation. This field provides an indicator of progress towards achievement of the goal.
      Parameters:
        `objgoalEvaluation` -

    - #### addGoalEvaluationComment

          public void addGoalEvaluationComment(java.lang.String strVarianceDescription)

      Set the Goal Evaluation Comment. This field contains the comments associated with the goal evaluation.
      Parameters:
        `strVarianceDescription` - String which to set as Application Error Parameter

    - #### addGoalEvaluationComment

          public void addGoalEvaluationComment(ST objtempGoalEvaluationComment)

      Set the Goal Evaluation Comment. This field contains the comments associated with the goal evaluation.
      Parameters:
        `objtempGoalEvaluationComment` - GoalEvaluationComment

    - #### setGoalEvaluationComment

          public void setGoalEvaluationComment(ISingleCollection<ST> objGoalEvaluationCommentList)

      Set the GoalEvaluationComment
      Parameters:
        `objGoalEvaluationCommentList` - List of GoalEvaluationComment

    - #### setGoalID

          public void setGoalID(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 Goal ID. This field identifies the goal. This is the identifier from an institution's master list of goals.
      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.

    - #### setGoalID

          public void setGoalID(CWE objgoalID)

      Set the Goal ID. This field identifies the goal. This is the identifier from an institution's master list of goals.
      Parameters:
        `objgoalID` -

    - #### setGoalInstanceID

          public void setGoalInstanceID(java.lang.String strEntityIdentifier,
                               java.lang.String strNamespaceId,
                               java.lang.String strUniversalId,
                               java.lang.String strUniversalIdType)

      Set the Goal Instance ID. This field contains the unique identifier assigned by an initiating system to this instance of the goal.
      Parameters:
        `strEntityIdentifier` - Specifies defined by a hierarchic designator, represented by components 2 through 4. [Reference Section 2.A.33, "HD - hierarchic designator".]
        `strNamespaceId` - Specifies the HL7 identifier for the user-defined table of values for this component. [Refer to User-defined Table 0363 - Assigning authority]
        `strUniversalId` - Specifies string formatted according to the scheme defined by the component, (UID type).
        `strUniversalIdType` - Specifies the interpretation of the second component of the HD.

    - #### setGoalInstanceID

          public void setGoalInstanceID(EI objgoalInstanceID)

      Set the Goal Instance ID. This field contains the unique identifier assigned by an initiating system to this instance of the goal.
      Parameters:
        `objgoalInstanceID` -

    - #### setGoalLifeCycleStatus

          public void setGoalLifeCycleStatus(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 Goal Life Cycle Status. This field contains an indication of the state of the goal.
      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.

    - #### setGoalLifeCycleStatus

          public void setGoalLifeCycleStatus(CWE objgoalLifeCycleStatus)

      Set the Goal Life Cycle Status. This field contains an indication of the state of the goal.
      Parameters:
        `objgoalLifeCycleStatus` -

    - #### setGoalLifeCycleStatusDateTime

          public void setGoalLifeCycleStatusDateTime(java.lang.String strTime)

      Set the Goal Life Cycle Status Date Time. This field contains the effective date/time of the current goal life cycle status.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setGoalLifeCycleStatusDateTime

          public void setGoalLifeCycleStatusDateTime(DTM objgoalLifeCycleStatusDateTime)

      Set the Goal Life Cycle Status Date Time. This field contains the effective date/time of the current goal life cycle status.
      Parameters:
        `objgoalLifeCycleStatusDateTime` -

    - #### setGoalListPriority

          public void setGoalListPriority(java.lang.String strPolicyLimitDays)

      Set the Goal List Priority. This field prioritizes this goal on a list that is maintained for an individual.
      Parameters:
        `strPolicyLimitDays` - Specifies the maximum number of days that the insurance policy will cover.

    - #### setGoalListPriority

          public void setGoalListPriority(NM objgoalListPriority)

      Set the Goal List Priority. This field prioritizes this goal on a list that is maintained for an individual.
      Parameters:
        `objgoalListPriority` - Specifies the maximum number of days that the insurance policy will cover.

    - #### setGoalManagementDiscipline

          public void setGoalManagementDiscipline(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 Goal Management Discipline. This field indicates the category of caregiver with responsibility for managing this specific goal.
      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.

    - #### setGoalManagementDiscipline

          public void setGoalManagementDiscipline(CWE objgoalManagementDiscipline)

      Set the Goal Management Discipline. This field indicates the category of caregiver with responsibility for managing this specific goal.
      Parameters:
        `objgoalManagementDiscipline` -

    - #### addGoalTargetName

          public void addGoalTargetName(FN objFamilyName,
                               java.lang.String strGivenName,
                               java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof,
                               java.lang.String strSuffix,
                               java.lang.String strPrefix,
                               java.lang.String strNameTypeCode,
                               java.lang.String strNameRepresentationCode,
                               CWE objNameContext,
                               java.lang.String strNameAssemblyOrder,
                               DTM objEffectiveDate,
                               DTM objExpirationDate,
                               java.lang.String strProfessionalSuffix,
                               java.lang.String strCalledBy)

      Set the Goal Target Name. This field contains the identification of the person(s) on whom the goal is focused.
      Parameters:
        `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.).
        `strNameTypeCode` - Specifies a code that represents the type of name. Suggested values are A,B,C,D,I,L,M,N,P,R,S,T,U...[Refer table 0200.]
        `strNameRepresentationCode` - Specifies representations of the same name/address Suggested values are I,A,P [Refer table 0465]
        `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).
        `strCalledBy` - Used to specify the called name.

    - #### addGoalTargetName

          public void addGoalTargetName(XPN objtempGoalTargetName)

      Set the Goal Target Name. This field contains the identification of the person(s) on whom the goal is focused.
      Parameters:
        `objtempGoalTargetName` -

    - #### setGoalTargetName

          public void setGoalTargetName(ISingleCollection<XPN> objGoalTargetNameList)

      Set the GoalTargetName
      Parameters:
        `objGoalTargetNameList` - List of GoalTargetName

    - #### addGoalTargetType

          public void addGoalTargetType(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 Goal Target Type. This field contains the individual/group for whom the goal has been established.
      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.

    - #### addGoalTargetType

          public void addGoalTargetType(CWE objtempGoalTargetType)

      Set the Goal Target Type. This field contains the individual/group for whom the goal has been established.
      Parameters:
        `objtempGoalTargetType` -

    - #### setGoalTargetType

          public void setGoalTargetType(ISingleCollection<CWE> objGoalTargetTypeList)

      Set the GoalTargetType
      Parameters:
        `objGoalTargetTypeList` - List of GoalTargetType

    - #### setNextGoalReviewDateTime

          public void setNextGoalReviewDateTime(java.lang.String strTime)

      Set the Next Goal Review Date Time. This field contains the date/time of the next scheduled goal review.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setNextGoalReviewDateTime

          public void setNextGoalReviewDateTime(DTM objnextGoalReviewDateTime)

      Set the Next Goal Review Date Time. This field contains the date/time of the next scheduled goal review.
      Parameters:
        `objnextGoalReviewDateTime` -

    - #### setPreviousGoalReviewDateTime

          public void setPreviousGoalReviewDateTime(java.lang.String strTime)

      Set the Previous Goal Review Date Time. This field contains the date/time that the goal is reviewed prior to the current review.
      Parameters:
        `strTime` - Specifies a point in time using a 24-hour clock notation.

    - #### setPreviousGoalReviewDateTime

          public void setPreviousGoalReviewDateTime(DTM objpreviousGoalReviewDateTime)

      Set the Previous Goal Review Date Time. This field contains the date/time that the goal is reviewed prior to the current review.
      Parameters:
        `objpreviousGoalReviewDateTime` -

    - #### setMoodCode

          public void setMoodCode(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 strNameOfSecondAltenateCodingSystem,
                         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 Mood Code. This field indicates the Mood of the Goal. It allows expression of the context of the problem.
      Parameters:
        `strIdentifier` - Specifies sequence of characters (the code) that uniquely identifies the item being referenced by the CNE.
        `strText` - Specifies descriptive or textual name of the identifier, e.g., myocardial infarction
        `strNameOfCodingSystem` - Specifies the coding scheme being used in the identifier component.
        `strAlternateIdentifier` - Specifies the local or user seen code as described.
        `strAlternateText` - Specifies descriptive or textual name of the alternate identifier.
        `strNameOfAlternateCodingSystem` - Specifies the coding scheme being used in the alternate identifier component.
        `strCodingSystemVersionID` - Specifies the version ID for the coding system.
        `strAlternateCodingSystemVersionID` - Specifies the version ID for the coding system .
        `strOriginalText` - Specifies the original text that was available to an automated process or a human before a specific code was assigned.
        `strSecondAlternateIdentifier` - Specifies a sequence of characters that uniquely identifies the second alternate code
        `strSecondAlternateText` - Specifies a the textual information of the second alternate code
        `strNameOfSecondAltenateCodingSystem` - Specifies the second coding scheme being used in the identifier component.
        `strSecondAlternateCodingSystemVersionID` - Specifies version ID of Second alternative coding system.
        `strCodingSystemOID` - contains the ISO Object identifier for the coding system.
        `strValueSetOID` - contains the value set from which CNE-1 is obtained
        `strValueSetVersionID` - contains the version of the value set identified by CNE-15.
        `strAlternateCodingSystemOID` - contains the ISO Object identifier for the alternate coding system
        `strAlternateValueSetOID` - contains the value set from which CNE-4 is obtained
        `strAlternateValueSetVersionID` - contains the version of the value set identified by CNE-18.
        `strSecondAlternateCodingSystemOID` - contains the value set from which CNE-12 is obtained
        `strSecondAlternateValueSetOID` - contains the value set from which CNE-10 is obtained
        `strSecondAlternateValueSetVersionID` - contains the version of the value set identified by CNE-21.

    - #### setMoodCode

          public void setMoodCode(CNE objMoodCode)

      Set the Mood Code. This field indicates the Mood of the Goal. It allows expression of the context of the problem.
      Parameters:
        `objMoodCode` - Object of Mood Code.

    - #### 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