We propose a programming model for composing and controlling Web 2.0 documents based on the Model-View-Controller design of XForms. Today’s mash-up code is tightly coupled; component interaction logic is intertwined with interaction logic typically through scripting. The current approach suffers from two disadvantages: it inhibits loose-coupling and reuse. Loose-coupling offers separation of concerns; it allows different authors to combine various components they might not have authored themselves in their own application. Reuse is a side-effect of proper encapsulation; when a component is insulated through a well-defined API, it can be re-used across multiple applications. The The approach we describe to mash-up authoring is based on a recursive composition model that leverages XForms and allows the creation of data driven XML Application Components hereon referred to as XACs. The architecture of these components satisfies four requirements that we hypothesize are essential for simplifying mash-ups: componentization, composition, customization and reuse. This talk will describe and demonstrate this programming model highlighting as ell an XML-based cross-component controller called State Chart XML (SCXML) under development in the Voice Browser Working Group in the W3C.
BIO: Charlie Wiecha is Manager, Multichannel Web Applications, at the IBM T.J. Watson Research Center. His research interests are in the areas of programming models and middleware for multi-channel and multi-modal web applications, and radically simplifying web application development through constraint-based distributed applications. Previously he has worked on early markup and model transform-based languages, including applications to public-access information systems such as the EXPO 92 system in Seville, Spain. He has also been involved in efforts to leverage web services infrastructures for user interaction, including the WSRP project at OASIS. Charlie’s current work focuses on declarative languages for voice and multimodal interaction, including VoiceXML 3.0, and XHTML+Voice, XForms 2.0 and web components, and “Radical simplification” – extending XForms for cross-organizational applications.
Charlie Wiecha is Manager, Multichannel Web Applications, at the IBM T.J. Watson Research Center. His research interests are in the areas of programming models and middleware for multi-channel and multi-modal web applications, and constraint-based distributed web applications. Charlie’s current work focuses on XForms, State Chart XML, and Collage, a declarative language for cross-organizational web applications.