Go to JSR:
On this page:
 
Print Format
JSRs: Java Specification Requests
JSR 63: JavaTM API for XML Processing 1.1

The proposed specification will define a set of implementation independent portable APIs supporting XML Processing.

  Status: Final              
  Stage       Start   Finish  
  Final Release 2   Download page   10 Sep, 2002      
  Maintenance Draft Review 2   Download page   19 Mar, 2002   22 Apr, 2002  
  Maintenance Draft Review   Download page   29 Oct, 2001   03 Dec, 2001  
  Final Release   Download page   14 Feb, 2001      
  Final Approval Ballot   View results   30 Jan, 2001   12 Feb, 2001  
  Proposed Final Draft   Download page   19 Dec, 2000      
  Public Review 2       22 Nov, 2000      
  Public Review       04 Oct, 2000   06 Nov, 2000  
  Community Draft Ballot   View results   19 Sep, 2000   25 Sep, 2000  
  Community Review   Login page   25 Aug, 2000   25 Sep, 2000  
  CAFE       25 Apr, 2000   09 May, 2000  
  Expert Group Formation       25 Apr, 2000   07 Aug, 2000  
  JSR Approval       18 Apr, 2000   24 Apr, 2000  
   
JCP version in use: 2.1
Java Specification Participation Agreement version in use: 1.0
Please direct comments on this JSR to: jsr-63-comments@jcp.org
 
 
Specification Lead
Rajiv Mordani   Sun Microsystems, Inc. 
 
Expert Group
Apache Software Foundation   BEA Systems   Fujitsu Limited
Hunter, Jason   Informix Software   Macromedia, Inc.
Mazzocchi, Stefano   Persistence Software Inc.   Sabin, Miles
Stellent, Inc.   Sun Microsystems, Inc.   Versant Corporation
 

Updates to the Java Specification Request (JSR)

The following changes have been made to the original request:

Specification Lead: Sun Microsystems, Inc.

Name of Spec Lead: Rajiv Mordani

E-Mail Address: rajiv.mordani@eng.sun.com

Telephone Number: +1 408 517 6707

Fax Number: +1 408 863 3164


Original Java Specification Request (JSR)

Identification | Request | Contributions

Section 1. Identification

Submitting Participant: Sun Microsystems, Inc.

Name of Contact Person: James Duncan Davidson

E-Mail Address: james.davidson@eng.sun.com

Telephone Number: 408 863 3281

Fax Number: 408 863 3195


List of other Participants who endorse this JSR:

  • Takuki Kamiya, Fujitsu
  • Pier Fumagalli, ExOffice
  • Stefano Mazzocchi, Apache


Section 2: Request

2.1 Please describe the proposed Specification:

The proposed specification will define a set of implementation independent portable APIs supporting XML Processing. This specification will be a follow-on specification to the Java API for XML Parsing (JAXP) 1.0 which was produced under JSR-000005. This specification will update the JAXP 1.0 specification support for SAX and DOM by endorsing SAX2 and DOM Level 2 respectively. In addition, it will define a set of implementation independent APIs for supporting XML Stylesheet Language / Transformation (XSLT) processors as well as possibly utilizing the XML utility standards of XBase, XLink, XPath, and XPointer.

2.2 What is the target Java platform? (i.e., desktop, server, personal, embedded, card, etc.)

This facility is targeted for use by the Java 2 Standard Edition and Java 2 Enterprise Edition platforms.

2.3 What need of the Java community will be addressed by the proposed specification?

The proposed specification will update the current JAXP 1.0 specification to support the latest versions of the external DOM and SAX standards that it endorses. At the current time, SAX2 and DOM Level 2 are progressing rapidly towards final status and it is anticipated that they will be complete within the next few months.

In addition, this specification will meet the need for Java Platform programmers to easily utilize XSL in their applications by providing a plugability mechanism for accessing XSL processors.

2.4 Why isn't this need met by existing specifications?

The existing JAXP 1.0 specification needs to be updated to take advantage of the latest SAX and DOM standards so that the users of the API have access the features that those updated specifications provide. In addition, there currently is no way to obtain an instance of an XSL processor and use it without using implementation specific mechanisms.

2.5 Please give a short description of the underlying technology or technologies:

XML is the meta language defined by the World Wide Web Consortium (W3C) that can be used to describe a broad range of hierarchical mark up languages. It is a set of rules, guidelines, and conventions for describing structured data in a plain text editable file. It is expected that this specification will endorse version 1.0 of the XML Recommendation.

