Title: DeviceIndependence with UIML User Interface Markup Language
1Device-Independence with UIML(User Interface
Markup Language)
Marc Abrams abrams_at_harmonia.com uiml.org W3C
Workshop on Web Device Independent
Authoring October 2000
2Quotes from Position Papers
- New XML language should
- Allow author-once-deploy many scenarios
- Achieve clean separation between behavior,
content, presentation Ruud Siebelink - Issue is interaction not presentation Paul
Smethers, WAP - Ideal solution write well-formed code once
Jansen - Semantics meaning of Web content must be made
clear at primary design level William
Loughborough - Must adapt to new devices not envisionedRalph
Case, Stephane Maes
3Where UIML Fits In
Application database
Content (XML, audio,)
Device Adaption UIML
Using CC/PP
XHTML
VoiceXML
XHTML
VoiceXML
4UIML One Part of a Solution
- 3 years in development at Harmonia, Center for
HCI at Virginia Tech - Tools downloaded in 40 countries
- Compile to anything
- Anyone can freely implement UIML
- Objective is open standard
- One canonical representation of UI forany
device, language, OS, UI-metaphor
5Problem with Existing Approaches
- Suggested way to annotate existing markup
- ltcardgt
- ltselect classDISPLAY_SMALLgt
-
- lt/cardgt
6Key ConceptUIML is a Meta Language
- XML
- Doesnt define tags (ltPgt,)
- Must add doc type definition to make it useful
- No need to change XML as new tag sets invented
- UIML
- Doesnt define tool-kit specific tags (ltMenugt,)
- Uses a few powerful tags (ltpartgt, ltpropertygt,)
- Must add toolkit vocabulary to make it useful
- No need to change UIML as new devices invented
7UIML Model
Underlying principle of single authoring is MVC
to separate content/structure Ralph Case,
Stephane Maes
8UIML Skeleton
lt?xml version"1.0" ... ?gt ltuiml version"2.0"gt
lt/uimlgt
- What parts comprise the UI whats their
relationship?
9UIML Skeleton
- lt?xml version"1.0" ... ?gt
- ltuiml version"2.0"gt
- ltinterfacegt
- ltstructuregtlt/structuregt
-
-
-
- lt/interfacegt
- lt/uimlgt
10ltpeersgt Maps Classesto Targets
- ltd-class name"JButton" maps-to"javax.swing.JBu
tton"gt -
- lt/d-classgt
- Versus
- ltd-class name"JButton" maps-tohtmlinput"gt
-
- lt/d-classgt
- This part is written once, like a device driver
for an OS. - Events and calls to outside world handled
similarly.
11NxM Problem
- App composed on
- M pages
- accessed via N devices
- requires NxM authoring steps
- Ralph Case, Stephane Maes
12UIML PermitsDevelopment Continuum
Usedevice-specificvocabulary ltpart
ClassJPopupMenugtversusltpart ClassSelectgt
Usegenericvocabulary ltpart ClassMenu gt
13UIML Permits Families of UIs
14Another Perspective
Device-independent markup
Device-dependent markup
Scripting languages
High-level language (C, Java)
Assembly language
Machine language
15StillUIML is Not a Silver Bullet
- Some open problems
- Aid/enforce accessibility guidelines Jon Wu
- Support auto adaptation/personalizationRuud
Siebelink - Reorganizing UI
- Many apps will need to be re-designed entirely
Guido Grassel - 1 page in a desktop Web browser might be split
into 2 screens for TV Peter Ferne
16- European Workshop on UIML January 2001 in
Paris(see uiml.org)
17(No Transcript)
18Supplemental Slides
19Quote
- Level 0 represents universal content, level 1
content with knowledge of device capability,
Jon C.S. Wu
20More Quotes
- Assumption that there is primordial content
forming single original document - These assumptions are false
- A news story in one paragraph in tabloid is not
same as an extended column in a broadcast Miles
Sabin
21More Quotes
- WML/WMLScript differs significantly from
HTML/JavaScript. Hence format used needs to be
expressive enough Guido Grassel
22- Identification of content should be
device-independent - Text may be represented in either
fully-formated or paraphrased versions
Gimson
23More Quotes
- Choice between template-driven content-driven
presentation generation Sebastian Nykopp - Issue is interaction not presentation Paul
Smethers on WAP
24Toward N M