IntakeProgramType und ScreeningProgramType in Ausdrücken

Wie bereits in Einführung erwähnt, können Kunden mit IEG dynamische Scripts zum Erfassen von Daten erstellen, die typischerweise als Teil einer Anwendung für ein Programm verwendet werden, oder die mögliche Anspruchsberechtigung bestimmen. IEG bietet eine außergewöhnliche Verarbeitung, um die Programme zu bestimmen, für die sich ein Anspruchsteller bewirbt.

Beim Definieren von Ausdrücken in einem IEG-Script können Sie sich auf die zwei Entitätstypen IntakeProgramType und ScreeningProgramType beziehen. Diese Entitätstypen sind jedoch nicht wirklich im Schema definiert, das zum Ausführen des Scripts verwendet wird. IEG wandelt diese Ausdrücke und die Entitätstypen um, die in IntakeProgram und ScreeningProgram definiert werden sollen. Die Entitätstypen müssen mit dem Attribut "programTypeReference" mit dem Typ "IEG_STRING" definiert werden. Die Stammentität wird dann so definiert, dass IntakeProgram- und ScreeningProgram-Entitäten wie folgt erfasst werden:

Abbildung 1. Intake- und ScreeningProgram-Schema
<xsd:element name="Application">
  <xsd:complexType>
    <xsd:sequence minOccurs="0">
      <xsd:element ref="IntakeProgram" 
                      minOccurs="0" maxOccurs="unbounded" />
      <xsd:element ref="ScreeningProgram" 
                      minOccurs="0" maxOccurs="unbounded" />
    </xsd:sequence>
  </xsd:complexType>
  </xsd:element> 
  <xsd:element name="IntakeProgram">
    <xsd:complexType>
      <xsd:attribute name="programTypeReference" type="IEG_STRING"/>
    </xsd:complexType>
  </xsd:element>
  <xsd:element name="ScreeningProgram">
    <xsd:complexType>
      <xsd:attribute name="programTypeReference" type="IEG_STRING"/>
    </xsd:complexType>
  </xsd:element>

So kann ein einzelnes IEG-Script verwendet werden, um Informationen zu erfassen, die zum Verarbeiten von Anwendungen für mehrere Programme notwendig sind.

IEG erstellt die IntakeProgram- und ScreeningProgram-Entitäten nicht, sondern prüft nur das Vorhandensein der Attribute und deren Werte. Aus diesem Grund muss der Datenspeicher die erforderlichen Entitäten vorab enthalten, um diese Funktion nutzen zu können. Wenn die Entitäten eingegeben werden, muss der Wert des Attributs "programTypeReference" dem Attributnamen entsprechen, auf den im Ausdruck in der Scriptdefinition referenziert wird. Zum Beispiel kann ein Ausdruck wie folgt definiert werden:

Abbildung 2. IntakeProgram-Ausdruck
<condition expression="IntakeProgramType.FoodStamps==true">
  ...
</condition>

Wenn dieser Ausdruck ausgewertet wird, prüft IEG, ob die Stammentität eine untergeordnete Entität des Typs "IntakeProgram" hat, bei der das Attribut "programTypeReference" die Zeichenfolge "FoodStamps" enthält. Auf ScreeningProgram kann auf ähnliche Weise verwiesen werden:

Abbildung 3. ScreeningProgram-Ausdruck
<condition expression=
      "ScreeningProgramType.CashAssistanceProgram ==true">
  ...
</condition>

Wenn dieser Ausdruck ausgewertet wird, prüft IEG, ob die Stammentität eine untergeordnete Entität des Typs "ScreeningProgram" hat, bei der das Attribut "programTypeReference" die Zeichenfolge "CashAssistanceProgram" enthält.

Nur die Entitätstypen "IntakeProgram" und "ScreeningProgram" werden auf diese Weise unterstützt. Es gibt aber keine Einschränkung für den Wert des Attributs "programTypeReference" in den Entitätstypen.