cdac.medinfo.sdk.hl7282.baselibs.segments

## Class REL

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

- All Implemented Interfaces:
    ISegment

      public class REL
      extends Segment

  REL - Clinical Relationship Segment

  Clinical Relationship segment contains the data necessary to relate two data elements within and/or external to the message at run-time. It also includes information about the relationship.

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

  REL-1: Set ID - REL (SI)Conditional
  REL-2: Relationship Type (CWE)Required
  REL-3: This Relationship Instance Identifier (EI)Required
  REL-4: Source Information Instance Identifier (EI)Required
  REL-5: Target Information Instance Identifier (EI)Required
  REL-6: Asserting Entity Instance ID (EI)Optional
  REL-7: Asserting Person (XCN)Optional
  REL-8: Asserting Organization (XON)Optional
  REL-9: Assertor Address (XAD)Optional
  REL-10: Assertor Contact (XTN)Optional
  REL-11: Assertion Date Range (DR)Optional
  REL-12: Negation Indicator (ID)Optional
  REL-13: Certainty of Relationship (CWE)Optional
  REL-14: Priority No (NM)Optional
  REL-15: Priority Sequence No (NM)Optional
  REL-16: Separability Indicator (ID)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
    `REL()` Constucts the VAR segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ID` | `getActionCode()` Retrieves the Negation Indicator.
    `EI` | `getAssertingEntityInstanceID()` Retrieves the Asserting Entity Instance ID.
    `XON` | `getAssertingOrganization()` Retrieves the Asserting Organization.
    `XCN` | `getAssertingPerson()` Retrieves the Asserting Person.
    `DR` | `getAssertionDateRange()` Retrieves the Assertion Date Range.
    `XAD` | `getAssertorAddress()` Retrieves the Assertor Address.
    `XTN` | `getAssertorContact()` Retrieves the Assertor Contact.
    `CWE` | `getCertaintyofRelationship()` Retrieves the Certainty of Relationship.
    `ID` | `getNegationIndicator()` Set the Negation Indicator.
    `NM` | `getPriorityNo()` Retrieves the Priority No.
    `NM` | `getPrioritySequenceNo()` Retrieves the Priority Sequence No.
    `CWE` | `getRelationshipType()` Retrieves the Relationship Type.
    `ID` | `getSeparabilityIndicator()` Retrieves the Separability Indicator.
    `SI` | `getSetID_REL()` Retrieves the Set ID REL.
    `EI` | `getSourceInformationInstanceIdentifier()` Retrieves the Source Information Instance Identifier.
    `EI` | `getTargetInformationInstanceIdentifier()` Retrieves the Target Information Instance Identifier.
    `EI` | `getThisRelationshipInstanceIdentifier()` Retrieves the This Relationship Instance Identifier.
    `void` | `setAssertingEntityInstanceID(EI objAssertingEntityInstanceID)` Set the Asserting Entity Instance ID.
    `void` | `setAssertingEntityInstanceID(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Asserting Entity Instance ID.
    `void` | `setAssertingOrganization(java.lang.String strOrganizationName, CWE objOrganizationNameTypeCode, HD objAssigningAuthority, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, java.lang.String strOrganizationIdentifier)` Set the Asserting Organization.
    `void` | `setAssertingOrganization(XON objAssertingOrganization)` Set the Asserting Organization.
    `void` | `setAssertingPerson(java.lang.String strIDNumber, FN objFamilyName, java.lang.String strGivenName, java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof, java.lang.String strSuffix, java.lang.String strPrefix, CWE objSourceTable, HD objAssigningAuthority, java.lang.String strNameTypeCode, java.lang.String strIdentifierCheckDigit, java.lang.String strCheckDigitScheme, java.lang.String strIdentifierTypeCode, HD objAssigningFacility, java.lang.String strNameRepresentationCode, CWE objNameContext, java.lang.String strNameAssemblyOrder, java.lang.String strEffectiveDate, java.lang.String strExpirationDate, java.lang.String strProfessionalSuffix, CWE objAssigningJurisdiction, CWE objAssigningAgencyOrDepratment, java.lang.String strSecurityCheck, java.lang.String strSecurityCheckScheme)` Set the Asserting Person.
    `void` | `setAssertingPerson(XCN objAssertingPerson)` Set the Asserting Person.
    `void` | `setAssertionDateRange(DR objAssertionDateRange)` Set the Assertion Date Range.
    `void` | `setAssertionDateRange(DTM objRangeStartDateTime, DTM objRangeEndDateTime)` Set the Assertion Date Range.
    `void` | `setAssertorAddress(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 Assertor Address.
    `void` | `setAssertorAddress(XAD objAssertorAddress)` Set the Assertor Address.
    `void` | `setAssertorContact(java.lang.String strTeleCommunicationUseCode, java.lang.String strTeleCommunicationEquipmentType, java.lang.String strCommuinicationAddress, java.lang.String strCountryCode, java.lang.String strAreaCityCode, java.lang.String strLocalNumber, java.lang.String strExtension, java.lang.String strAnyText, java.lang.String strExtensionPrefix, java.lang.String strSpeedDialCode, java.lang.String strUnformattedTelephoneNumber, java.lang.String strEffectiveStartDate, java.lang.String strExpirationDate, CWE objExpirationReason, CWE objProtectionCode, EI objSharedTelecommunicationIdentifier, java.lang.String strPreferenceOrder)` Set the Assertor Contact.
    `void` | `setAssertorContact(XTN objAssertorContact)` Set the Assertor Contact.
    `void` | `setCertaintyofRelationship(CWE objCertaintyofRelationship)` Set the Certainty of Relationship.
    `void` | `setCertaintyofRelationship(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 Certainty of Relationship.
    `void` | `setNegationIndicator(ID objNegationIndicator)` Set the Negation Indicator.
    `void` | `setNegationIndicator(java.lang.String strNegationIndicator)` Set the Negation Indicator.
    `void` | `setPriorityNo(NM objPriorityNo)` Set the Priority No.
    `void` | `setPriorityNo(java.lang.String strPriorityNo)` Set the Priority No.
    `void` | `setPrioritySequenceNo(NM objPrioritySequenceNo)` Set the Priority Sequence No.
    `void` | `setPrioritySequenceNo(java.lang.String strPrioritySequenceNo)` Set the Priority Sequence No.
    `void` | `setRelationshipType(CWE objRelationshipType)` Set the RelationshipType.
    `void` | `setRelationshipType(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 Relationship Type.
    `void` | `setSeparabilityIndicator(ID objSeparabilityIndicator)` Set the Separability Indicator.
    `void` | `setSeparabilityIndicator(java.lang.String strSeparabilityIndicator)` Set the Separability Indicator.
    `void` | `setSetID_REL(SI objSetID_REL)` Set the Set ID REL.
    `void` | `setSetID_REL(java.lang.String strSetID_REL)` Set the Set ID REL.
    `void` | `setSourceInformationInstanceIdentifier(EI objSourceInformationInstanceIdentifier)` Set the Source Information Instance Identifier.
    `void` | `setSourceInformationInstanceIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Source Information Instance Identifier.
    `void` | `setTargetInformationInstanceIdentifier(EI objTargetInformationInstanceIdentifier)` Set the Target Information Instance Identifier.
    `void` | `setTargetInformationInstanceIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Target Information Instance Identifier.
    `void` | `setThisRelationshipInstanceIdentifier(EI objThisRelationshipInstanceIdentifier)` Set the This Relationship Instance Identifier.
    `void` | `setThisRelationshipInstanceIdentifier(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the This Relationship Instance Identifier.
    `void` | `setVarianceInstanceID(EI objSourceInformationInstanceIdentifier)` Set the Source Information Instance Identifier.
    `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

    - #### REL

          public REL()

      Constucts the VAR segment.

  - ### Method Detail

    - #### getSetID_REL

          public SI getSetID_REL()

      Retrieves the Set ID REL.
      Returns:
        SI - setID_REL

    - #### getRelationshipType

          public CWE getRelationshipType()

      Retrieves the Relationship Type.
      Returns:
        CWE - relationshipType.

    - #### getThisRelationshipInstanceIdentifier

          public EI getThisRelationshipInstanceIdentifier()

      Retrieves the This Relationship Instance Identifier.
      Returns:
        EI - thisRelationshipInstanceIdentifier

    - #### getSourceInformationInstanceIdentifier

          public EI getSourceInformationInstanceIdentifier()

      Retrieves the Source Information Instance Identifier.
      Returns:
        EI - sourceInformationInstanceIdentifier

    - #### getTargetInformationInstanceIdentifier

          public EI getTargetInformationInstanceIdentifier()

      Retrieves the Target Information Instance Identifier.
      Returns:
        EI - target Information Instance Identifier.

    - #### getAssertingEntityInstanceID

          public EI getAssertingEntityInstanceID()

      Retrieves the Asserting Entity Instance ID.
      Returns:
        EI - assertingEntityInstanceID.

    - #### getAssertingPerson

          public XCN getAssertingPerson()

      Retrieves the Asserting Person. This field contains the Identifier details of the Person who asserted the relationship.
      Returns:
        XCN - assertingPerson.

    - #### getAssertingOrganization

          public XON getAssertingOrganization()

      Retrieves the Asserting Organization. This field contains the Identifier details of the Organization that asserted the relationship.
      Returns:
        XON - assertingOrganization.

    - #### getAssertorAddress

          public XAD getAssertorAddress()

      Retrieves the Assertor Address.
      Returns:
        XAD - assertorAddress.

    - #### getAssertorContact

          public XTN getAssertorContact()

      Retrieves the Assertor Contact. This field contains the address of the Person or Organization that asserted the relationship.
      Returns:
        XTN - assertorContact

    - #### getAssertionDateRange

          public DR getAssertionDateRange()

      Retrieves the Assertion Date Range.
      Returns:
        DR - assertionDateRange

    - #### getActionCode

          public ID getActionCode()

      Retrieves the Negation Indicator.
      Returns:
        ID - negationIndicator

    - #### getCertaintyofRelationship

          public CWE getCertaintyofRelationship()

      Retrieves the Certainty of Relationship.
      Returns:
        CWE - certaintyofRelationship.

    - #### getPriorityNo

          public NM getPriorityNo()

      Retrieves the Priority No. This field contains the priority number as used, for example, in relative ordering, plans, and workflows.
      Returns:
        NM - priorityNo

    - #### getPrioritySequenceNo

          public NM getPrioritySequenceNo()

      Retrieves the Priority Sequence No. This field contains the priority sequence number as used, for example, in relative preference for consideration.
      Returns:
        NM - prioritySequenceNo.

    - #### getSeparabilityIndicator

          public ID getSeparabilityIndicator()

      Retrieves the Separability Indicator. This field indicates whether source and target can be interpreted independently.
      Returns:
        ID - separabilityIndicator

    - #### getNegationIndicator

          public ID getNegationIndicator()

      Set the Negation Indicator. This field contains the date range relevant to the assertion of the relationship.
      Parameters:
        `strNegationIndicator` - Specifies the the intent of the message

    - #### setVarianceInstanceID

          public void setVarianceInstanceID(EI objSourceInformationInstanceIdentifier)

      Set the Source Information Instance Identifier.
      Parameters:
        `objSourceInformationInstanceIdentifier.` -

    - #### setSetID_REL

          public void setSetID_REL(java.lang.String strSetID_REL)

      Set the Set ID REL.
      Parameters:
        `strSetID_REL` - This field contains the Set ID of the specific relationship Record.

    - #### setSetID_REL

          public void setSetID_REL(SI objSetID_REL)

      Set the Set ID REL.
      Parameters:
        `objSetID_REL` - Object of Set ID REL.

    - #### setRelationshipType

          public void setRelationshipType(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 Relationship Type. This field contains the type of the relationship.
      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.

    - #### setRelationshipType

          public void setRelationshipType(CWE objRelationshipType)

      Set the RelationshipType. This field contains the type of the relationship.
      Parameters:
        `objRelationshipType.` -

    - #### setThisRelationshipInstanceIdentifier

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

      Set the This Relationship Instance Identifier. This field contains the instance identifier of this relationship.
      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.

    - #### setThisRelationshipInstanceIdentifier

          public void setThisRelationshipInstanceIdentifier(EI objThisRelationshipInstanceIdentifier)

      Set the This Relationship Instance Identifier. This field contains the instance identifier of this relationship.
      Parameters:
        `objThisRelationshipInstanceIdentifier` -

    - #### setSourceInformationInstanceIdentifier

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

      Set the Source Information Instance Identifier. This field contains the Instance ID of the Source Segment.
      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.

    - #### setSourceInformationInstanceIdentifier

          public void setSourceInformationInstanceIdentifier(EI objSourceInformationInstanceIdentifier)

      Set the Source Information Instance Identifier. This field contains the Instance ID of the Source Segment.
      Parameters:
        `objSourceInformationInstanceIdentifier` -

    - #### setTargetInformationInstanceIdentifier

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

      Set the Target Information Instance Identifier. This field contains the Instance ID of the Target Segment.
      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.

    - #### setTargetInformationInstanceIdentifier

          public void setTargetInformationInstanceIdentifier(EI objTargetInformationInstanceIdentifier)

      Set the Target Information Instance Identifier. This field contains the Instance ID of the Target Segment.
      Parameters:
        `objTargetInformationInstanceIdentifier.` -

    - #### setAssertingEntityInstanceID

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

      Set the Asserting Entity Instance ID. This field contains the Instance ID of the Person or Organization that asserted the relationship.
      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.

    - #### setAssertingEntityInstanceID

          public void setAssertingEntityInstanceID(EI objAssertingEntityInstanceID)

      Set the Asserting Entity Instance ID. This field contains the Instance ID of the Person or Organization that asserted the relationship.
      Parameters:
        `objAssertingEntityInstanceID.` -

    - #### setAssertingPerson

          public void setAssertingPerson(java.lang.String strIDNumber,
                                FN objFamilyName,
                                java.lang.String strGivenName,
                                java.lang.String strSecondAndFurtherGivenNamesOrInitialsThereof,
                                java.lang.String strSuffix,
                                java.lang.String strPrefix,
                                CWE objSourceTable,
                                HD objAssigningAuthority,
                                java.lang.String strNameTypeCode,
                                java.lang.String strIdentifierCheckDigit,
                                java.lang.String strCheckDigitScheme,
                                java.lang.String strIdentifierTypeCode,
                                HD objAssigningFacility,
                                java.lang.String strNameRepresentationCode,
                                CWE objNameContext,
                                java.lang.String strNameAssemblyOrder,
                                java.lang.String strEffectiveDate,
                                java.lang.String strExpirationDate,
                                java.lang.String strProfessionalSuffix,
                                CWE objAssigningJurisdiction,
                                CWE objAssigningAgencyOrDepratment,
                                java.lang.String strSecurityCheck,
                                java.lang.String strSecurityCheckScheme)

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

    - #### setAssertingPerson

          public void setAssertingPerson(XCN objAssertingPerson)

      Set the Asserting Person. This field contains the Identifier details of the Person who asserted the relationship.
      Parameters:
        `objAssertingPerson` - Used as Performing Organization Name.

    - #### setAssertingOrganization

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

      Set the Asserting Organization. This field contains the Identifier details of the Organization that asserted the relationship.
      Parameters:
        `strOrganizationName` - Specifies name of the specified organization.
        `strOrganizationNameTypeCode` - 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.

    - #### setAssertingOrganization

          public void setAssertingOrganization(XON objAssertingOrganization)

      Set the Asserting Organization. This field contains the Identifier details of the Organization that asserted the relationship.
      Parameters:
        `objAssertingOrganization` - Used as Performing Organization Name.

    - #### setAssertorAddress

          public void setAssertorAddress(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 Assertor Address. This field contains the address of the Person or Organization that asserted the relationship.
      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
        `objAdressIdentifier` - indicates a unique identifier for address

    - #### setAssertorAddress

          public void setAssertorAddress(XAD objAssertorAddress)

      Set the Assertor Address. This field contains the address of the Person or Organization that asserted the relationship.
      Parameters:
        `objAssertorAddress` - Used as Performing Organization Name.

    - #### setAssertorContact

          public void setAssertorContact(java.lang.String strTeleCommunicationUseCode,
                                java.lang.String strTeleCommunicationEquipmentType,
                                java.lang.String strCommuinicationAddress,
                                java.lang.String strCountryCode,
                                java.lang.String strAreaCityCode,
                                java.lang.String strLocalNumber,
                                java.lang.String strExtension,
                                java.lang.String strAnyText,
                                java.lang.String strExtensionPrefix,
                                java.lang.String strSpeedDialCode,
                                java.lang.String strUnformattedTelephoneNumber,
                                java.lang.String strEffectiveStartDate,
                                java.lang.String strExpirationDate,
                                CWE objExpirationReason,
                                CWE objProtectionCode,
                                EI objSharedTelecommunicationIdentifier,
                                java.lang.String strPreferenceOrder)

      Set the Assertor Contact. This field contains the address of the Person or Organization that asserted the relationship.
      Parameters:
        `strTeleCommunicationUseCode` - Specifies a code that represents a specific use of a telecommunication number. Suggested values are PRN,ORN,WPN,VHN,ASN,EMR,NET,BPN [Refer table 0201.]
        `strTeleCommunicationEquipmentType` - Specifies a code that represents the type of telecommunication equipment. Suggested values are PH,FX,MD,CP,BP,Internet,X.400,TDD,TTY [Refer table 0202.]
        `strCommuinicationAddress` - Specifies Email address.
        `strCountryCode` - Specifies the Country code.
        `strAreaCityCode` - Specifies the area /City Code.
        `strLocalNumber` - Specifies an Local Number.
        `strExtension` - Specifies an Extension.
        `strAnyText` - Contains comments with respect to the telephone number.
        `strExtensionPrefix` - Specifies the characters established within a company-s internal telephone system network used as a prefix to the Extension component for internal dialing.
        `strSpeedDialCode` - Specifies The characters established within a company's internal telephone system used in place of the (external) telephone number.
        `strUnformattedTelephoneNumber` - Specifies an expression of the telephone number as an unparsible string.
        `strEffectiveStartDate` - Specifies start date.
        `strExpirationDate` - Specifies expiration date.
        `objExpirationReason` - Specifies reason why this contact is marked as ended.
        `objProtectionCode` - Specifies reason why this information is sensitive or protected.
        `objSharedTelecommunicationIdentifier` - Specifies a unique phone number phone telephone number or email-id.
        `strPreferenceOrder` - Specifies the preference order for an entity..

    - #### setAssertorContact

          public void setAssertorContact(XTN objAssertorContact)

      Set the Assertor Contact. This field contains the address of the Person or Organization that asserted the relationship.
      Parameters:
        `objAssertorContact` - Object of Assertor Contact.

    - #### setAssertionDateRange

          public void setAssertionDateRange(DTM objRangeStartDateTime,
                                   DTM objRangeEndDateTime)

      Set the Assertion Date Range. This field contains the date range during which assertion of the relationship took place.
      Parameters:
        `objRangeStartDateTime` - Specifies the earliest date/time (time stamp) in the specified range.
        `objRangeEndDateTime` - Specifies the latest date/time in the specified range.

    - #### setAssertionDateRange

          public void setAssertionDateRange(DR objAssertionDateRange)

      Set the Assertion Date Range. This field contains the date range during which assertion of the relationship took place.
      Parameters:
        `objRangeStartDateTime` - Specifies the earliest date/time (time stamp) in the specified range.
        `objRangeEndDateTime` - Specifies the latest date/time in the specified range.

    - #### setNegationIndicator

          public void setNegationIndicator(java.lang.String strNegationIndicator)

      Set the Negation Indicator. This field contains the date range relevant to the assertion of the relationship.
      Parameters:
        `strNegationIndicator` - Specifies the the intent of the message

    - #### setNegationIndicator

          public void setNegationIndicator(ID objNegationIndicator)

      Set the Negation Indicator. This field contains the date range relevant to the assertion of the relationship.
      Parameters:
        `objNegationIndicator` - Specifies the the intent of the message

    - #### setCertaintyofRelationship

          public void setCertaintyofRelationship(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 Certainty of Relationship. This field contains the certainty of existence of the relationship.
      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.

    - #### setCertaintyofRelationship

          public void setCertaintyofRelationship(CWE objCertaintyofRelationship)

      Set the Certainty of Relationship. This field contains the certainty of existence of the relationship.
      Parameters:
        `objCertaintyofRelationship.` -

    - #### setPriorityNo

          public void setPriorityNo(java.lang.String strPriorityNo)

      Set the Priority No. This field contains the priority number as used, for example, in relative ordering, plans, and workflows.
      Parameters:
        `strPriorityNo` - A quantitative or numeric representation of the certainty that the problem exists for this patient

    - #### setPriorityNo

          public void setPriorityNo(NM objPriorityNo)

      Set the Priority No. This field contains the priority number as used, for example, in relative ordering, plans, and workflows.
      Parameters:
        `objPriorityNo` - A quantitative or numeric representation of the certainty that the problem exists for this patient

    - #### setPrioritySequenceNo

          public void setPrioritySequenceNo(java.lang.String strPrioritySequenceNo)

      Set the Priority Sequence No. This field indicates whether source and target can be interpreted independently.
      Parameters:
        `strPrioritySequenceNo` - A quantitative or numeric representation of the certainty that the problem exists for this patient

    - #### setPrioritySequenceNo

          public void setPrioritySequenceNo(NM objPrioritySequenceNo)

      Set the Priority Sequence No. This field indicates whether source and target can be interpreted independently.
      Parameters:
        `objPrioritySequenceNo` - A quantitative or numeric representation of the certainty that the problem exists for this patient

    - #### setSeparabilityIndicator

          public void setSeparabilityIndicator(java.lang.String strSeparabilityIndicator)

      Set the Separability Indicator. This field indicates whether source and target can be interpreted independently.
      Parameters:
        `setSeparabilityIndicator` - Specifies the the intent of the message.

    - #### setSeparabilityIndicator

          public void setSeparabilityIndicator(ID objSeparabilityIndicator)

      Set the Separability Indicator. This field reveals the intent of the message. This field indicates whether source and target can be interpreted independently.

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