cdac.medinfo.sdk.hl7282.baselibs.segments

## Class CM1

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

- All Implemented Interfaces:
    ISegment

      public class CM1
      extends Segment

  CM1 - Clinical Study Phase Master Segment

  Each Clinical Study Phase Master (CM1) segment contains the information about one phase of a study identified in the preceding CM0. This is an optional structure to be used if the study has more than one treatment or evaluation phase within it.

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

  CM1-1: Set ID - CM1 (SI)Required
  CM1-2: Study Phase Identifier (CWE)Required
  CM1-3: Description of Study Phase (ST)Required

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

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ST` | `getDescriptionofStudyPhase()` Retrieves the Description of Study Phase.
    `SI` | `getSetID_CM1()` Retrieves the Set ID CM1.
    `CWE` | `getStudyPhaseIdentifier()` Retrieves the Study Phase Identifier.
    `void` | `setDescriptionofStudyPhase(ST objdescriptionofStudyPhase)` Set the Description of Study Phase.
    `void` | `setDescriptionofStudyPhase(java.lang.String strDescriptionofStudyPhase)` Set the Description of Study Phase.
    `void` | `setSetID_CM1(SI objsetID_CM1)` Set the Set ID CM1.
    `void` | `setSetID_CM1(java.lang.String strSetID_CM1)` Set the Set ID CM1.
    `void` | `setStudyPhaseIdentifier(CWE objstudyPhaseIdentifier)` Set the Study Phase Identifier.
    `void` | `setStudyPhaseIdentifier(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 Study Phase 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

    - #### CM1

          public CM1()

      Constructs the CM1 segment.

  - ### Method Detail

    - #### getDescriptionofStudyPhase

          public ST getDescriptionofStudyPhase()

      Retrieves the Description of Study Phase. This field contains a brief explanation for recipients to understand what the phase represents.
      Returns:
        ST - descriptionofStudyPhase

    - #### getSetID_CM1

          public SI getSetID_CM1()

      Retrieves the Set ID CM1. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Returns:
        SI - setID_CM1

    - #### getStudyPhaseIdentifier

          public CWE getStudyPhaseIdentifier()

      Retrieves the Study Phase Identifier.
      Returns:
        CWE - studyPhaseIdentifier

    - #### setDescriptionofStudyPhase

          public void setDescriptionofStudyPhase(java.lang.String strDescriptionofStudyPhase)

      Set the Description of Study Phase. This field contains a brief explanation for recipients to understand what the phase represents.
      Parameters:
        `strDescriptionofStudyPhase` - String which to set as Description of Study Phase

    - #### setDescriptionofStudyPhase

          public void setDescriptionofStudyPhase(ST objdescriptionofStudyPhase)

      Set the Description of Study Phase. This field contains a brief explanation for recipients to understand what the phase represents.
      Parameters:
        `objdescriptionofStudyPhase` - Object of Description of Study Phase.

    - #### setSetID_CM1

          public void setSetID_CM1(java.lang.String strSetID_CM1)

      Set the Set ID CM1. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Parameters:
        `strSetID_CM1` - This field contains the number that identifies CM1 transaction.

    - #### setSetID_CM1

          public void setSetID_CM1(SI objsetID_CM1)

      Set the Set ID CM1. This field contains a number that uniquely identify this transaction for the purpose of adding, changing, or deleting the transaction.
      Parameters:
        `objsetID_CM1` - Object of Set ID CM1.

    - #### setStudyPhaseIdentifier

          public void setStudyPhaseIdentifier(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 Study Phase Identifier.
      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.

    - #### setStudyPhaseIdentifier

          public void setStudyPhaseIdentifier(CWE objstudyPhaseIdentifier)

      Set the Study Phase Identifier.
      Parameters:
        `objstudyPhaseIdentifier` - Object of Study Phase Identifier.

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