OpenAjax Hub Specification v05

From MemberWiki

Jump to: navigation, search

(The most current version of the OpenAjax Hub Specification is at /member/wiki/OpenAjax_Hub_Specification.

(This wiki page holds a portion of the version 0.5 internal editorial draft for the OpenAjax Hub 1.0 Specification. The home wiki page for the version 0.5 draft specification is at /member/wiki/OpenAjax_Hub_Specification_v05. Version 0.5 is preserved for historical reasons and therefore may be out of date. A key point about version 0.5 is that it holds the first stable version after implementing decisions about the Hub made at the March 2007 face-to-face meeting and in the follow-in meetings which resolved detailed issues from March to May 2007.)



<--previous      contents--^       next-->

Abstract

This document is a working draft of the formal specification for OpenAjax Hub 1.0. (For people working off of snapshots of the spec and open source project, as of May 6, 2007, we are at OpenAjax.specVersion == 0.5.)

The OpenAjax Hub is a set of standard JavaScript functionality defined by the OpenAjax Alliance that addresses key interoperability issues that arise when multiple Ajax libraries are used within the same web page.

The OpenAjax Hub represents one of the key technical contributions of OpenAjax Alliance to the Ajax community consistent with the Alliance's mission. See for information on OpenAjax Alliance, including its white papers.

The OpenAjax Hub is a key technology component within the umbrella term OpenAjax Conformance. Ajax runtime libraries must support the OpenAjax Hub according to the conformance criteria defined by this specification in order to achieve OpenAjax Conformance. OpenAjax Alliance recommends that Web developers and IT professionals demand OpenAjax Conformance as an industry requirement from its Ajax technology providers. By requiring OpenAjax Conformance, customers gain confidence in their technology and product choices and realize benefits in terms of the ability to integrate Ajax technologies from multiple suppliers, ability to change suppliers at reduced costs, and increased certainty that their suppliers are adopting industry best practices.

Status of this Document

This is an editorial draft of a Specification that is under development at OpenAjax Alliance and has not yet been Approved by the OpenAjax Alliance Membership or OpenAjax Alliance Steering Committee. The document is likely to be developed within a future Interoperability Working Group at OpenAjax Alliance. This is a draft document and may be updated, replaced, abandoned, or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

The editor has assembled this document under the assumption that the document will be developed and finalized within a future Interoperability Working Group at OpenAjax Alliance under the terms of the OpenAjax Alliance Members Agreement and the emerging OpenAjax Alliance Development Process, and that ultimately this document will be submitted to the OpenAjax Alliance Membership and Steering Committee for Approval as an OpenAjax Alliance published Specification.

OpenAjax Alliance is developing an open source reference implementation and test suite of the OpenAjax Hub 1.0 feature set at http://openajaxallianc.sourceforge.net.

Public feedback on this document should be sent to public@openajax.org.

This document represents work at OpenAjax Alliance under the terms of the OpenAjax Alliance Members Agreement, where the Members of the OpenAjax Alliance have provided royalty-free patent covenants to their respective patent claims as described in the OpenAjax Alliance IPR Policy.

FIXME: Need to identify a location where errata will be posted.

Table of Contents

1 Introduction
Includes an overview into the motivation for having the Hub, what services it provides, and how it works. Also provides an overview for how the Hub should get deployed within runtime libraries and what this all means to an application developer.
2 Library Management
APIs for registering libraries, unregistering libraries, and querying about previously registered libraries.
3 Publish/Subscribe Event Management
APIs for its event management services that enable script logic (from either libraries, components and the application itself) to publish events on a broadcast basis and for script logic to listen (i.e., subscribe) to events fired by other script logic.
4 Implementation Metadata
Metadata that implementations of the Hub must provide.
A Examples
Examples.
B References
References to other specifications.
C Change Log
Change history.
D Issues
Some of the key issues (open and closed) relevant to this specification.




Copyright 2007 OpenAjax Alliance

Permission to copy and display the OpenAjax Hub specification, in any medium without fee or royalty is hereby granted, provided that you include the copyright notice as shown herein and link or URL to the Specification on the OpenAjax Alliance website. In addition, for parties wishing to implement this Specification, the Members of the OpenAjax Alliance have provided royalty-free patent covenants to their respective patent claims as described in the OpenAjax Alliance IPR Policy.

DISCLAIMERS: THIS SPECIFICATION IS PROVIDED "AS IS," AND THE OPENAJAX ALLIANCE AND ITS MEMBERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THIS SPECIFICATION ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.

TO THE FULLEST EXTENT PERMITTED BY APPLICABLE LAW, THE OPENAJAX ALLIANCE AND ITS MEMBERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THIS SPECIFICATION OR THE PERFORMANCE OR IMPLEMENTATION OF THE CONTENTS THEREOF.

No other rights are granted by implication, estoppel or otherwise.

Personal tools