XML and Web Services In The News - 19 January 2007

Provided by OASIS | Edited by Robin Cover

This issue of XML Daily Newslink is sponsored by SAP AG



HEADLINES:

 Last Call Working Draft for Voice Browser Call Control: CCXML V1.0
 Building Enterprise Services with Drools Rule Engine
 Microsoft, Google Promote Privacy Rights
 Public Review of ebXML IIC Deployment Profile Templates Version 1.1
 Core Components Adoption On the Rise
 XML Binding Language (XBL) 2.0
 Grid Computing: Distributed Graphics Pipelines on the Grid
 Improve Thread Performance with the Work Manager API


Last Call Working Draft for Voice Browser Call Control: CCXML V1.0
RJ Auburn (ed), W3C Technical Report
W3C has announced a Last Call review for the "Voice Browser Call Control: CCXML Version 1.0." This release updates the 2006-11-22 draft; the Last Call review ends 7-February-2007. Call Control Extensible Markup Language (CCXML) is designed to provide telephony call control support for dialog systems, such as VoiceXML. While CCXML can be used with any dialog systems capable of handling media, CCXML has been designed to complement and integrate with a VoiceXML interpreter. Because of this there are many references to VoiceXML's capabilities and limitations. There are also details on how VoiceXML and CCXML can be integrated. However, it should be noted that the two languages are separate and are not required in an implementation of either language. For example, CCXML could be integrated with a more traditional Interactive Voice Response (IVR) system or a 3GPP Media Resource Function (MRF), and VoiceXML or other dialog systems could be integrated with other call control systems. The specification is designed to support for multi- party conferencing, with advanced conference and audio control. It provides the ability to give each active call leg its own dedicated VoiceXML interpreter. For example, in VoiceXML, the second leg of a transferred call lacks a VoiceXML interpreter of its own, limiting the scope of possible applications. It supports sophisticated multiple-call handling and control, including the ability to place outgoing calls. An Implementation Report Plan is currently being developed for this specification. The Working Group currently expects to require at least two independently developed interoperable implementations of each required feature, and at least one implementation of each feature, in order to exit the next phase of this document, the Candidate Recommendation phase. To help the Voice Browser Working Group build such a report, reviewers are encouraged to implement this specification and to indicate to W3C which features have been implemented, and any problems that arose.
See also: the W3C Voice Browser Activity

Building Enterprise Services with Drools Rule Engine
Birali Hakizumwami, O'Reilly ONJava.com
The article provides an example application for "Mortgage Underwriting Service Using Drools". It shows how the Drools rule engine can be used to architect an automated mortgage underwriting service as part of an overall enterprise SOA initiative. The mortgage underwriting case study can be easily applied to any other business sector other than financial services (healthcare, telecommunications, etc.) that needs to externalize a set of business rules as a enterprise service. Using a rule engine provides a framework that allows a way to externalize business logic in a common place. This will in turn empower business users and subject matter experts of the business to easily change and manage the rules. Coding such rules directly into the application makes application maintenance difficult and expensive because the rules change so often. This article goes into detail on how to architect and build a service that uses Drools to provide business decisions. This service can be part of the overall enterprise SOA infrastructure. As such, it can either be a standalone service that is consumed in a one- to-many model by all contracted consumers, or part of a composite service that provides a complex business functionality. To illustrate this point, the article shows how a service using the Drools rule engine can hide the complexity of automating mortgage underwriting decisions that a mortgage company needs to make on a daily basis. Drools is a JSR-94-compliant rule engine that uses Rete, a matching algorithm developed by Charles Forgy. In the simplest terms, Rete builds a tree from all the rules to form a state machine. It begins with facts entering the tree at the top-level nodes as parameters to the rules, and working their way down the tree — if they match the conditions — until they reach the leaf nodes (rule consequences). The article highlights through a real-world example important features of the Drools rule engine: externalization of rapidly changing business policies using rule-based programming, runtime evaluation of rules, and conflict resolution. The article did not cover deployment considerations or change-management issues.
See also: JBoss Rules Documentation Library