XML Namespaces define the syntax and semantics for XML structures required to be distinct from other XML markup. In particular it defines a mechanism whereby a set of XML markup may have a distinguishing \223namespace\224 associated with it. It is expected that this specification will endorse version 1.0 of the XML Namespaces Recommendation.

The Simple API for XML (SAX) is a public domain API developed cooperatively by the members of the XML-DEV mailing list. It provides an event-driven (sometimes referred to as a callback-style) interface to the process of parsing an XML document. It is anticipated that this specification will endorse version 2.0 of the API.

The Document Object Model (DOM) describes facilities for a programmatic representation of a parsed XML document. The DOM specification defines these interfaces using Interface Definition Language (IDL) in a language independent fashion and also includes a Java Language Binding. It is anticipated that this specification will endorse Level 2 of the specification.

XSL is a language for expressing stylesheets. It consists of two parts: 1) a language for transforming XML documents to other XML documents (XSLT), and 2) an XML vocabulary for expressing formatting semantics. It is anticipated that this specification will support the 1.0 version of the XSLT specification.

XML Base (XBase) allows a document to specify a document\222s base URI against which all relative URI references in the document can be resolved against. This includes references to images, stylesheets, applets, etc. It is anticipated that this specification will endorse the 1.0 version of the XBase specification.

XML Pointer Language (XPointer) is a language that can be used as a fragment identifier for any URI that locates an XML resources. It is based on the XML Path Language (XPath). It supports addressing internal structures of XML documents, traversals of a document tree, and the selection of internal parts of an XML document based on various properties.\240 It is anticipated that this specification will endorse the 1.0 version of the XPointer specification.

XPath is a language for addressing parts of an XML document, designed to be used by both XSLT and XPointer. It is anticipated that this specification will endorse the 1.0 version of the XPath Recommendation.

2.6 Is there a proposed package name for the API Specification? (i.e., javapi.something, org.something, etc.)

The SAX and DOM pluggability interfaces are located in the package javax.xml.parsers. These current classes would be updated as part of this specification work.

The XSLT pluggability interfaces would be located in the package javax.xml.transform.

2.7 Does the proposed specification have any dependencies on specific operating systems, CPUs, or I/O devices that you know of?

No

2.8 Are there any security issues that cannot be addressed by the current security model?

No

2.9 Are there any internationalization or localization issues?

XML was designed from the ground up to address such issues. A requirement of the proposed specification is that it preserve the inherent internationalizability of XML and related technologies.

2.10 Are there any existing specifications that might be rendered obsolete, deprecated, or in need of revision as a result of this work?

The functionality in the Java API for XML Parsing 1.0 would be updated and subsumed as part of this work.



Section 3: Contributions

3.1 Please list any existing documents, specifications, or implementations that describe the technology. Please include links to the documents if they are publicly available.

XML 1.0 Recommendation

http://www.w3.org/TR/1998/REC-xml-19980210

XML Namespaces 1.0

http://www.w3.org/TR/1999/REC-xml-names-19990114/

SAX 1.0

http://www.megginson.com/SAX/index.html

SAX 2.0 Beta 2 API

http://www.megginson.com/SAX/SAX2/

DOM Level 1 Recommendation

http://www.w3.org/TR/REC-DOM-Level-1/

DOM Level 2 Candidate Review Draft

http://www.w3.org/TR/DOM-Level-2/

XSL 1.0 Working Draft

http://www.w3.org/TR/xsl/

XSLT 1.0 Recommendation

http://www.w3.org/TR/1999/REC-xslt-19991116/

XPointer 1.0 Working Draft

http://www.w3.org/TR/xptr

XBase 1.0 Working Draft

http://www.w3.org/TR/xmlbase

XPath 1.0 Recommendation

http://www.w3.org/TR/xpath

Java API for XML Parsing 1.0

http://java.sun.com/xml/

3.2 Explanation of how these items might be used as a starting point for the work.

The XML, XML Namespaces, SAX, DOM, and XSL specifications will be endorsed as part of this specification work. As well, there is an early XSLT pluggability specification called TRaX that can serve as a starting point for designing the XSLT pluggability layer.

The Java API for XML Parsing 1.0 is the previous version of this specification work.

 
Sun Microsystems
What's New
JSRs
JCP Procedures
Community Resources
Participation
Press & Success
What is the JCP