Along with the HTML and JavaScript, you can use DeXML/DeCaf coding in custom web apps.

All passed parameters are available in mixedRequestArray and you apply your own data to mixedResponseArray.

For example the DeXML script below fetchers rosters which are yet to be published.

<if>
    <condition>
      <index_exists var="mixedRequestArray" index="mixedDexmlParameters"></index_exists>
    </condition>
    <perform>
      <assign var="mixedDexmlParameters">
        <atom var="mixedRequestArray" index="mixedDexmlParameters" />
      </assign>
      <assign var="strStart"><atom var="mixedDexmlParameters" index="intStartTime" /></assign>
      <assign var="strEnd"><atom var="mixedDexmlParameters" index="intEndTime" /></assign>
      
      <db_fetch system="Roster" assign="mixedResponseArray" index="roster">
        <db_condition>
          <db_compare column="Date" function="ge">
            <atom var="strStart" />
          </db_compare>
          <db_compare column="Date" function="le">
            <atom var="strEnd" />
          </db_compare>
          <db_compare column="Employee" function="gt">
            <atom>0</atom>
          </db_compare>
        </db_condition>
      </db_fetch>
    </perform>
  </if>
  
<db_fetch system="LeaveRules" assign="mixedResponseArray" index="leaveRules">
  	<db_condition>
      <db_compare column="Id" function="ge">
        <atom>0</atom>
      </db_compare>
    </db_condition>
    <db_sort>
      <db_sort_column order="desc">PaidLeave</db_sort_column>
      <db_sort_column order="asc">Name</db_sort_column>
    </db_sort>
</db_fetch>
  
<exit var="mixedResponseArray"/>