1 Introduction to User Interface Markup Language (UIML)

Slides:



Advertisements
Similar presentations
Classification & Your Intranet: From Chaos to Control Susan Stearns Inmagic, Inc. E-Libraries E204 May, 2003.
Advertisements

Microsoft SharePoint 2010 technology for Developers
Authoring Languages and Web Authoring Software 4.01 Examine web page development and design.
Chapters 14 & 15 Internet Databases. E-Commerce  Bringing new products, services, or ideas to market, supporting and enhancing business operations 
Goals Give you a feeling of what Eclipse is.
Understand Web Page Development Software Development Fundamentals LESSON 4.1.
Chapter Concepts Review Markup Languages
Introducing Longhorn. What is it? Longhorn is Microsoft’s “most important software release since Windows 95” – due for release 2006 What this talk covers.
Tutorial 1 Developing a Basic Web Page
IELM 511: Information System design
October 16, 2007HighEdWebDev2007 Single Source Website for Full Spectrum Access Rick Ells University of Washington
1st Project Introduction to HTML.
WebQuilt and Mobile Devices: A Web Usability Testing and Analysis Tool for the Mobile Internet Tara Matthews Seattle University April 5, 2001 Faculty Mentor:
INTERNATIONAL SUMMER ACADEMIC COURSE UNIVESITY OF NIS ISAC – Android programming.
Chapter ONE Introduction to HTML.
Device-Independence with UIML (User Interface Markup Language) Marc Abrams uiml.org W3C Workshop on Web Device Independent Authoring.
XML, DITA and Content Repurposing By France Baril.
Chapter 1 Variables in the Web Design Environment.
Cs413_design01.ppt Web Design vs. GUI Design Designing for the Web: the designer has to give up full control of the design In traditional design, you control.
JavaServer Faces: The Fundamentals Compiled from Sun TechDays workshops (JSF Basics, Web-Tier Codecamp: JavaServer Faces, Java Studio Creator; IBM RAD)
Different ways to implement CSS. There are four different ways to use CSS in your web pages: – Inline CSS – Embedded CSS/Internal CSS – Linked CSS/External.
Pervasive e-commerce with XML Babak Esfandiari Carleton University Ottawa, Canada.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Operating system for mobile devices with a Java programming interface. Provides tools, e.g. a compiler, debugger, device emulator, and its own Java Virtual.
Chapter 2 Developing a Web Page. A web page is composed of two distinct sections: –The head content –The body Creating Head Content and Setting Page Properties.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
10 Adding Interactivity to a Web Site Section 10.1 Define scripting Summarize interactivity design guidelines Identify scripting languages Compare common.
The Internet and the World Wide Web. The Internet A Network is a collection of computers and devices that are connected together. The Internet is a worldwide.
Windows Presentation Foundation. Goal The goal of Windows Presentation Foundation (WPF) is to provide these advances for Windows. Included in version.
An Overview of MPEG-21 Cory McKay. Introduction Built on top of MPEG-4 and MPEG-7 standards Much more than just an audiovisual standard Meant to be a.
25 April 2000 SEESCOASEESCOA STWW - Programma Implementation of a component- based UI Deliverable 4.2.
XHTML/XForms/XML Events vs. UIML Marc Abrams April 2002.
Section 17.1 Add an audio file using HTML Create a form using HTML Add text boxes using HTML Add radio buttons and check boxes using HTML Add a pull-down.
Introduction to Eclipse Plug-in Development. Who am I? Scott Kellicker Java, C++, JNI, Eclipse.
JSF Introduction Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written permission.
Software Engineering Chapter 16 User Interface Design Ku-Yaw Chang Assistant Professor Department of Computer Science and Information.
Campus Tour COMP 523 Midterm Presentation Justin, Paul, Florian.
Murach’s ASP.NET 4.0/VB, C1© 2006, Mike Murach & Associates, Inc.Slide 1.
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
WEB APPLICATION DEVELOPMENT For More visit:
Session: 1. © Aptech Ltd. 2Introduction to the Web / Session 1  Explain the evolution of HTML  Explain the page structure used by HTML  List the drawbacks.
Mir Farooq Ali Computer Science, Virginia Tech May 9, 2003 Building Multi-platform User Interfaces using UIML.
DMED1100 InDesign Advanced Class 8. Agenda  Scripting  Introduction to XML 2.
Cs332a_chapt10.ppt CS332A Advanced HTML Programming DHTML Dynamic Hypertext Markup Language A term describing a series of technologies Not a stand-a-lone.
Advanced Technical Writing 2006 Session #4. Today in Class… ► Meet with your editorial team, refine/post deliverables ► Send URL for deliverables to Bill.
XML stands for Extensible Mark-up Language XML is a mark-up language much like HTML XML was designed to carry data, not to display data XML tags are not.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
Device-Independence with UIML (User Interface Markup Language) Marc Abrams uiml.org W3C Workshop on Web Device Independent Authoring.
Tutorial 1 Developing a Basic Web Page. Objectives Learn the history of the Web and HTML Describe HTML standards and specifications Understand HTML elements.
Adaptive User Interface Modelling for Web-environments T – Antti Martikainen
UI's for inputting and presenting the metadata of hypermedia documents Kai Kuikkaniemi HUT T
November 2006Mobile Prototyping Workshop Flash Lite 2.0 Dean Eckles Greg Cuellar.
INTRODUCTION JavaScript can make websites more interactive, interesting, and user-friendly.
® IBM Software Group © 2003 IBM Corporation IBM WebSphere Studio V5.1.2: Making Java Development Easier May 2004.
1 ITEC 4830 Graphics Design Chapter 1 Dreamweaver MX 2004 Basics.
XML 1.Introduction to XML 2.Document Type Definition (DTD) 3.XML Parser 4.Example: CGI Gateway to XML Middleware.
ECLIPSE RICH CLIENT PLATFORM Part 1 Introduction.
16 Copyright © 2004, Oracle. All rights reserved. Building ADF UIX View Components.
XNAT 1.7: Getting Started 6 June, Introduction In this presentation we’ll discuss:  Features and functions in XNAT 1.7  Requirements  Installing.
Project 1 Introduction to HTML.
W3C Web standards and Recommendations
Java Look-and-Feel Design Guidelines
Project 1 Introduction to HTML.
Section 10.1 YOU WILL LEARN TO… Define scripting
Phil Bernstein Microsoft Corp.
More Sample XML By Sadia Anjum.
JavaServer Faces: The Fundamentals
An Introduction to Software Architecture
Teaching slides Chapter 6.
Thin Client Content Deployment
Presentation transcript:

