New and important features of the drgValidator

The internals of swissDRG and APDRG differ significantly. However, it was a design goal to not change the COM interface and thus to not generate a new version of the drgValidator.

As a consequence methods of both the ISearch and IValidate interfaces have been patched to reflect the different internals of the DRG catalogs.
The following list identifies these methods and propeties that have been patched for swissDRG:

IValidate interface

  • AddService method
    There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! Furthermore, swissDRG distinguishes between normal and relocation cases. For being able to separate these cases, pseudo services have been defined consisting of a tariff type, a date and a pseudo code! Such a pseudo code consists of:
    where the whole pseudo code is case and whitespace insensitive. A pseudo code is active until the next call of the Initialize method and is then reset to the default values.

    The following pseudo codes are defined for swissDRG:

    1. setParameter(providerType=value), with value = { hospital | maternityClinic }, and hospital as default.
      This command set the focus to swissDRG service records for hospitals or maternity clinics, respectively.
    2. setParameter(relocation=value), with value = { on | off }, and off as default.
      This command calculates the TP for the normal (off) or relocation (on) case.
    The return value of AddService is S_OK for successfully set a pseudo value. However, do not call the properties as these are undefined in such a case.

ISearch interface
  • SearchCode, SearchName, SearchMDC methods
    There are 2 service providers in swissDRG -hospitals and maternity clinics- using the same service code space! The hospital provider is the default space and maternity clinics are chosen by prepending maternityClinic: to the query term.
  • GetTP property
    A negative LOS signals to calculated the effective cost weight for the relocation case of the given |LOS|.
  • GetCodeType property
    All swissDRG codes of type "other" are counted as enCodeUndefined.
  • GetServiceType property
    The interpretation of the serviceType changes for SwissDRG and APDRG!
  • GetHighTrimPoint2 property
    swissDRG does not have a HTP2! Therefore, the "exception to readmission" information is supplied via this property: -1 = no exception; 1 = exception