2008 InteropFest
From MemberWiki
Contents |
Introduction
This wiki page is the main page for the 2008 OpenAjax Alliance InteropFest, a major interoperability event conducted by the members of OpenAjax Alliance during the summer and early fall of 2008 covering many technology areas.
Because of the many interoperability areas covered by the 2008 InteropFest, it would be reasonable to call it the "2008 Ajax IDE, JavaScript API, Web Widget, and Mashup Editor InteropFest" because multiple categories of products can demonstrate OpenAjax compatibility in any of the following ways:
- Ajax IDEs - Visual developer tools for Ajax programmers can demonstrate OpenAjax compatibility by either of the following:
- Loading descriptions of JavaScript APIs where the JavaScript APIs are defined by the OpenAjax Metadata Specification
- Loading descriptions of UI controls from Ajax libraries where the UI controls are defined using the OpenAjax Metadata Specification
- Ajax libraries - Ajax runtime libraries can demonstrate OpenAjax compatibility in any of the following ways:
- Describing their JavaScript APIs in conformance with the OpenAjax Metadata Specification (or alternatively demonstrating the ability to transcode their existing descriptions of JavaScript APIs into the format defined by the OpenAjax Metadata Specification)
- Describing their UI controls in conformance with the OpenAjax Metadata Specification (or alternatively demonstrating the ability to transcode their existing descriptions of UI controls into the format defined by the OpenAjax Metadata Specification)
- In either case, to claim successful participation, the OpenAjax Metadata files must validate successfully against the language schema. (There is a Validator widget within the Sample Mashup Application.)
- Mashup Editors - Visual mashup editors can demonstrate OpenAjax compatibility by either or both of the following:
- Supporting OpenAjax Hub 1.1's secure mashup runtime engine
- Supporting widgets that conform with OpenAjax Metadata
- Widgets - Web widgets designed for use within mashups can demonstrate OpenAjax compatibility by either of the following:
- Conforming to the widget metadata format defined by the OpenAjax Metadata Specification
- Compatibility with a transcoder that converts into the widget metadata format defined by the OpenAjax Metadata Specification
- In either case, to claim successful participation, the OpenAjax Metadata files must validate successfully against the language schema. (There is a Validator widget within the Sample Mashup Application.)
About the technologies
There are two primary application areas that are the focus of the 2008 InteropFest:
Ajax IDEs and Ajax libraries
OpenAjax Alliance is working to address the NxM interoperability problem where there are a number of Ajax developer tools (N) and a very large number of Ajax runtime libraries (M, where M is likely to be in the hundreds). With its OpenAjax Metadata Specification, the alliance is defining an industry standard for how to describe the JavaScript APIs and UI controls found in Ajax libraries so that Ajax IDEs can implement a single format (i.e., OpenAjax Metadata) and achieve support many different Ajax libraries at once, versus having to do costly work to support each Ajax library individually. For a more detailed write-up on IDEs and Ajax libraries, see (...need to add a link to a supplemental document...).
Mashups and widgets
OpenAjax Alliance is working on multiple related technology efforts in order to help realize the potential of mashup technologies to enable user-generated applications, where applications are assembled by end users by dragging various widgets onto a canvas and connecting widgets together. The two main inhibitors to widespread deployment of mashups are security issues and interoperability challenges. OpenAjax Alliance is addressing security primarily through the secure mashup runtime environment found within OpenAjax Hub 1.1. The alliance is addressing widget interoperability primarily through its widget metadata standards within OpenAjax Metadata.
The Reference Implementation - a Sample Mashup Application
One of the centerpieces for the 2008 InteropFest is the Sample Mashup Application, which represents a reference implementation of many of the technologies used in the 2008 InteropFest.
The Sample Mashup Application is focused mainly on the mashup and widget workflows and therefore implements most of the mashup and widget features found in the OpenAjax Metadata and OpenAjax Hub 1.1 specifications; however, it does not attempt to implement all of the IDE-related features found in the OpenAjax Metadata specification.
The Sample Mashup Application is primarily designed for technology demonstration purposes in order to help test out the OpenAjax specifications that are under development and to serve the purposes of the 2008 InteropFest. The Sample Mashup Application is not intended to be suitable as a useful end-user product. Instead, we hope that the technologies used by the Sample Mashup Application will be adopted by both commercial products and open source projects to promote Ajax industry interoperability.
InteropFest types of participants and tests
The table below shows how various types of products can use the above tools to verify OpenAjax compatibility as part of the 2008 InteropFest:
Type of product | What this category of product needs to do for successful participation in the 2008 InteropFest | Which InteropFest verification tool should you use |
---|---|---|
Ajax IDE |
|
IDE verification has be done manually and visually by the IDE developers themselves. However, the OpenAjax Alliance open source project includes various tools that can help the IDE developer. It contains a tool to convert JavaScript files with inline JSDoc comments into OpenAjax Metadata. Many sample widgets are available in the open source project and in the widget repository found in the Sample Mashup Application |
Ajax library | Create OpenAjax Metadata file(s) to document either some of the library's JavaScript APIs or its UI controls or demonstrate the ability to transcode the library's metadata into OpenAjax Metadata. The OpenAjax Metadata file(s) must validate against the language schema. | There is a Validator widget within the Sample Mashup Application. |
Mashup editor | Implement support for OpenAjax Metadata for Widgets and/or OpenAjax Hub 1.1 | Sample widgets can be found within the widget repository that is included in the Sample Mashup Application and in the alliance's open source project. |
Web Widget | Create an OpenAjax Metadata file for your widget. The OpenAjax Metadata file(s) must validate against the language schema. Most widget developers will want to test to see if the widget can be loaded by the Sample Mashup Application. | There is a Validator widget within the Sample Mashup Application. |
Schedule: Late Summer and Early Fall 2008
The InteropFest would take place in the late summer and early fall of 2008, starting in August and continuing until just before AJAXWorld and the OpenAjax F2F meeting in October.
We expect that the various specifications involved, the open source, and the various tests to go through one revision midway through the InteropFest to address feedback from the first round of participants.
2008 InteropFest Results
The participants in the InteropFest should edit the tables below to show their successful participation.
Product | Notes:
|
---|---|
IDEs | |
Aptana Studio | Aptana Studio 1.2 can read in OpenAjax API Metadata files and convert them to Aptana's ScriptDoc format to provide code assist. |
Eclipse JSDT | The Eclipse JSDT project has implemented native support for OpenAjax API Metadata files. |
IBM Rational Application Developer | The Rational Application Developer product uses Eclipse JSDT project for native support for OpenAjax API Metadata files. |
Libraries | |
Lightstreamer Web Client |
|
YUI library | Complete representation of the JavaScript APIs in the YUI toolkit within a (giant)OpenAjax Metadata file, accomplished via code that has been contributed to the OpenAjax open source project. The generated (giant) OpenAjax Metadata file has been checked into the OpenAjax open source project. |
(other Ajax libraries) | (coming soon) |
Mashup editors | |
OpenAjax Mashup Editor | Reference implementation for most of the technologies used in the InteropFest. Supports OpenAjax Hub 1.1 and OpenAjax Metadata. Implements mashup security using "SMash" sandboxing techniques. |
ILOG | ILOG has successfully installed the open source mashup framework. |
Nexaweb | TBD |
Programmable Web | Programmable Web has successfully installed the open source mashup framework and its own instance of a widget repository at a location at ProgrammableWeb.com. |
TIBCO | TBD |
SAP | SAP Research successfully implemnented a browser based Enterprise Mashup Application (EMAP) Platform for Enterprise Mashup application development and runtime for new genration developers using OpenAjax widgets spec and OpenAjax Hub for inter-widget communication. |
Widgets | |
Adobe Dreamweaver | Adobe Dreamweaver CS4 has adopted the OpenAjax widget format as their standard format for Ajax widgets that can be placed onto a Dreamweaver canvas. Adobe created OpenAjax widgets from scratch and uploaded into the open source widget repository. |
Dojo toolkit | Various Dojo widgets are available as OpenAjax widgets within the open source reference implementation. |
Google Gadgets | The open source reference implementation supports a large number of Google Gadgets due to adaptation logic to be transform the Gadgets into an OpenAjax widget data model. |
ILOG | ILOG has made one of its sophisticated JSF-based mapping widgets as an OpenAjax widget. |
Programmable Web | Has created a couple of sample widgets in OpenAjax widget format. |
(other widgets) | (coming soon) |
Task list
The following wiki page contains a list of open and closed tasks associated with the 2008 InteropFest: