Tagged: open standards Toggle Comment Threads | Keyboard Shortcuts

  • Joe 15:01 on March 6, 2009 Permalink
    Tags: declarative, model, , , open standards, , xforms   

    MozCamp – XForms and Declarative Applications 

    Steven Pemberton, author of the ABC programmin...

    Steven PembertonImage via Wikipedia

    XForms and Declarative Applications” – Steven Pemberton

    HTML Forms are a great success, the basis of the e-commerce revolution etc. but unanticipated at the time.

    After more than a decade of experience time to move on, move away from the misconception of HTML as a presentation language. More abstraction is needed for advanced purposes. Compare presentational HTML to the Zen Garden approach of basic HTML and rich CSS.


    • Ease of authoring
    • Good user experience
    • Ease of changing
    • Device independence (mobile platforms anyone?)
    • Accessibility
    • i18n
    • Validation

    The essence of XForms

    Complete separation of Date from Content: Instances and Controls

    The instance specifies the values being collected. Datatypes specify client side validation and constraints for values entered, even more complex logic like state is only required if county equals USA. Submission actions define the target for the data and what should be done with the result. Together this forms the model, the datasheet.

    Abstract or intent-based controls. These are bound to the data (values). Syntax is simply binding an input control to a data item, by which the input knows what data type should be expected and the correct control is chosen. E.g. input for birthdate, whre birthdata is of type date, renders a calendar input popup.

    The default XForms give you a toolbox which is very similar to a spreadsheet, no programming needed for common use cases. The actual XForms definition consist of standard XML and the data / values are transferred as XML as well.

    Any XML data can be bound to a control, so there’s nothing which prevents editing a xhtml document (as instance) by using XForms syntax. Any page element can be bound by using XPath. Only restrictions: the page must be well-formed xhtml and the server must accept PUT or POST in order to update the page.

    Other nice features include:

    • i18n for all form elemens, including labels.
    • auto-complete on form fields (demoed with live google translate per word, as you type.
    • live search: flickr images
    • geo-location as pair of lat/long or a map, bound to the same resource and so updating each other on change.

    Implementations vary from plugins (for msie) and native (mozilla). Big vendors use XForms as part of their CMS and Application servers already. Most of this is not user visible, you just experience a rich user interface in the browser.

    As a proof of concept, someone built a google-maps like application entirely in XForms which needed 25k of XForms data, compared to over 200k Javascript for Google Maps. Experience learns that one order of magnitude more code takes 34 times as much of effort (time, costs, bugs).

    Current browser support is still limited, but the ubiquity-xforms library aims at extending existing Ajax libraries to add XForms support for a broad range of browsers.

    Reblog this post [with Zemanta]
  • Joe 11:18 on March 6, 2009 Permalink
    Tags: , , Mozilla Europe, open standards, oss, Paul Rouget, Tristan Nitot   

    MozCamp Utrecht – kick off 

    "What is the Open Web and Why it Matters" - Tristan Nitot

    "What is the Open Web and Why it Matters" - Tristan Nitot (note: the slide mentions 2008 and there's a nice Fennec poster to the left)

    Today is the first of a series of MozCamps, held at the Surfnet HQ in Utrecht. Some notes…

    Tristan Nitot (chairman of Mozilla Europe) started his talk about the Open Web and why it matters. Quote: “standards are boring“, but they are essential for interoperability. So I can care about the brand of my phone (iPhone vs Nokia) and convey my lifestyle, rather than worrying about the network operator I’m using.

    Also, standards enable the network effect: the value of all users combined on one single network is much more than the sum of users of disjoint networks.

    Standardization worked out for telephony and email, but initially failed for IM (iCQ vs Yahoo vs MSN vs Jabber and so on – remember Excite PAL?).

    Same considerations apply for using proprietary plugins in browsers (Adobe Flash) vs using native browser capabikities, based on open standards: Canvas as a widely implemented alternative.

    All major brands (firefox 3.x, Safari 4.x, Google Chrome and Opera 10) except msie 8.0 implement SVG, Canvas native video, JIT Tracing for Javascript and HTML 5 features.

    The message is: we should improve the market share of open standards based browsers and enjoy the interoperability.

    Next Paul Rouget gives a demo of some these new cool features: native video, canvas, css3, filters, clip paths, canvas overlays… cool stuff indeed!

    Tristan Nitot again: the web is not TV, we can not only consume the content but change it if we want!

    Demo of people unknowingly working together: ThruYOU – a mix of youtube videos, resulting in a funky song. Each users’ contribution was useful even if they didn’t know in advance what their work would be used for. That is exactly how Open Source development isĀ  working.

    Followed by a demo by Olivier Gambier – Take back control over the Web using JavaScript (greasemonkey), Add-ons and Ubiquity – all means to take control over web content and interaction. Especially the pretty new Ubiquity is really useful!

    Nitot again: do we want TV and passively consume content, or be part of a world where we can participate instead?

    Reblog this post [with Zemanta]
Compose new post
Next post/Next comment
Previous post/Previous comment
Show/Hide comments
Go to top
Go to login
Show/Hide help
shift + esc

Twitter links powered by Tweet This v1.8.3, a WordPress plugin for Twitter.