Model-Based UI W3C XG

Similar documents
Layered UI and Adaptation Policies for Ubiquitous Web Applications

MyMobileWeb project's position

Declarative Formats for Web Applications WWW2006 Art Barstow Chair of the Web Application Formats (WAF) WG

Rich Web Application Backplane

Lesson 5 Introduction to Cascading Style Sheets

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

New Directions for Web Applications 1/11

SCXML. Michael Bodell.

Delivery Options: Attend face-to-face in the classroom or remote-live attendance.

Web Site Development with HTML/JavaScrip

The Next Generation of Eclipse: e4. Mike Milinkovich Executive Director Eclipse Foundation

W3C DPIG Charting the Path Forward for the Future of Publishing with the Open Web Platform

Etanova Enterprise Solutions

Understanding the Web Design Environment. Principles of Web Design, Third Edition

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

GRITS AJAX & GWT. Trey Roby. GRITS 5/14/09 Roby - 1

Web Standards Mastering HTML5, CSS3, and XML

The Business Value of Open Standards. Michael(tm) Smith

<put document name here> 1/13

JAVASCRIPT FOR PROGRAMMERS

This course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.

Professional Course in Web Designing & Development 5-6 Months

XML Applications. Introduction Jaana Holvikivi 1

Rich Web UI made simple Building Data Dashboards without Code

Component Model for Multimodal Web Applications

Introduction to XML. Asst. Prof. Dr. Kanda Runapongsa Saikaew Dept. of Computer Engineering Khon Kaen University

Course Details. Skills Gained. Who Can Benefit. Prerequisites. View Online URL:

Recommendations for Improving Device Independent Presentation Authoring. Krishna Vedati. Fast. Forward. Wireless.

CS WEB TECHNOLOGY

Overview. Principal Product Manager Oracle JDeveloper & Oracle ADF

Interactive XML Visualization - using XSLT 2.0 on the Browser. Phil Fearon - Saxonica

Introduction to XML 3/14/12. Introduction to XML

Dojo: An Accessible JavaScript Toolkit

The Ubiquitous Web. Dave Raggett (W3C/Volantis) CE2006, 19 September Contact:

Device Independent Principles for Adapted Content Delivery

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

Frontend UI Training. Whats App :

Widget Toolkits CS MVC

Extreme Java G Session 3 - Sub-Topic 5 XML Information Rendering. Dr. Jean-Claude Franchitti

Tooling for Ajax-Based Development. Craig R. McClanahan Senior Staff Engineer Sun Microsystems, Inc.

Introduction to Dreamweaver CS4:

c122jan2714.notebook January 27, 2014

Responsive Design. Responsive design is it important? But typical is not enough. Some typical screen sizes

Web Designing Course

Java EE 6: Develop Web Applications with JSF

COMET, HTML5 WEBSOCKETS OVERVIEW OF WEB BASED SERVER PUSH TECHNOLOGIES. Comet HTML5 WebSockets. Peter R. Egli INDIGOO.COM. indigoo.com. 1/18 Rev. 2.

Programming the World Wide Web by Robert W. Sebesta

Index LICENSED PRODUCT NOT FOR RESALE

Developing Ajax Web Apps with GWT. Session I

Dreamweaver Domain 5: Organizing Content by Using Dreamweaver CS5

jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc.

HTML5 MOCK TEST HTML5 MOCK TEST I

UNIT -II. Language-History and Versions Introduction JavaScript in Perspective-

I, J, K. Eclipse, 156

Mix It Up: Visual Studio 2010 and ASP.NET 4.0. Singapore 25 March 2009

MODULE 2 HTML 5 FUNDAMENTALS. HyperText. > Douglas Engelbart ( )

Varargs Training & Software Development Centre Private Limited, Module: HTML5, CSS3 & JavaScript

Advanced Dreamweaver CS6

Towards Declarative 3D in Web Architecture Jean Le Feuvre

Languages in WEB. E-Business Technologies. Summer Semester Submitted to. Prof. Dr. Eduard Heindl. Prepared by

A Comparison of User Description Languages Concerning Adaptability Based on User Preferences

State of the Open Web. Brad Neuberg, Google

Implementing a common information architecture using DITA

It is possible to create webpages without knowing anything about the HTML source behind the page.

Java SE7 Fundamentals

Adobe Dreamweaver CS6 Digital Classroom

Accessibility of EPiServer s Sample Templates

Implementing a Numerical Data Access Service

Styles, Style Sheets, the Box Model and Liquid Layout

Building Rich Applications with Appcelerator

Modern and Responsive Mobile-enabled Web Applications

3D on the Web Why We Need Declarative 3D Arguments for an W3C Incubator Group

Web Design Course Syllabus and Course Outline

Outline. Introduction to JavaScript Resources What is JavaScript? JavaScript in web pages

A Look Into the Future: SVG and related XML standards. Jon Ferraiolo Jon Ferraiolo Consulting 15 July 2002

Oracle Developer Day

Web Development. With PHP. Web Development With PHP

EXPLORE MODERN RESPONSIVE WEB DESIGN TECHNIQUES

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group


8. Markup Languages. Characteristics of Computer-Use Markup Languages. Markup. Markup language- History

Web Technology for Test and Automation Applications

A Web-Based Introduction

Hypertext Markup Language, or HTML, is a markup

Certified HTML5 Developer VS-1029

dotnettips.com 2009 David McCarter 1

Introducing pdfhtml. Technical presentation

Web Programming and Design. MPT Junior Cycle Tutor: Tamara Demonstrators: Aaron, Marion, Hugh

What is CSS? NAME: INSERT OPENING GRAPHIC HERE:

