Top Banner
Marcos Caceres (QUT) :: WDS ::26 September, 2007
21

Widgets

May 17, 2015

Download

Technology

Marcos Caceres

Workshop Slides from Web Direction South W3C SIG day.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Widgets

Marcos Caceres (QUT) :: WDS ::26 September, 2007

Page 2: Widgets

Interaction designer/developer by trade

Joined W3C Web Apps Formats WG in 2006

Edit: Widgets 1.0 Requirements Widgets 1.0 Specification (with Anne van

Kesteren, Opera Software) XBL 2.0 Primer (with Lachlan Hunt)

Doing a PhD on widgets04/12/23 2

Page 3: Widgets

What are Widgets and Widget Engines?

Problem (lack of standards)How to address the problemWidget 1.0 Spec

Packaging Runtime instances

04/12/23 3

Page 4: Widgets

A single function application Made from web technologies (easy to build) Usually access local info or web services Types:

Desktop Mobile Web Physical

04/12/23 4

Page 5: Widgets

DESKTOP WIDGETS WEB WIDGETS

04/12/23 5

Yahoo! Widgets and Sidebar iGoogle Gadgets

Page 6: Widgets

MOBILE WIDGETS PHYSICAL WIDGET

04/12/23 6

Webwag WidgetStation

Page 7: Widgets

Software on which widgets run.Dashboard, Sidebar, Yahoo, Google

Gadgets

04/12/23 7Dashboard (Apple Inc.)

Yahoo! Widgets engine

Page 8: Widgets

04/12/23 8

Widget: “An end-user's conceptualisation of an interactive single purpose application for displaying and/or updating local data or data on the Web, packaged in a way to allow a single download and installation on a user's machine or mobile device.” [Widget-reqs]

Page 9: Widgets

Make a web pageZip it upPublish it online (or send it out)…or at least it should be that easy.

04/12/23 9

Page 10: Widgets

To make a widget more useful: Ajax (web 2.0 stuff)Web servicesRSS/podcastsWeb APIs/mashupsAccess to device

Camera, SMS, etc

04/12/23 10

Page 11: Widgets

AnyoneEnterprise uses

Eg: SAP

04/12/23 11

SAP Prototype Widget [SAP]

“…in the U.S. marketing spending on mobile widgets will reach [US]$500 million by 2010, up from about $2 million [in March 2007]” [BusinessWeek]

“2007: year of the Widget?”[Newsweek]

Page 12: Widgets

No interoperability across widget engines

Security issues not fully resolved Are all user needs met?

▪ Enterprise requirements▪ Internationalisation▪ Accessibility

How will they work on phones? Mobility Persistent storage? Keeping costs down.

04/12/23 12

Page 13: Widgets

PACKAGING

Format and Media Type

Automatic Updates Auto-discovery Embedding in HTML Digital Signature

WIDGET INSTANCE

Initialisation (bootstrapping)

Metadata/Preferences DOM APIs and Events

Cross-widget communication

Rendering Security model

04/12/23 13

Page 14: Widgets

Format Zip (version 2)

▪ Deflate or uncompressed

Excludes support for:▪ 64Bit▪ Encryption▪ Splitting▪ Unicode

Maximize interoperability

Media Type application/widget

Extension *.wgt

04/12/23 14

Page 15: Widgets

Keep widget up to dateWidget engine periodically checks for

updates: Is the Version number HTTP Caching control

▪ Etags, Last modified dateWhat happens when there is no caching

info? What happens when a widget is auto

generated?d04/12/23 15

Page 16: Widgets

AUTO-DISCOVERY

Auto-discovery enables a browser to identify and install a widget that is associated with an web page.

<a rel="widget“ href=“my.wgt“>Widget</a>

EMBEDDING IN HTML

HTML4/XHTML Using <object>

HTML5? We will be approaching

HTML-WG.<widget src=“my.wgt”>

<div>…Fallback content…</div>

</widget?>• We are still

investigating how to do this.

04/12/23 16

Page 17: Widgets

XML Digital Signature

Sign everything in a package Signed Info

▪ Crypto algorithm

Signed value Key info

▪ Digital certificate

Manifest▪ The files

<?xml version="1.0" encoding="UTF-8"?><Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> <SignedInfo> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/> <SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" /> <Reference URI="#References" Type="http://www.w3.org/2000/09/xmldsig#Manifest"> <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>725x3fVasdfvBGFGjhjyDSFvUk=</DigestValue> </Reference> </SignedInfo> <SignatureValue>MC0E~LE=</SignatureValue> <KeyInfo> <X509Data> <X509Certificate>MI...lVN</X509Certificate> </X509Data> </KeyInfo> <Manifest Id="References"> <Reference URI="config.xml"> <DigestMethod

Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> <DigestValue>j6...8nk=</DigestValue> </Reference> <Reference URI="index.html"> <DigestMethod

Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>lm...34=</DigestValue> </Reference> <Reference URI="pictures/picture1.gif"> <DigestMethod

Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/> <DigestValue>pq...56=</DigestValue> </Reference> </Manifest> </Signature>

04/12/23 17

Page 18: Widgets

BOOTSTRAPPING

Automatically finding the start folder and file: HTML, XML, SVG support

(?) Internationalized

context /en/,/en-au/ ,/en-us/

Automatically launching the start file and configuring the application

METADATA

config.xml Metadata/Preferences

Widget (id, version, width, height, start)▪ title▪ Author (url, email)▪ description▪ License

Namespace:http://www.w3.org/ns/widgets

04/12/23 18

Page 19: Widgets

Leverage JavaScript+XHR

Widget Object openURL(url); preferenceForKey(key

) setPreferenceForKey(

value, key) Extensions to

window resizeTo, resizeBy,

moveTo, moveBy

Events state change, modal

priorities Cross widget

communication HTML 5’s model

04/12/23 19

Page 20: Widgets

SECURITY MODEL

No yet specified. Should we lock it

down or open it up? Disk access? Cross-domain

requests? Plugins? Flash? Java?

Executables?

RENDERING

Handling transparency in irregularly shaped widgets

04/12/23 20

Page 21: Widgets

[email protected]

Widget images (Microsoft Vista Sidebar)References[HTML5]http://www.whatwg.org/specs/web-apps/current-work/[BusinessWeek]Kharif, O. (2007, March 27). Widgets Gone Wireless. Retrieved 5 21, 2007:

http://www.businessweek.com/technology/content/mar2007/tc20070327_532303.htm

[SAP]https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/5598[Widget-reqs]http://www.w3.org/TR/widget-reqs/ [Widget-spec]http://www.w3.org/TR/widget/

04/12/23 21