Microsoft, Google Promote Privacy Rights
Steven Schwankert, InfoWorld
Microsoft, Google, and two other technology companies announced that they will develop a code of conduct with a coalition of nongovernmental organizations (NGOs) to promote freedom of expression and privacy rights. The two companies along with Yahoo, and Vodafone Group said the new guidelines are the result of talks with Business for Social Responsibility (BSR) and the Berkman Center for Internet & Society at Harvard Law School. Technology companies have come under fire for providing equipment or software that permits governments to censor information or monitor the online or offline activities of their citizens. The parties involved said that would a framework that would hold signatories accountable for their actions in the areas of freedom of expression and privacy rights. The groups participating in development of the guidelines include: Berkman Center for Internet & Society at Harvard Law School; Business for Social Responsibility; Electronic Frontier Foundation; Human Rights Watch; and Reporters Without Borders.
See also: Business for Social Responsibility (BSR)

Public Review of ebXML IIC Deployment Profile Templates Version 1.1
Staff, OASIS Announcement
OASIS announced that the ebXML Implementation, Interoperability and Conformance (IIC) TC recently approved the Committee Draft specifications for public review: (1) "Deployment Profile for OASIS ebXML Business Process Specification Schema v2.0.X; (2) "Deployment Profile Template v1.1 for OASIS ebXML Collaboration-Protocol Profile and Agreement (CPP/A) 2.0 Standard"; (3) "Deployment Profile for OASIS ebXML Message Service 2.0 Standard." The heterogeneous nature of eBusiness transactions requires a flexible infrastructure/framework that supports simple service calls and complex document exchange. To support that goal, the Electronic Business (eBusiness) eXtensible Markup Language (XML) (ebXML) set of specifications was developed to enable electronic trading relationships between business partners and integrate new technologies. Applications: Communicate data in common terms (Core Components); Register and provide eBusiness artifacts and services (ebXML Registry Services and Registry Information Model); Configure technical contract between business partners (Collaboration Protocol Profile and Agreements); Provide secure and reliable transport (ebXML Messaging Service); Enable business processes (ebXML Business Process Specification Schema). In the realm of eBusiness, key integration patterns and technology has been realized and will realize SOA benefits in a pragmatic iterative manner. To promote use of independent yet aligned technologies, the ebXML IIC has created deployment profile templates to enable user communities to specify their use of these specifications.
See also: the announcement

Core Components Adoption On the Rise
Mark Crawford, SAP Blog
Implementation, adoption, and public proclamations of CCTS use are on the rise. In 2006, UN/CEFACT has published the first version of the UN/CEFACT component library, an expanded version 2 is in final audit, new implementation libraries are in various stages of development by a growing number of governments and standards organizations, XML serializations of core components for specific B2B messages are being delivered and implemented, and an increasing number of standards bodies are investigating and/or adopting the methodology. With a strong basis in OO concepts, CCTS at its core is an implementation layer of ISO 11179. The ISO 11179 specification proscribes standards for data design, naming, definition and management. CCTS expands on these concepts by providing a new paradigm in defining and describing data for storage, application use, and information sharing through consistent semantics and a unique context mechanism. Specifically, CCTS creates syntax and context neutral conceptual data models with a strong semantic basis that facilitates human understanding and reuse. The conceptual data model is systematically transformed using the CCTS rule set into fully interoperable, context-specific physical/logical data models supporting specific business requirements. The business use is what transforms data from context-neutral (i.e., Address) to context specific (i.e., U.S. Shipping Address). The context-specific models are used to develop fully interoperable syntax specific data expressions — such as XSD expressions or EDIFACT Messages — for use behind and across the firewall. By creating standard definitions and semantics of components, such as names, addresses, and many other fragments of data, CCTS enables semantic understanding and reuse of data, regardless of where or how that data is stored, used, or shared. The reusability feature is expected to significantly reduce the amount of effort required to transform individual data rollups (e.g., messages or models) from one standard to another. For example, it is estimated that by transforming RosettaNet PIPS into CCTS conformant structures, the time necessary to map a PIP to SAP IDOC and backend GDTs will be reduced by upwards of 80%.
See also: UN/CEFACT CCTS

