com.mmm.cms.homehealth.proto
Interface HomeHealthGrouperIF

All Superinterfaces:
Describable, HomeHealthEventNotifierIF, Initializable, Namable, java.io.Serializable
All Known Implementing Classes:
GrouperVersion_v2308_1, GrouperVersion_v2308_2, GrouperVersion_v2409_1, GrouperVersion_v3110_1, GrouperVersion_v3210, GrouperVersion0203cAndPrior

public interface HomeHealthGrouperIF
extends Namable, Describable, Initializable, HomeHealthEventNotifierIF, java.io.Serializable

Describes the high level class that will score the Home Health Record. It manages all its own information about valid Diagnosis, Categories, V-codes, etc. It should organize the information and the Validation and scoring models to perform the detailed scoring process.


Field Summary
static java.lang.String DEFAULT_BLANK_VALUE
           
static java.lang.String HH_LOGGER_NAME
          Holds the public name of the Home Health Logger
 
Method Summary
 HomeHealthRecordValidatorIF getClincalValidator()
          Provides the validator for the Clinical portion of the scoring
 java.util.Calendar getEffectiveDateStart()
          gets the effective start date
 java.util.Calendar getEffectiveDateThru()
          gets the effective thru date
 HomeHealthRecordValidatorIF getNRSValidator()
          Provides the validator for the Non-Routine Supplies portion of the scoring
 java.lang.String getVersion()
          gets the version number id
 boolean isValidDiagnosisCode(HomeHealthRecordIF record, Icd9DiagnosisCodeIF code)
          Determines if the Diagnosis code is valie for this grouper
 boolean isValidForVersion(HomeHealthRecordIF record)
          This checks for proper dates, and assessment types to ensure that the record is valid for the specific implementation of the Grouper version.
 HomeHealthRecordValidatorIF populateValdateClinicalCodes(HomeHealthRecordIF record)
          This provides a way to determine if the codes on the record are valid for the version and to validate the record.
 ScoringResultsIF score(HomeHealthRecordIF record, boolean validateDates)
          Provides the overall grouping/scoring for the Oasis record
 
Methods inherited from interface com.mmm.cms.util.Namable
getName, setName
 
Methods inherited from interface com.mmm.cms.util.Describable
getDescription, setDescription
 
Methods inherited from interface com.mmm.cms.util.Initializable
init
 
Methods inherited from interface com.mmm.cms.homehealth.proto.HomeHealthEventNotifierIF
addEventListener, getEventListeners, getListenerCount, notifyEventListeners, removeEventListener, removeEventListeners
 

Field Detail

DEFAULT_BLANK_VALUE

static final java.lang.String DEFAULT_BLANK_VALUE
See Also:
Constant Field Values

HH_LOGGER_NAME

static final java.lang.String HH_LOGGER_NAME
Holds the public name of the Home Health Logger

See Also:
Constant Field Values
Method Detail

getVersion

java.lang.String getVersion()
gets the version number id

Returns:
The version number of the grouper

getEffectiveDateStart

java.util.Calendar getEffectiveDateStart()
gets the effective start date

Returns:
The date this version starts being valid

getEffectiveDateThru

java.util.Calendar getEffectiveDateThru()
gets the effective thru date

Returns:
The last day this version is valid

isValidForVersion

boolean isValidForVersion(HomeHealthRecordIF record)
                          throws InvalidDateException
This checks for proper dates, and assessment types to ensure that the record is valid for the specific implementation of the Grouper version.

Parameters:
record -
Returns:
true if the record is valid for this version of the grouper
Throws:
InvalidDateException

score

ScoringResultsIF score(HomeHealthRecordIF record,
                       boolean validateDates)
Provides the overall grouping/scoring for the Oasis record

Parameters:
record -
validateDates - - if true then is calls isValidForVersion() prior to scoring. If isValidForVersion() is called, and returns false, the record will not be scored.
Returns:
the results of the scoring - it will never be null

isValidDiagnosisCode

boolean isValidDiagnosisCode(HomeHealthRecordIF record,
                             Icd9DiagnosisCodeIF code)
Determines if the Diagnosis code is valie for this grouper

Parameters:
record -
code -
Returns:
True if the code is valid for the grouper version and the effective data of the code

populateValdateClinicalCodes

HomeHealthRecordValidatorIF populateValdateClinicalCodes(HomeHealthRecordIF record)
This provides a way to determine if the codes on the record are valid for the version and to validate the record. scoring

Parameters:
record -
Returns:
the validator used to validate this record

getClincalValidator

HomeHealthRecordValidatorIF getClincalValidator()
Provides the validator for the Clinical portion of the scoring

Returns:
HomeHealthRecordValidatorIF

getNRSValidator

HomeHealthRecordValidatorIF getNRSValidator()
Provides the validator for the Non-Routine Supplies portion of the scoring

Returns:
HomeHealthRecordValidatorIF