Basic Eligibility/Entitlement UIM examples

The Engine includes with a set of screens to display decision details for basic objective and tag information (see Basic Eligibility/entitlement Decision Details). This section uses those screens to illustrate the mechanisms used for displaying decision details.

You should refer to the full Dynamic UIM page definitions and associated .properties files for the following pages:

Use of data in a condition

CREOLEDisplayRules_basicCaseDisplay.uim makes use of a Boolean value in a condition, which governs which cluster is displayed when the case is eligible or ineligible:

<SERVER_INTERFACE
    CLASS="CaseDetermination"
    NAME="DISPLAY"
    OPERATION="viewDecisionDisplayRulesCategoryXML"
  />
...
  <CLUSTER
    NUM_COLS="1"
    SHOW_LABELS="FALSE"
    TITLE="Cluster.Title.Eligibility"
  >


    <CONDITION>
      <IS_FALSE
        EXTENDED_PATH=
"/DecisionDetails/BasicCase/isEligibleTimeline"
        NAME="DISPLAY"
        PROPERTY="xmlData"
      />
    </CONDITION>
...

The XPath-like syntax of /DecisionDetails/BasicCase/isEligibleTimeline retrieves the value from the XML returned. In the example XML shown in Basic Eligibility/Entitlement example XML output, the value retrieved would be "true" (as a SVR_BOOLEAN) from the xmlData, which enables it to be used in the condition for the cluster.

Displaying a list of data

CREOLEDisplayRules_basicCaseDisplay.uim makes use of a list to display the list of objectives to which an eligible case is entitled. The Item[] syntax is used to refer to an item in the list.

...
<CLUSTER
  NUM_COLS="1"
  TITLE="Cluster.Title.Entitlement"
>
  <LIST>

    <DETAILS_ROW>
      ...
    </DETAILS_ROW>

    <FIELD
      DOMAIN="SVR_UNBOUNDED_STRING"
      LABEL="Field.Label.ObejctiveTypeID"
    >
      <CONNECT>
        <SOURCE
          EXTENDED_PATH=
"/DecisionDetails/BasicCase/displayObjectiveTimelines/Item[]/objectiveTypeID"
          NAME="DISPLAY"
          PROPERTY="xmlData"
        />
      </CONNECT>
    </FIELD>


    <FIELD
      DOMAIN="SVR_BOOLEAN"
      LABEL="Field.Label.Entitled"
    >
      <CONNECT>
        <SOURCE
          EXTENDED_PATH=
"/DecisionDetails/BasicCase/displayObjectiveTimelines/Item[]/isEntitledTimeline"
          NAME="DISPLAY"
          PROPERTY="xmlData"
        />
      </CONNECT>
    </FIELD>


    <FIELD
      DOMAIN="SVR_INT64"
      LABEL="Field.Label.Target"
    >
      <CONNECT>
        <SOURCE
          EXTENDED_PATH=
"/DecisionDetails/BasicCase/displayObjectiveTimelines/Item[]/targetIDTimeline"
          NAME="DISPLAY"
          PROPERTY="xmlData"
        />
      </CONNECT>
    </FIELD>


    <FIELD
      DOMAIN="SVR_UNBOUNDED_STRING"
      LABEL="Field.Label.RelatedReference"
    >
      <CONNECT>
        <SOURCE
          EXTENDED_PATH=
"/DecisionDetails/BasicCase/displayObjectiveTimelines/Item[]/relatedReferenceTimeline"
          NAME="DISPLAY"
          PROPERTY="xmlData"
        />
      </CONNECT>
    </FIELD>
  </LIST>
</CLUSTER>
...

Connecting a top-level screen to a sub-screen

CREOLEDisplayRules_basicCaseDisplay.uim allows each objective in its list to be expanded to show makes use of a list to display the list of objectives to which an eligible case is entitled. The Item[] syntax is used to refer to an item in the list. This is the top-level, or "outer" screen in the example:

<CLUSTER
  NUM_COLS="1"
  TITLE="Cluster.Title.Entitlement"
>
  <LIST>


    <DETAILS_ROW>
      <INLINE_PAGE PAGE_ID=
        "CREOLEDisplayRules_basicCaseDisplay_objectiveTagSubscreen">
        <CONNECT>
          <SOURCE
            NAME="PAGE"
            PROPERTY="determinationID"
          />
          <TARGET
            NAME="PAGE"
            PROPERTY="determinationID"
          />
        </CONNECT>
        <CONNECT>
          <SOURCE
            NAME="PAGE"
            PROPERTY="displayDate"
          />
          <TARGET
            NAME="PAGE"
            PROPERTY="displayDate"
          />
        </CONNECT>
        <CONNECT>
          <SOURCE
            EXTENDED_PATH=
"/DecisionDetails/BasicCase/displayObjectiveTimelines/Item[]/index"
            NAME="DISPLAY"
            PROPERTY="xmlData"
          />
          <TARGET
            NAME="PAGE"
            PROPERTY="businessObjectID"
          />
        </CONNECT>
      </INLINE_PAGE>
    </DETAILS_ROW>
    ...

  </LIST>
</CLUSTER>

This is the "inner" screen, CREOLEDisplayRules_basicCaseDisplay_objectiveTagSubscreen:

<PAGE_PARAMETER NAME="determinationID"/>
  <PAGE_PARAMETER NAME="displayDate"/>
  <PAGE_PARAMETER NAME="businessObjectID"/>

The inner screen receives the parameters from the outer screen.

<SERVER_INTERFACE
  CLASS="CaseDetermination"
  NAME="DISPLAY"
  OPERATION="viewDecisionDisplayRuleCategorySubscreenXML"
/>

The inner screen calls the CaseDetermination.viewDecisionDisplayRuleCategorySubscreenXML bean to get details for the businessObjectID passed. The bean returns XML for the required "Item".

<CLUSTER NUM_COLS="1">
  <LIST>


    <FIELD
      DOMAIN="SVR_UNBOUNDED_STRING"
      LABEL="Field.Label.Value"
    >
      <CONNECT>
        <SOURCE
          EXTENDED_PATH=
"/Item/displayTagTimelines/Item[]/valueTimeline"
          NAME="DISPLAY"
          PROPERTY="xmlData"
        />
      </CONNECT>
    </FIELD>
    ...

The inner screen contains XPath-like expressions to query the sub-screen XML to populate its sublist.