cdac.medinfo.sdk.hl7282.baselibs.segments

## Class FAC

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

- All Implemented Interfaces:
    ISegment

      public class FAC
      extends Segment

  FAC - Facility Segment

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

  FAC-1: Facility ID-FAC (EI)Required
  FAC-2: Facility Type (ID)Optional
  FAC-3: Facility Address (XAD)Required
  FAC-4: Facility Telecommunication (XTN)Required
  FAC-5: Contact Person (XCN)Optional
  FAC-6: Contact Title (ST)Optional
  FAC-7: Contact Address (XAD)Optional
  FAC-8: Contact Telecommunication (XTN)Optional
  FAC-9: Signature Authority (XCN)Required
  FAC-10: Signature Authority Title (ST)Optional
  FAC-11: Signature Authority Address (XAD)Optional
  FAC-12: Signature Authority Telecommunication (XTN)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
    `FAC()` Constructs the FAC segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addContactAddress(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)` Add the Contact Address,.
    `void` | `addContactAddress(XAD objcontactAddress)` Add the Contact Address.
    `void` | `addContactPerson(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)` Add the Contact Person.
    `void` | `addContactPerson(XCN objcontactPerson)` Add the Contact Person.
    `void` | `addContactTelecommunication(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)` Add the Contact Telecommunication.
    `void` | `addContactTelecommunication(XTN objcontactTelecommunication)` Add the Contact Telecommunication.
    `void` | `addContactTitle(ST objcontactTitle)` Add the Contact Title.
    `void` | `addContactTitle(java.lang.String strContactTitle)` Add the Contact Title.
    `void` | `addFacilityAddress(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)` Add the Facility Address.
    `void` | `addFacilityAddress(XAD objfacilityAddress)` Add the Facility Address.
    `void` | `addSignatureAuthority(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)` Add the Signature Authority.
    `void` | `addSignatureAuthority(XCN objsignatureAuthority)` Add the Signature Authority.
    `void` | `addSignatureAuthorityAddress(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)` Add the Signature Authority Address.
    `void` | `addSignatureAuthorityAddress(XAD objsignatureAuthorityAddress)` Add the Signature Authority Address.
    `ISingleCollection<XAD>` | `getContactAddress()` Retrieves the Contact Address,.
    `ISingleCollection<XCN>` | `getContactPerson()` Retrieves the Contact Person.
    `ISingleCollection<XTN>` | `getContactTelecommunication()` Retrieves the Contact Telecommunication.
    `ISingleCollection<ST>` | `getContactTitle()` Retrieves the Contact Title.
    `ISingleCollection<XAD>` | `getFacilityAddress()` Retrieves the Facility Address.
    `EI` | `getFacilityID_FAC()` Retrieves the Facility ID FAC.
    `XTN` | `getFacilityTelecommunication()` Retrieves the Facility Telecommunication.
    `ID` | `getFacilityType()` Retrieves the Facility Type.
    `ISingleCollection<XCN>` | `getSignatureAuthority()` Retrieves the Signature Authority.
    `ISingleCollection<XAD>` | `getSignatureAuthorityAddress()` Retrieves the Signature Authority Address.
    `XTN` | `getSignatureAuthorityTelecommunication()` Retrieves the Signature Authority Telecommunication.
    `ST` | `getSignatureAuthorityTitle()` Retrieves the Signature Authority Title.
    `void` | `setContactAddress(ISingleCollection<XAD> objcontactAddressList)` Set the Contact Address.
    `void` | `setContactPerson(ISingleCollection<XCN> objcontactPersonList)` Set the Contact Person.
    `void` | `setContactTelecommunication(ISingleCollection<XTN> objcontactTelecommunicationList)` Set the Contact Telecommunication.
    `void` | `setContactTitle(ISingleCollection<ST> objcontactTitleList)` Set the Contact Title.
    `void` | `setFacilityAddress(ISingleCollection<XAD> objfacilityAddressList)` Set the Facility Address.
    `void` | `setFacilityID_FAC(EI objfacilityID_FAC)` Set the Facility ID FAC.
    `void` | `setFacilityID_FAC(java.lang.String strEntityIdentifier, java.lang.String strNamespaceId, java.lang.String strUniversalId, java.lang.String strUniversalIdType)` Set the Facility ID FAC.
    `void` | `setFacilityTelecommunication(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 Facility Telecommunication.
    `void` | `setFacilityTelecommunication(XTN objfacilityTelecommunication)` Set the Facility Telecommunication.
    `void` | `setFacilityType(ID objfacilityType)` Set the Facility Type.
    `void` | `setFacilityType(java.lang.String strFacilityType)` Set the Facility Type.
    `void` | `setSignatureAuthority(ISingleCollection<XCN> objsignatureAuthorityList)` Set the Signature Authority.
    `void` | `setSignatureAuthorityAddress(ISingleCollection<XAD> objsignatureAuthorityAddressList)` Set the Signature Authority Address.
    `void` | `setSignatureAuthorityTelecommunication(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 Signature Authority Telecommunication.
    `void` | `setSignatureAuthorityTelecommunication(XTN objsignatureAuthorityTelecommunication)` Set the Signature Authority Telecommunication.
    `void` | `setSignatureAuthorityTitle(ST objsignatureAuthorityTitle)` Set the Signature Authority Title.
    `void` | `setSignatureAuthorityTitle(java.lang.String strSignatureAuthorityTitle)` Set the Signature Authority Title.
    `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

    - #### FAC

          public FAC()

      Constructs the FAC segment.

  - ### Method Detail

    - #### getContactAddress

          public ISingleCollection<XAD> getContactAddress()

      Retrieves the Contact Address,. This field contains the primary contact person's address.
      Returns:
        ISingleCollection - contactAddress

    - #### getContactPerson

          public ISingleCollection<XCN> getContactPerson()

      Retrieves the Contact Person. This field contains the primary contact person's name.
      Returns:
        ISingleCollection - contactPerson

    - #### getContactTelecommunication

          public ISingleCollection<XTN> getContactTelecommunication()

      Retrieves the Contact Telecommunication. This field contains the primary contact person's telecommunication information.
      Returns:
        ISingleCollection - contactTelecommunication

    - #### getContactTitle

          public ISingleCollection<ST> getContactTitle()

      Retrieves the Contact Title. This field contains the primary contact person's title.
      Returns:
        ISingleCollection - contactTitle

    - #### getFacilityAddress

          public ISingleCollection<XAD> getFacilityAddress()

      Retrieves the Facility Address. This field contains the facility's address.
      Returns:
        ISingleCollection - facilityAddress

    - #### getFacilityID_FAC

          public EI getFacilityID_FAC()

      Retrieves the Facility ID FAC. This field contains the facility identifier.
      Returns:
        EI - facilityID_FAC

    - #### getFacilityTelecommunication

          public XTN getFacilityTelecommunication()

      Retrieves the Facility Telecommunication. This field contains the facility's telecommunication information.
      Returns:
        XTN - facilityTelecommunication

    - #### getFacilityType

          public ID getFacilityType()

      Retrieves the Facility Type. This field contains the type of facility.
      Returns:
        ID - facilityType

    - #### getSignatureAuthority

          public ISingleCollection<XCN> getSignatureAuthority()

      Retrieves the Signature Authority. This field contains the name of the individual with signature authority or who is responsible for the report.
      Returns:
        ISingleCollection - signatureAuthority

    - #### getSignatureAuthorityAddress

          public ISingleCollection<XAD> getSignatureAuthorityAddress()

      Retrieves the Signature Authority Address. This field contains the address of the individual with signature authority or who is responsible for this report.
      Returns:
        ISingleCollection - signatureAuthorityAddress

    - #### getSignatureAuthorityTelecommunication

          public XTN getSignatureAuthorityTelecommunication()

      Retrieves the Signature Authority Telecommunication. This field contains the telecommunication information of the individual with signature authority of who is responsible for this report.
      Returns:
        XTN - signatureAuthorityTelecommunication

    - #### getSignatureAuthorityTitle

          public ST getSignatureAuthorityTitle()

      Retrieves the Signature Authority Title. This field contains the address of the individual with signature authority or who is responsible for this report.
      Returns:
        ST - signatureAuthorityTitle

    - #### addContactAddress

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

      Add the Contact Address,. This field contains the primary contact person's address.
      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

    - #### addContactAddress

          public void addContactAddress(XAD objcontactAddress)

      Add the Contact Address. This field contains the primary contact person's address.
      Parameters:
        `objcontactAddress` - Object of Contact Address.

    - #### setContactAddress

          public void setContactAddress(ISingleCollection<XAD> objcontactAddressList)

      Set the Contact Address. This field contains the primary contact person's address.
      Parameters:
        `objcontactAddressList` - List of Contact Address.

    - #### addContactPerson

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

      Add the Contact Person. This field contains the primary contact person's name.
      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.

    - #### addContactPerson

          public void addContactPerson(XCN objcontactPerson)

      Add the Contact Person. This field contains the primary contact person's name.
      Parameters:
        `objcontactPerson` - Object of Contact Person.

    - #### setContactPerson

          public void setContactPerson(ISingleCollection<XCN> objcontactPersonList)

      Set the Contact Person. This field contains the primary contact person's name.
      Parameters:
        `objcontactPersonList` - List of Contact Person.

    - #### addContactTelecommunication

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

      Add the Contact Telecommunication. This field contains the primary contact person's telecommunication information.
      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..

    - #### addContactTelecommunication

          public void addContactTelecommunication(XTN objcontactTelecommunication)

      Add the Contact Telecommunication. This field contains the primary contact person's telecommunication information.
      Parameters:
        `objcontactTelecommunication` - Object of Contact Telecommunication.

    - #### setContactTelecommunication

          public void setContactTelecommunication(ISingleCollection<XTN> objcontactTelecommunicationList)

      Set the Contact Telecommunication. This field contains the primary contact person's telecommunication information.
      Parameters:
        `objcontactTelecommunicationList` - List Of Contact Telecommunication.

    - #### addContactTitle

          public void addContactTitle(java.lang.String strContactTitle)

      Add the Contact Title. This field contains the primary contact person's title.
      Parameters:
        `strContactTitle` - This field contains the String Value of Contact Title

    - #### addContactTitle

          public void addContactTitle(ST objcontactTitle)

      Add the Contact Title. This field contains the primary contact person's title.
      Parameters:
        `objcontactTitle` - Object of Contact Title.

    - #### setContactTitle

          public void setContactTitle(ISingleCollection<ST> objcontactTitleList)

      Set the Contact Title. This field contains the primary contact person's title.
      Parameters:
        `objcontactTitleList` - List of Contact Title.

    - #### addFacilityAddress

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

      Add the Facility Address. This field contains the facility's address.
      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

    - #### addFacilityAddress

          public void addFacilityAddress(XAD objfacilityAddress)

      Add the Facility Address. This field contains the facility's address.
      Parameters:
        `objfacilityAddress` - Object of Facility Address.

    - #### setFacilityAddress

          public void setFacilityAddress(ISingleCollection<XAD> objfacilityAddressList)

      Set the Facility Address. This field contains the facility's address.
      Parameters:
        `objfacilityAddressList` - List of Facility Address.

    - #### setFacilityID_FAC

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

      Set the Facility ID FAC. This field contains the facility identifier.
      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.

    - #### setFacilityID_FAC

          public void setFacilityID_FAC(EI objfacilityID_FAC)

      Set the Facility ID FAC. This field contains the facility identifier.
      Parameters:
        `objfacilityID_FAC` - Object of Facility ID FAC.

    - #### setFacilityTelecommunication

          public void setFacilityTelecommunication(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 Facility Telecommunication. This field contains the facility's telecommunication information.
      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..

    - #### setFacilityTelecommunication

          public void setFacilityTelecommunication(XTN objfacilityTelecommunication)

      Set the Facility Telecommunication. This field contains the facility's telecommunication information.
      Parameters:
        `objfacilityTelecommunication` - Object of Facility Telecommunication.

    - #### setFacilityType

          public void setFacilityType(java.lang.String strFacilityType)

      Set the Facility Type. This field contains the type of facility.
      Parameters:
        `strFacilityType` - String which to set as Facility Type

    - #### setFacilityType

          public void setFacilityType(ID objfacilityType)

      Set the Facility Type. This field contains the type of facility.
      Parameters:
        `objfacilityType` - Object of Facility Type.

    - #### addSignatureAuthority

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

      Add the Signature Authority. This field contains the name of the individual with signature authority or who is responsible for the report.
      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.

    - #### addSignatureAuthority

          public void addSignatureAuthority(XCN objsignatureAuthority)

      Add the Signature Authority. This field contains the name of the individual with signature authority or who is responsible for the report.
      Parameters:
        `objsignatureAuthority` - Object of Signature Authority.

    - #### setSignatureAuthority

          public void setSignatureAuthority(ISingleCollection<XCN> objsignatureAuthorityList)

      Set the Signature Authority. This field contains the name of the individual with signature authority or who is responsible for the report.
      Parameters:
        `objsignatureAuthorityList` - List of Signature Authority.

    - #### addSignatureAuthorityAddress

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

      Add the Signature Authority Address. This field contains the address of the individual with signature authority or who is responsible for this report.
      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

    - #### addSignatureAuthorityAddress

          public void addSignatureAuthorityAddress(XAD objsignatureAuthorityAddress)

      Add the Signature Authority Address. This field contains the address of the individual with signature authority or who is responsible for this report.
      Parameters:
        `objsignatureAuthorityAddress` - Object of Signature Authority Address.

    - #### setSignatureAuthorityAddress

          public void setSignatureAuthorityAddress(ISingleCollection<XAD> objsignatureAuthorityAddressList)

      Set the Signature Authority Address. This field contains the address of the individual with signature authority or who is responsible for this report.
      Parameters:
        `objsignatureAuthorityAddressList` - List of Signature Authority Address.

    - #### setSignatureAuthorityTelecommunication

          public void setSignatureAuthorityTelecommunication(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 Signature Authority Telecommunication. This field contains the telecommunication information of the individual with signature authority of who is responsible for this report.
      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..

    - #### setSignatureAuthorityTelecommunication

          public void setSignatureAuthorityTelecommunication(XTN objsignatureAuthorityTelecommunication)

      Set the Signature Authority Telecommunication. This field contains the telecommunication information of the individual with signature authority of who is responsible for this report.
      Parameters:
        `objsignatureAuthorityTelecommunication` - Object of Signature Authority Telecommunication.

    - #### setSignatureAuthorityTitle

          public void setSignatureAuthorityTitle(java.lang.String strSignatureAuthorityTitle)

      Set the Signature Authority Title. This field contains the address of the individual with signature authority or who is responsible for this report.
      Parameters:
        `strSignatureAuthorityTitle` - This field contains the String Value of Signature Authority Title

    - #### setSignatureAuthorityTitle

          public void setSignatureAuthorityTitle(ST objsignatureAuthorityTitle)

      Set the Signature Authority Title. This field contains the address of the individual with signature authority or who is responsible for this report.
      Parameters:
        `objsignatureAuthorityTitle` - Object of Signature Authority Title.

    - #### 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` - Thrown when Segment Validation Fails.