Java Project X Core Library
Release: Technology Release 1

This library provides core functionality necessary in most Java™ based applications of the Extensible Markup Language (XML) 1.0.

See:
          Description

Parsing
com.sun.xml.parser This package holds two fast "XML Processors" as defined in the XML 1.0 specification; these are parsers (validating and non-validating) with some supporting classes and interfaces.
org.xml.sax SAX (Simple API to XML) is an event-driven parser API, which supports most of the widely available XML parsers.
org.xml.sax.helpers This package contains simple "helper" classes which can help programmers get started using the SAX APIs.

 

Object Model
com.sun.xml.tree This package supports in-memory XML documents in the form of a parse tree compliant with the W3C DOM Level 1 Core Recommendation, with extensions including support for XML Namespaces as defined by the current XML proposed recommendation.
org.w3c.dom The Document Object Model (DOM™) is a Recommendation of the World Wide Web Consortium, defining programming interfaces for XML (and, optionally, HTML) documents.

 

Other Packages
com.sun.xml.util This package contains utility classes that are useful when building XML-aware software frameworks.

 

This library provides core functionality necessary in most Java™ based applications of the Extensible Markup Language (XML) 1.0.

DISCLAIMER

THIS IS NOT A PRODUCT. The software is part of a research and development project and is being released as useful, but unsupported, technology that may be of use to Java programmers developing web based publishing or messaging systems. There is no product commitment to the programming interfaces found in this software package.

XML Platform Structure

This library corresponds to the core part of an XML based application framework. On that core can be built services and applications. These are briefly presented here to help developers understand the intended role of this library.

Core

Core functionality includes parsing XML documents (including optional validation), constructing in-memory tree structured object models of such documents, and writing out such documents as well formed XML text.

Both the parsing and object model APIs have an API structure consisting of an interface (currently SAX 1.0 and the DOM Level 1 core, respectively) and a separate implementation (currently in the com.sun.xml.* portion of the Java package namespace). At this time, programs will often need to rely on specific implementations because standard interfaces don't offer sufficient functionality.

Services

A variety of facilities can be built on top of core APIs, but are sufficiently specialized that not all environments supporting XML would require them. (Some services might eventually move into the core.)

For example, Extensible Stylesheet Language (XSL) provides a way to translate XML into other XML structures, including ones which are legal HTML or which ues "flow objects" to support publication quality rendering. (HTML can not support that quality of document rendering.) A package supporting the transformation parts of XSL could be useful in many environments, including XML document servers. A package supporting "flow/formmating" objects from the XSL specification would be useful where high quality rendering was needed, including publishing applications with "what you see is what you get" (WYSIWYG) editing.

Other examples of XML-based services include support for XML based linking (XPointer/XLink), a variety of services supporting integration with relational or object databases, specialized vertical market toolsets, and messaging frameworks. Messaging frameworks could include support for XML-based data marshaling, asynchronous messaging systems such as the Java Messaging Service (JMS), and synchronous messaging systems (categorized as "Remote Procedure Calls", RPCs) including those constructed directly on top of HTTP/HTTPS messaging.

Applications

Applications build on the core, often building on higher level services. Two broad categories of particular interest include web-based information publishing systems, and business-to-business electronic commerce frameworks bringing older Electronic Data Interchange (EDI) technology into the Internet in applications such as supply chain integration.

Applications may have server side components, client side ones, or both. Web based server side components will often be built using Java Servlets or JavaServer Pages.

Another category of applications is developer tools, perhaps supporting database integration or providing a better coupling between object level modeling (e.g., with UML) and XML DTDs/Schemas.



Submit Feedback to xml-feedback@java.sun.com
Copyright © 1998-1999 Sun Microsystems, Inc. All Rights Reserved.

Sun Microsystems, Inc.
901 San Antonio Road
Palo Alto, California, 94303, U.S.A.