Constructing distributed applications using Xbeans

An Xbean is a software component that takes XML as input, processes it in some fashion and then passes XML on to the next Xbean. Xbeans are Java Beans. Java Bean technology supports the packaging, reuse, connection and customization of Java code. With the appropriate set of Xbeans and a Java Bean design tool, it is possible to build useful XML-based distributed applications with little or no programming. This paper describes how Xbeans can be easily composed into distributed applications, including data exchange, business to business, work flow and web channel applications. Xbeans.org is an opensource project to build a freely available repository of Xbeans. Introduction The Extensible Markup Language , or XML, has emerged as the universal standard for exchanging and externalizing data. Software products of all kinds are being upgraded to "support XML." Typically this means they can import and export XML data. At the same time, standards groups representing almost every human endeavor are agreeing upon XML DTDs (Documentum Type Definitions)for exchanging data. One of many examples is the International Press Telecommunications Council" These vertical market standards will allow diverse applications to exchange data in unforeseen ways. But just defining standard representations for exchanging data is insufficient. The data need to be integrated with existing applications and databases and processed by programs written in some programming language. To the end of accessing XML data from different programming languages, the W3C has defined the DOM (Document Object Model)standard . The DOM is an application programmer’s interface to XML data. It is available from many programming languages, including Java. Thus, Java programs can access XML data via the DOM API. Rather than structuring software that manipulates XML data as mammoth programs, software component technologyallows developers to package smaller grained pieces of reusable functionality. J va Beansare software components that support the packaging, reuse, connection and customization of Java code. Design tools allow applications to be created by connecting and customizing existing Java Beans. Xbeans Xbeans are Java Beans that manipulate XML data. With the appropriate set of Xbeans and a Java Bean design tool, it is possible to build useful distributed applications with little or no programming. (We will describe several applications later.)