commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rahul Akolkar <>
Subject [PROPOSAL] Commons SCXML
Date Mon, 08 Aug 2005 18:23:06 GMT
-= Proposal for Commons SCXML =-

[I] Rationale:

The World Wide Web Consortium (W3C) Voice Browser Working Group
recently announced the publication of the first Working Draft of State
Chart XML (SCXML) [1]. SCXML provides a generic state-machine based
execution environment based on CCXML and Harel State Tables. SCXML is
a candidate for the control language within multiple markup languages
coming out of the W3C (see Working Draft for details). There are
potential use cases for SCXML within Apache projects. The availability
of an SCXML engine as a Jakarta Commons library will be of much

No such library exists in Jakarta Commons (or anywhere else, AFAIK,
under ASF license).

[II] Scope:
The package shall create and maintain an SCXML engine, capable of
executing a state machine defined using a SCXML document, while
abstracting out the environment interfaces. The codebase will be in
Java, distributed under the ASF license.

[III] Dependencies:

The SCXML codebase has the following dependencies:
a) Commons Digester
b) Commons Logging

Expression evaluation in SCXML documents is environment specific, the
expression evaluator and context of evaluation is envisioned to be
"pluggable", and the project possibly producing a
commons-scxml-core.jar and adapters for various environments. The
existing code provides an example for the servlet/JSP environment
c) Commons EL

The minimum JDK version shall be 1.2

[IV] Code Provenance:

The authors of this original work are Jaroslav Gergic and Rahul
Akolkar, and the code was contributed to Jakarta Taglibs, as part of
the RDC Taglib [2]. The code is already distributed under the Apache
license, in the RDC nightlies.

Source is available for viewing [3]
Javadoc is available as part of the RDC Javadoc [4]

[V] Naming, Resources and Conventions:

The base name for the proposed package will be:


The project will use the Jakarta Commons user and dev mailing lists,
will create a component repository named "scxml" (lower case) in SVN
under commons-sandbox and will be listed as "SCXML" (upper case) in
the component list under the Jakarta-Commons Bugzilla entry. Sun Java
conventions shall be used for coding style.

[VI] Committer Interest:

The following Apache committers have expressed interest in the
creation of this Commons Sandbox component [5]:
A) Martin Cooper
B) Rahul Akolkar

The RDC Taglib will have a dependency on Commons SCXML, so we have at
least one immediate user project within Apache. The RDC Taglib is one
of the active tag libraries in Jakarta Taglibs, with a 1.0 release cut
couple of weeks ago [6]. The SCXML code is under development [7], and
was not part of the 1.0 release.

-Rahul Akolkar

P.S. Hen (or anyone else in the infra role) - If there are no
objections, I'd like to start putting the new sandbox component
together. Therefore, I'd like to request karma for commons-sandbox.

Reference Links (might get fragmented, please copy with care):

[1] W3C SCXML Working Draft [ ]
[2] Reusable Dialog Components (RDC) Taglib [ ]
[3] SCXML codebase, direct [
[4] SCXML Javadoc, see relevant bits of [ ]
[5] The thread on taglibs-dev that initiated this proposal [
[6] RDC Taglib 1.0 release news item [ ]
[7] Status of SCXML codebase (from RDC Taglib revision history), see
revision posting on 07/29/05 [ ]

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message