XML: Introduction. !important Declaration... 9:11 #FIXED... 7:5 #IMPLIED... 7:5 #REQUIRED... Directive... 9:11

Building Custom UIs for APS 2.0 Applications. Timur Nizametdinov, APS Dynamic UI Lead Developer

Basics of Web. First published on 3 July 2012 This is the 7 h Revised edition

Web development using PHP & MySQL with HTML5, CSS, JavaScript

Basics of Web Technologies

HTML5 Responsive Notify 2 DMXzone

VOL ALPHA FIVE WEB APPLICATIONS: THE TUTORIAL

Certificate in Web Designing

Comp 336/436 - Markup Languages. Fall Semester Week 4. Dr Nick Hayward

('cre Learning that works for Utah STRANDS AND STANDARDS WEB DEVELOPMENT 1

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built

Transcription:

José M. Cantera http://mymobileweb.morfeo-project.org Telefónica I+D Model-Based UI W3C XG Telefónica I+D's Input FIT-350405-2007-1 FIT-350401-2006-2 1

Background Developing applications for the Ubiquitous Web is hard. Main reason: (X)HTML is a general purpose language designed to create hypertext documents in the web, but not for describing user interfaces intended to work on multiple devices or modes of interaction Developers have always been demanding more powerful abstraction mechanisms. As a result, the market has responded with declarative and imperative solutions: Ajax Toolkits Dojo, Yahoo, GWT,... Propietary, tag-based, higher-level abstraction layers JSF, XAML, XUL, Laszlo, MSXML What about open standards? Alternatives (all of them insufficient): XHTML + XFORMS + Javascript and/or DIAL HTML 5 + Web Forms 2.0 There is a big yet-to-be-explored potential for declarative authoring languages for UI Applying existing research results on model-based UI dev. 2

Model-Based UI.- Overview UML Ontologies Task / Dialog Models Standard Languages SCXML? Mapping Abstract User Interface Model Extended DIAL XForms? Domain Model Concrete User Interface Model Physical Layer Mapping Mapping Policies Policies Standard Concrete UI components / Mechanisms HTML 5 CSS 3 VoiceXML 3

Abstract vs Concrete UI (I) Tag-based abstraction technologies deal with the concrete UI representation but not with the abstract UI This leads to problems in the presence of multiple delivery contexts DIAL might be the starting point towards an abstract UI language We could think of what is missing in DIAL for being an abstract UI language DIAL modularization can save us the day We can work in standard mechanisms for mapping between the abstract UI and the concrete UI Via adaptation policies Setting up layers that are on top of web browser technologies In the long term, we should think of the standardization of upper layers such us task-based models and dialogue description 4

Mapping Abstract - Concrete UI (II) The mappings between abstract and concrete UI determines how an abstract component is finally 'rendered' in a delivery context For multiple delivery contexts it can be needed multiple mappings Rendering / mapping / binding policies (a name should be chosen) In MyMobileWeb the mapping between the abstract and concrete user interface is done by means of a CSS property that can take different well-known values. Examples: A select element (in the abstract UI layer) can be rendered as a set of radio buttons, as a pull down list, or as a list of links A command element can be rendered as a link or as a button The mechanism is similar to the 'appearance' property specified in the CSS 3 Basic User Interface Module http://www.w3.org/tr/css3-ui/ 5

Mapping Abstract - Concrete UI (III) Changing the mapping between different delivery contexts is very simple Just setting up different CSSs using Media Queries (executed at server side if necessary) The CSS-based approach is quite simple and useful but It is not very flexible for specifying presentation properties at the level of the concrete UI, due to the lack of nesting in CSS (see example 1) When the developer needs customized concrete UI representations it fails, although technologies like XBL can fill the gap There is a mixing of layers (browser layer and UI definition layer) Example 1 If the command is mapped to a link I want the link font to be normal If the command is mapped to a button I want the button font to be bold This problem can be workarounded using CSS pseudo-classes but it is not very flexible 6

Adaptation Policies (I) Instructions given by the developer to guide the adaptation process through different delivery contexts Kind of policies Styling policies Layout policies Rendering policies (mapping between the abstract and concrete user interface) Content Selection policies Pagination policies...

Adaptation Policies (II) For defining adaptation policies it is necessary to Set up a common and extensible framework for adaptation policies Issue: Should we follow a top-down approach or a bottomup approach? For each kind of policies define a vocabulary of properties that will be used for defining the policies Have a language that allow to choose between different policies for different Delivery Contexts. DISelect might be the language

Possible work items for the XG Brainstorming Make XForms more abstract Standardize common well-known mappings Standardize how to create mappings with SVG, SMIL, etc. Standardize how to extend common mappings in a flexible manner Standardize how to create extended mappings Standardize how to specify presentation properties at the level of the concrete UI Standardize mechanisms for specifying mapping policies Issue: Standardizing common mappings implies standardize concrete UI components Reuse ARIA work? 9

Conclusions There is a gap wrt open, standards-based declarative models for UWA and,in particular, in the user interface area Existing open standards are insufficient. AJAX and propietary tag-based abstractions are more and more popular but create and extreme dependency on specific toolkits. There is an opportunity for pushing forward the model-based UI approach exploiting the advantages that it presents when dealing with multiple delivery contexts This should be done incrementally, first introducing the abstract UI vs the concrete UI approach and then going beyond, introducing task and dialog models for UI (threelayer approach) Issue: What happens in those cases where people want to develop at the concrete level? There are a bunch of technologies that might be standarized by the UWA WG We do need to set up a roadmap and prioritize 10

Thank you for your attention http://mymobileweb.morfeo-project.org 11