1 Introduction to User Interface Markup Language (UIML)

2 What is a Device?

3 A Scenario: A Hospital Doctor reviews schedule on office PC makes rounds with handheld checks patient status from voice phone Patient has relapse Info system locates device closest to doctor Text pager alerts message Doctor orders tests via smart phone

4 Problem: Tower of Babel Device variety Platform (Language & OS) variety Trouble !+=

5 Troubles for Developers Multiple source bases (WML, Java, C++, SpeechML, XUL,...) Keeping UIs consistent across devices Tracking changes in too many languages Learning to use too many interface technologies (voice, handwriting, …) Vendor risk

6 Trouble for System Admins Need to install new releases of software for multiple devices

7 Perspective Situation today is analogous to PC industry 20 years ago: –Many types of devices, many APIs –Eventually operating systems shielded developers from device-specific APIs UIML provides similar shield for devices

8 Another Perspective Machine language Assembly language “High-level” language (C++, Java) Scripting languages Device-dependent markup Device-independent markup

9 UIML Objective Universal, device-independent language –Able to describe family of UIsfamily –Maps language to devices via style sheets –Works even for devices not yet invented

10 Other UIML Objectives Naturally separates UI from rest of application Facilitates –rapid prototypingrapid prototyping –accessibility –internationalization Usable by non-programmers Extensible

11 UIML has 5 Key Concepts...

12 UIML is a “Meta” Language XML –Doesn’t define tags (,…) –Must add doc type definition to make it useful –No need to change XML as new tag sets invented UIML –Doesn’t define tool-kit specific tags (,…) –Uses a few powerful tags (,,…) –Must add toolkit peer definition to make it useful –No need to change UIML as new devices invented Concept 1:

13 UI description: Style: <property class=”MenuItemOrIcon" name="rendering” value="java.awt.MenuItem” /> Events are handled similarly. UIML’s Approach

14 Two approaches to cross-device language: Least common denominator Preserve full capability of each device (Each device UI is a different view into a rich backend application) No Loss of Power Concept 2:

15 Which UI elements present for device X? What presentation style for X? What words/sounds/images? What interface events? How to connect to backend? Specifying Any UI Answers 5 ?s... Concept 3:

16 UIML Skeleton …... UI description UI/backend connection Map to Java, etc.

17 E volution of Event Handling Handle button-click in C++, VB code Handle it in scripting language Handle it declarative (in UIML itself) Concept 4:

18 Facilitates internationalization: –Note that you didn’t see text for menuitem yet –Text for menu tag is in section. –Multiple texts for multiple languages Helps expert/novice UI problem UI = Elements + Style + Content Concept 5:

19 Credits UIML is an evolution from lots of good ideas: HTML/CSS/XSL separation of style UI management systems from HCI community The “X” in XML...

20 To learn more... uiml.org: tutorial, spec, Java renderer source code Try it! Downloadable Java renderer In progress: –SpeechML, WML, WinCE subset renderers –Dynamic interface server

21

22 Family of Interfaces

23 Rapid Prototyping Example One UI definition Two presentation styles

24

25 No Scripting or Java code for Events...

26

27