Brain Dump #1

Ulf Wiger <>
Thu Feb 6 14:58:43 CET 2003


On Thu, 6 Feb 2003, Marc Ernst Eddy van Woerkom wrote:

>Are you aware of the efforts to describe GUIs from an XML
>representation?
>
>One approach is XUL, which is used in Mozilla.
>The idea has also been picked up to create Java GUIs:
>
>  http://luxor-xul.sourceforge.net/
>  http://luxor-xul.sourceforge.net/talk/vanx-jul-2002/slides.html

Heh, cool.  (:

It looks fairly similar to a project we have here at AXD
301. I used xmerl to create a mapping towards our web-based
management system (see small example below) and we have
demonstrated a set of menus and pages using XML and CORBA to
build on our Erlang-based backend (Lars Thorsen did all the
hard stuff -- namely CORBA).

Perhaps some attempt to align with XUL is in order...

<!-- EVA Event Reg Info -->
<!-- Erlang code:
event_reg_info([UrlVars, Data]) ->
    Template = [[{type, index},
                 {link, {evaEvaMgr, change_event_reg_info}}],

                [{type, data},
                 {title, lms_name},
                 {title_help, {"1_1542-CNA121060", "CALName"}},
                 {align, left},
                 {title_align, left},
                 {value, ?'eventName'}],

                [{type, data},
                 {title, eva_ams_treatment},
                 {title_help, {"1_1542-CNA121060", "Treatment"}},
                 {value, ?'eventTreatment'},
                 {display_value, {evaEvaMgr, format, [eventTreatment]}}
                ],

                [{type, data},
                 {title, eva_ams_community},
                 {title_help, {"1_1542-CNA121060", "Community"}},
                 {value, ?'eventCommunity'}]
               ],

    TableAttr =
        [{template, Template},
         {rows, Data}],

    [{header, eva_ams_event_settings},
     {buttons, [reload, back, {help, {"1_15513-CNA121060","TRIS"}}]},
     {window_size, {600, 550}},
     {layout, [{table, TableAttr}]}].
-->

<?xml version="1.0"?>
<page_object>
   <header string.ref="eva_ams_event_settings"/>
   <buttons>
      <reload/>
      <back/>
      <help link="1_15513-CNA121060#TRIS"/>
   </buttons>
   <window_size width="600" height="550"/>
   <layout>
      <table>
         <template>
           <column>
              <type value="index"/>
              <link eval="evaEvaMgr#change_event_reg_info"/>
           </column>
           <column>
              <type value="data"/>
              <title string.ref="lms_name"/>
              <title_help link="1_1542-CNA121060#CALName"/>
              <align value="left"/>
              <title_align value="left"/>
              <value integer="2"/> <!-- should be symlink to MIB value -->
           </column>
           <column>
              <type value="data"/>
              <title string.ref="eva_ams_treatment"/>
              <title_help link="1_1542-CNA121060#Treatment"/>
              <value integer="3"/> <!-- should be symlink to MIB value -->
              <display_value eval="evaEvaMgr#formatEventTreatment">
                 <argument atom="eventTreatment"/>
              </display_value>
           </column>
           <column>
              <type value="data"/>
              <title string.ref="eva_ams_community"/>
              <title_help link="1_1542-CNA121060#Community"/>
              <value integer="4"/> <!-- should be symlink to MIB value -->
           </column>
         </template>
         <rows>
           <expand_xml eval="evaEvaMgrXML#rows"/>
         </rows>
      </table>
   </layout>
</page_object>


-- 
Ulf Wiger, Senior Specialist,
   / / /   Architecture & Design of Carrier-Class Software
  / / /    Strategic Product & System Management
 / / /     Ericsson Telecom AB, ATM Multiservice Networks




More information about the erlang-questions mailing list