XML Binding Language (XBL) 2.0
Ian Hickson (ed), W3C Technical Report
W3C has released a Last Call review for the "XML Binding Language (XBL) 2.0" specification. While the body of this specification was created outside the W3C, the W3C Web Application Formats Working Group is now guiding this specification along the W3C Recommendation track. The specification defines the XML Binding Language and some supporting DOM interfaces and CSS features. XBL is a mechanism for overriding the standard presentation and interactive behavior of particular elements by attaching those elements to appropriate definitions, called bindings. Bindings can be attached to elements using either CSS, the DOM, or by declaring, in XBL, that elements matching a specific selector are implemented by a particular binding. The element that the binding is attached to, called the bound element, acquires the new behavior and presentation specified by the binding. Bindings can contain event handlers that watch for events on the bound element, an implementation of new methods and properties that become accessible from the bound element, shadow content that is inserted underneath the bound element, and associated resources such as scoped style sheets and precached images, sounds, or videos. XBL cannot be used to give a document new semantics. The meaning of a document is not changed by any bindings that are associated with it, only its presentation and interactive behavior. XBL has a similar scope to XSLT; the main differences are: (1) XSLT operates on a static DOM, permanently replacing that DOM for rendering. XBL, on the other hand, transparently transforms the DOM for rendering while leaving the underlying structure intact, and dynamically reflects changes to the underlying DOM in the transformed rendering. (2) XSLT allows any arbitrary transformation to be performed. XBL shadow trees, on the other hand, only support reordering of the bound element's child nodes and interleaving of those explicit children with shadow content. Arbitrary transformations are not possible in XBL while retaining the transparent nature of XBL's shadow tree processing.
See also: the version change logs

Grid Computing: Distributed Graphics Pipelines on the Grid
Ade J. Fewings and Nigel W. John, IEEE Distributed Systems Online
Visualization of large data sets using computer graphics techniques has become a mainstream requirement for many scientists and engineers. However, achieving interactive performance when rendering a complex visualization often requires high-performance computing facilities. At the same time, the service infrastructure for distributed networks has produced the third generation of the connected world: the Grid. The development of Grid middleware such as the Globus toolkit has been instrumental in supporting a distributed supercomputing infrastructure. Key developments include information exchange systems and distributed data handling. Chromium is a general-purpose system for enabling cluster visualization through a stream-processing architecture. It supports sort-first, sort-last, and hybrid parallel rendering using OpenGL (Open Graphics Library) as the underlying language. The jgViz architecture is designed to be noninvasive, using standard Grid subsystems and protocols without customization. The overall structure is essentially a client-server system, with the Grid providing the middleware to connect the two. Within this structure, jgViz's components are organized into three areas — the information model, sequencing and scheduling, and runtime. The gViz project studied representing such data in skML at three levels: (1) The conceptual layer loosely explains the structure for visualization and collaboration; (2) The logical layer maps the concepts to software entities; (3) The physical layer maps the logical structure to a Grid environment. skML has been used to integrate Grid resources into the pipelines of the gViz IRIS Explorer extension. skML, enables processing to be represented at each of the three layers skML is an XML application. A particular feature of the approach is the use of RDF to associate annotations with skML elements, for example to describe resource constraints. An interactive editor for skML and prototype tools to use skML with IRIS Explorer and OpenDX are described. Extension to other visualization systems such as AVS and VTK is discussed.
See also: http://www.comp.leeds.ac.uk/vvr/gViz/publications/skML_EGUK05.pdf

Improve Thread Performance with the Work Manager API
Ravi Shankar Nair, Adrian Farolan, Narendra Govindu, JavaWorld.com
Suppose we have some startup servlets in an existing Java EE application. There are 13 different modules in the complete ear file, which is a mix of war files (Web projects) and jar files (client or utility files). The existing startup servlet of one module takes about 6 minutes, because the application caches a lot of data from the database, loads and instantiates some classes from an XML configuration file, and so forth. Each Web module has a corresponding startup servlet; two of those servlets each take 10 minutes to start and then rest 30 seconds; this happens sequentially, depending on the order in which the application server loads each Web module. Even worse, when the ear deploys in a clustered environment of 10 servers, the total startup time is 200 minutes, taking into account the sequential startup of the different cluster nodes. Obviously, we need a performance boost. Our solution is to use the Work Manager API, which eventually reduces the startup time to less than a minute. Developers can use these high- performance threads to enhance the speed of startups, logging, audit-trailing and time-consuming method invocations without sacrificing core Java EE principles.


XML.org is an OASIS Information Channel sponsored by BEA Systems, Inc., IBM Corporation, Innodata Isogen, SAP AG and Sun Microsystems, Inc.

Use http://www.oasis-open.org/mlmanage to unsubscribe or change an email address. See http://xml.org/xml/news_market.shtml for the list archives.


Bottom Gear Image