Page content metadata

Users can display and enter server data in the main content area of an application. Page content metadata is used to create the content area. The basic unit of data is a field. Each field is either an output or input parameter of a server interface.

Various XML elements correspond to the user interface elements such as PAGE, FIELD, CLUSTER, LIST, ACTION_CONTROL, ACTION_SET and so on. The CONNECT element is an important construct that allows fields to be associated with parameters to server interfaces. As well as mapping fields, connections can also map page parameters and static text. The latter is not stored directly in the UIM, but is externalized in a property file which facilitates easier language localization of user interfaces.

Other XML elements, such as PAGE_PARAMETER and SERVER_INTERFACE, do not have visual representations in a UIM page but are important to the functionality of the page. A server interface is a method that has been implemented using the Cúram Server Development Environment (SDEJ). Each UIM page can be associated with one or more server interface methods. Each method is associated with either the initialization phase or the process phase. When the UIM page is first opened, the initialization phase methods are executed. Typically an initialization phase method uses page parameters as input parameters, and the resulting server data is mapped to output fields on the screen.

The process phase is initiated when an action control of type Submit is selected by the user. Data from input fields on the screen are mapped to input parameters of process phase server methods and the methods are invoked. After execution of process phase methods, the flow of control is determined by the Submit action, which can specify a link to a new target page, or by the default action which returns to the same page.

The following example shows an extract of UIM used to create the content area. The extract displays how the major elements that make up a screen of content area, such as clusters and lists, are represented in UIM.

Figure 1. Page UIM Example
<PAGE PAGE_ID="Person_search">

  <PAGE_TITLE>
    <CONNECT>
      <SOURCE NAME="TEXT"
              PROPERTY="PageTitle.StaticText1"/>
    </CONNECT>
  </PAGE_TITLE>

  <SERVER_INTERFACE NAME="ACTION"
    CLASS="Person_fo"
    OPERATION="search"
    PHASE="ACTION" />

  <CLUSTER NUM_COLS="2"
              TITLE="Cluster.Title.SearchCriteria">

    <FIELD LABEL="Field.Label.ReferenceNumber">
      <CONNECT>
        <TARGET NAME="ACTION" PROPERTY="referenceNumber"/>
      </CONNECT>
    </FIELD>

    <FIELD CONTROL="SKIP"/>

  </CLUSTER>

  <CLUSTER NUM_COLS="2"
              TITLE="Cluster.Title.AdditionalSearchCriteria">

    <FIELD LABEL="Field.Label.FirstName">
      <CONNECT>
        <TARGET NAME="ACTION" PROPERTY="forename"/>
      </CONNECT>
    </FIELD>

    ... more <FIELD> elements...

    <ACTION_SET ALIGNMENT="CENTER" TOP="false">

        <ACTION_CONTROL LABEL="ActionControl.Label.Search"
                           IMAGE="SearchButton"
                           TYPE="SUBMIT">
        <LINK PAGE_ID="THIS"/>
      </ACTION_CONTROL>

      <ACTION_CONTROL LABEL="ActionControl.Label.Reset"
                         IMAGE="ResetButton">
        <LINK PAGE_ID="Person_search"/>
      </ACTION_CONTROL>

    </ACTION_SET>
  </CLUSTER>

  <LIST TITLE="List.Title.SearchResults">

    <FIELD LABEL="Field.Title.Name" WIDTH="44">
      <CONNECT>
        <SOURCE NAME="ACTION"
                PROPERTY="personName"/>
      </CONNECT>
    </FIELD>
    ... more <FIELD> elements...
  </LIST>

</PAGE>