cdac.medinfo.sdk.hl7282.baselibs.segments

## Class ODS

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

- All Implemented Interfaces:
    ISegment

      public class ODS
      extends Segment

  ODS - dietary orders, supplements, and preferences segment.

  ODS segments describes dietary orders, supplements, and preferences regarding diet.

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

  ODS-1: Type (ID)Required
  ODS-2: Service Period (CWE)Optional
  ODS-3: Diet, Supplement, or Preference Code (CWE)Required
  ODS-4: Text Instruction (ST)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
    `ODS()` Constructs the ODS segment.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDietSupplementPreferenceCode(CWE objdietSupplementPreferenceCode)` Add the Diet Supplement Preference Code.
    `void` | `addDietSupplementPreferenceCode(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Add the Diet Supplement Preference Code.
    `void` | `addServicePeriod(CWE objservicePeriod)` Add the Service Period.
    `void` | `addServicePeriod(java.lang.String strIdentifier, java.lang.String strText, java.lang.String strNameOfCodingSystem, java.lang.String strAlternateIdentifier, java.lang.String strAlternateText, java.lang.String strNameOfAlternateCodingSystem, java.lang.String strCodingSystemVersionID, java.lang.String strAlternateCodingSystemVersionId, java.lang.String strOriginalText, java.lang.String strSecondAlternateIdentifier, java.lang.String strSecondAlternateText, java.lang.String strNameofSecondAlternateCodingSystem, java.lang.String strSecondAlternateCodingSystemVersionID, java.lang.String strCodingSystemOID, java.lang.String strValueSetOID, java.lang.String strValueSetVersionID, java.lang.String strAlternateCodingSystemOID, java.lang.String strAlternateValueSetOID, java.lang.String strAlternateValueSetVersionID, java.lang.String strSecondAlternateCodingSystemOID, java.lang.String strSecondAlternateValueSetOID, java.lang.String strSecondAlternateValueSetVersionID)` Add the Service Period.
    `void` | `addTextInstruction(ST objtextInstruction)` Add the Text Instruction.
    `void` | `addTextInstruction(java.lang.String strTextInstruction)` Add the Text Instruction.
    `ISingleCollection<CWE>` | `getDietSupplementPreferenceCode()` Retrieves the Diet Supplement Preference Code.
    `ISingleCollection<CWE>` | `getServicePeriod()` Retrieves the Service Period.
    `ISingleCollection<ST>` | `getTextInstruction()` Retrieves the Text Instruction.
    `ID` | `getType()` Retrieves the Type.
    `void` | `setDietSupplementPreferenceCode(ISingleCollection<CWE> objdietSupplementPreferenceCodeList)` Set the Diet Supplement Preference Code.
    `void` | `setServicePeriod(ISingleCollection<CWE> objservicePeriodList)` Set the Service Period.
    `void` | `setTextInstruction(ISingleCollection<ST> objtextInstructionList)` Set the Text Instruction.
    `void` | `setType(ID objtype)` Set the Type.
    `void` | `setType(java.lang.String strType)` Set the Type.
    `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

    - #### ODS

          public ODS()

      Constructs the ODS segment.

  - ### Method Detail

    - #### getDietSupplementPreferenceCode

          public ISingleCollection<CWE> getDietSupplementPreferenceCode()

      Retrieves the Diet Supplement Preference Code. This field identify the order item for a patient.
      Returns:
        ISingleCollection - dietSupplementPreferenceCode

    - #### getServicePeriod

          public ISingleCollection<CWE> getServicePeriod()

      Retrieves the Service Period. This field usually specify supplements. This field allows you to designate a modification for one or more of the service periods during a day by combining service specifications as needed.
      Returns:
        ISingleCollection - servicePeriod

    - #### getTextInstruction

          public ISingleCollection<ST> getTextInstruction()

      Retrieves the Text Instruction. This field define the specific instructions for dietary.
      Returns:
        ISingleCollection - textInstruction

    - #### getType

          public ID getType()

      Retrieves the Type. This field specify type of diet.
      Returns:
        ID - type

    - #### addDietSupplementPreferenceCode

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

      Add the Diet Supplement Preference Code. This field identify the order item for a patient.
      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.

    - #### addDietSupplementPreferenceCode

          public void addDietSupplementPreferenceCode(CWE objdietSupplementPreferenceCode)

      Add the Diet Supplement Preference Code. This field identify the order item for a patient.
      Parameters:
        `objdietSupplementPreferenceCode` - Object of Diet Supplement Preference Code.

    - #### setDietSupplementPreferenceCode

          public void setDietSupplementPreferenceCode(ISingleCollection<CWE> objdietSupplementPreferenceCodeList)

      Set the Diet Supplement Preference Code. This field identify the order item for a patient.
      Parameters:
        `objdietSupplementPreferenceCodeList` - List of Diet Supplement Preference Code.

    - #### addServicePeriod

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

      Add the Service Period. This field usually specify supplements. This field allows you to designate a modification for one or more of the service periods during a day by combining service specifications as needed.
      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.

    - #### addServicePeriod

          public void addServicePeriod(CWE objservicePeriod)

      Add the Service Period. This field usually specify supplements. This field allows you to designate a modification for one or more of the service periods during a day by combining service specifications as needed.
      Parameters:
        `objservicePeriod` - Object of Service Period.

    - #### setServicePeriod

          public void setServicePeriod(ISingleCollection<CWE> objservicePeriodList)

      Set the Service Period. This field usually specify supplements. This field allows you to designate a modification for one or more of the service periods during a day by combining service specifications as needed.
      Parameters:
        `objservicePeriodList` - List of Service Period.

    - #### addTextInstruction

          public void addTextInstruction(java.lang.String strTextInstruction)

      Add the Text Instruction. This field define the specific instructions for dietary.
      Parameters:
        `strTextInstruction` - Specifies Text Instruction.

    - #### addTextInstruction

          public void addTextInstruction(ST objtextInstruction)

      Add the Text Instruction. This field define the specific instructions for dietary.
      Parameters:
        `objtextInstruction` - Object of Text Instruction.

    - #### setTextInstruction

          public void setTextInstruction(ISingleCollection<ST> objtextInstructionList)

      Set the Text Instruction. This field define the specific instructions for dietary.
      Parameters:
        `objtextInstructionList` - List of Text Instruction.

    - #### setType

          public void setType(java.lang.String strType)

      Set the Type. This field specify type of diet.
      Parameters:
        `strType` - Specifies Type.

    - #### setType

          public void setType(ID objtype)

      Set the Type. This field specify type of diet.
      Parameters:
        `objtype` - Object of Type.

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