Tools and Technologies

The rapid acceptance of XML has resulted in an explosion of new standards, applications, and tools that use, implement, or depend on it. The projects in this book were selected to provide the broadest possible coverage of the most popular XML-related standards, and their most popular implementations. Table 11.1 lists the standards used within the projects and the version that was used. This table, along with up-to-date links to the related specifications, is available on the book's Web site.

Table 11.1. Standards Used in the Examples
Standard Version
XML 1.0
XSLT 1.0
Namespaces in XML 14-January-1999
WSDL 1.0
SOAP 1.0
Java 1.2.2
ADO 2.5
SAX 2.0
COBOL ANSI-85

There are many products on the market today that implement these standards, with varying degrees of accuracy and reliability. The tools selected to implement the samples were the most widely used and stable that were available at the time. New XML tools are being introduced every day, and good programming practices dictate that dependencies on a particular tool be minimized.

In the early days of XML, many implementations of XSLT and DOM (most notoriously, Microsoft's MSXML parser) included vendor-specific enhancements to the core specifications. Although these enhancements met real needs in the marketplace, as the standards matured, these products were forced to support their own proprietary extensions as well as the new “official” versions of the same functionality. Application developers who took advantage of these extensions were forced to either continue using the same tool or modify their applications to comply with the standard.

Microsoft Versus Open Source

That being said, the two most pervasive development camps today are those that use Microsoft products and those that gravitate toward open-source solutions. Unfortunately, in many cases frontline programmers don't have the luxury of working in a completely homogeneous environment. XML provides the universal language that can help bind these two worlds together, at least well enough to get a particular job done.

All the samples were designed to minimize their dependence on a particular tool or platform. For the most part, this means strict adherence to the core XML standards. In some cases, choosing one approach over another might make the sample slightly clumsier, but allows the same source files to be used with as many different tools as possible.

The following sections give a brief introduction to platforms and tools that are used throughout the following chapters.

MSXML and Microsoft Internet Information Server (IIS)

The foundation of Microsoft's XML strategy is its MSXML parser. It is a COM-based XML parser that includes support for XSLT transformations, SAX, and DOM applications. It is also used by Internet Explorer to provide client-side XML services, such as Microsoft's XML data island mechanism.

IIS is Microsoft's Web server product, and beginning with Windows 2000 it is built-in to the operating system. Together with MSXML, IIS is the core for building a Microsoft-centric server-side XML application. There are also facilities for automatically applying stylesheet transformations based on different client capabilities, through the XSL ISAPI Filter plug-in.

Xalan and Apache HTTP Server

Xalan is an open-source XSLT stylesheet processor that is part of the Apache XML Project. It depends on a DOM- or SAX-enabled XML parser, and by default it uses the Apache Xerces parser to perform transformations.

The Apache HTTP Server is currently the most popular Web server on the Internet. It is an open-source product that is managed under the auspices of the Apache Software Foundation. Together with Xalan, Apache provides the open-source platform for building server-side XML applications.

Saxon

Saxon is an XSLT stylesheet processor developed by Michael Kay, originally based on the Ælfred parser from Microstar. It fully supports the XSLT 1.0 recommendation, and the 6.1 version includes support for the <xsl:document> element, which greatly simplifies the generation of multiple output documents from a single source file.

Java 2 SDK

All of the Java applications in this book were developed using the 1.2.2 version of the Java 2 SDK. This is the version of Java installed with Borland's JBuilder version 3.0 (which can be downloaded from Borland's web site at www.borland.com).

Microsoft SOAP Toolkit 2.0

This is Microsoft's implementation of the Simple Object Access Protocol (SOAP) version 1.1 recommendation. It provides a set of client- and server-side objects that implement the SOAP messaging protocol. The server side objects can be configured to be called from IIS as either ISAPI plug-ins or from ASP code. There is also a utility that will generate the necessary configuration files to expose a COM object via a SOAP connection.

Fujitsu COBOL v3

The COBOL applications were developed using an early release of the Fujitsu COBOL compiler. This compiler supports the COBOL85 standard.

Apache Formatting Object Processor (FOP)

The Fop program transforms XSL-FO documents into Adobe's PDF format. It also can be linked with Saxon to produce a streamlined transformation and publishing system using XSLT.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.221.66.31