XHTML/XForms/XML Events vs. UIML Marc Abrams April 2002
Philosophy HTML is on a path to separate pieces of a UI: Step 1: everything mixed together in HTML 3.2 Step 2: separate style (CSS, XSL-FO) Step 3: separate forms (XML Forms) Step 4: separate events (XML Events) UIML started by asking, “what is ultimate separation?” Answer: 6 elements (part structure, style, content, behavior, APIs, mapping abstract names to target toolkit)
Application database Content (XML, audio,…) Device Adaptation UIML XHTMLVoiceXMLXForms… Where UIML Fits W3C World* * Diagram from Dave Raggett’s W3C Bristol talk, Fall 2000
UIML and XForms/XHTML XForms is very helpful for UIML XForms makes Web-based forms more powerful
XForms Reduces “distance” UIML Renderer Java Voice XML WML HTML 3.2, 4.0 XForms/XHTML More Primitive
XForms Versus UIML XForms (1/18/02 draft) UIML UI = Form to collect dataAny UI Mixes content & UI structureSeparates content Sophisticated data modelLimited models; could adopt XForms model XML Events for event handling Condition/action pairs UI connects to form processorUI connects to anything (RPC, EJB,.Net, SOAP, messages) Limited extensibilityMeta-language: Total extensibility
XML Events vs. UIML Behavior (1) XML Events annotate XML tree: attach to XML tree elements XML Events view: What events can happen for this node? UIML behavior takes HCI – UIMS view: what is theoretically most powerful way to describe UI behavior? Answer is an event- based condition/action pairs.
XML Events vs. UIML Behavior (2) XML Events: if event X happens for XML tree node Y then do Z UIML Behavior: if condition A holds then do B where condition could be arbitrary Boolean expression involving X