Oracle XML Parser for Java

Release Notes for Version 9.2.0.6.0 (Production)


Contents

    Release 9.2.0.6.0 (Prod)

Overview
New Features
Bugs Fixed
Demos
API Documentation
 

Previous Releases

Release 9.2.0.4.0

Release 9.2.0.3.0
Release 9.2.0.2.0
Release 9.0.2.0.0D
Release 9.0.2.0.0C
Release 9.0.2.0.0B
Release 9.0.2.0.0A
Release 9.0.0.0.0
Release 2.1.0.0.0
Release 2.0.2.9.0
Release 2.0.2.8.0
Release 2.0.2.7.0
Release 2.0.2.6.0
Release 2.0.2.5.0
Release 2.0.2.4.0
Release 2.0.2.3.0
Release 2.0.2.2.0
Release 2.0.2.1.0
Release 2.0.2.0.0
Release 2.0.1.0.0
Release 2.0.0.2.0
Release 2.0.0.1.0
Release 2.0.0.0.0




 

Overview

Oracle XML Parser for Java v2 is built on the production version of W3C Recommendations of Extensible Markup Language (1.0) with the following additional features:

Please post any questions, comments, or bug reports to the XML Forum on the Oracle Technology Network at http://technet.oracle.com.


New Features

 None


Bugs Fixed

  • Bug #2438656: ORACLE DOM PARSER NOT PARSING CORRECTLY
  • BUG #2701717: XML PARSER DOES NOT SUPPORT SETEXPANDENTITYREFERENCE(FALSE)
  • Bug #2495218: NULLPOINTEXCEPTION THROWN WHEN  RESOLVING SAME XPATH EXPR IN MULTIPLE THREADS




  • Release 9.2.0.4.0
     

    New Features

     None

    Bugs Fixed

     None




     

    Release 9.2.0.4.0
    New Features

     None


    Bugs Fixed

    None




     

    Release 9.2.0.3.0
     

    New Features

     None

    Bugs Fixed



    Release 9.2.0.2.0
     

    New Features

     None

    Bugs Fixed



    Release 9.0.2.0.0D
     

    New Features

     None

    Bugs Fixed



    Release 9.0.2.0.0C

    Oct 1, 2001

    New Features
     

    Support for JAXP 1.1

    The following feature are not currently supported in this release:


    Bugs Fixed



     
     
     

    Release 9.0.2.0.0B

    August 1, 2001

    New Features
     

    Support for SAX 2.0 Extensions
    The SAX Parser now supports SAX 2.0 extensions for lexical and DTD decl handling. Currently the content model of a element declaration is not returned.

    Support for JAXP 1.1
    The XML Parser and XSLT Processor now support JAXP 1.1 standard. The classes which implement the factories are:

    Entity Resolver for XSL include/import href resolution
    An EntityResolver can be set on XSLProcessor to be used for resolving include and import references.

    Bugs Fixed




     

    Release 9.0.2.0.0A

    June 16, 2001

    This is the first beta release of 9.0.2  It fixes the following bugs.
    New Features
     

    New API's in Parser

    The XML Parser has been updated to DOM 2.0 Recommendation. This results in following API's changes in the Parser:


    New API's in XSLProcessor


    Compression Feature

    This release supports binary compression of XML documents. The compression is based on tokenizing the XML tag's. The assumption is that any XML document has repeated number of tags and so tokenizing these tags will give considerable amount of compression. Therefore the compression achieved depends on the type of input document - larger the tags, lesser the text content, better the compression!

    The goal of compression is to reduce the size of the XML document without loosing the structural and hierarchical information of the DOM tree. The compressed stream contains all the "useful" information to create the DOM tree back from the binary format. The compressed stream can also be generated from the SAX events. The binary stream generated from DOM and SAX are compatible the compressed stream generated from SAX could be used to generate the DOM tree and vice versa.

    Sample programs to illustrate the compression feature is included in demos.

    Bugs Fixed


     

    Release 9.0.0.0.0

    January 25, 2001

    This is the first beta release of 9.0.0.0.0.  It fixes the following bugs.
    Bugs Fixed
  • Bug #1619691: SAXPARSER NOT RECOGNIZING AN END ELEMENT TAG
  • Bug #1568976: XSL:TEXT ALLOWS ELEMENT NODES AS CHILDREN
  • Bug #1559613: NULLPOINTEREXCEPTION THROWN BY XSL PROCESSOR
  • Bug #1555844: CANNOT PARSE ELEMENTS OF THE FORM <METHOD-PARAMS />
  • Bug #1550157: XDKJAVA: XMLPARSER CORRUPTS DATA IN LARGE XML DOCUMENTS
  • Bug #1538072: ARRAYINDEXOUTOFBOUNDSEXCEPTION AFTER TOO MANY WARNINGS
  • Bug #1537128: INCONSISTENT AND INCORRECT QUOTING OF SINGLE QUOTE IN HREF'S IN HTML OUTPUT
  • Bug #1527362: XMLNODE.GETCHILDREN() METHOD NO LONGER AVAILABLE IN 2.1.0 BETA
  • Bug #1527025: SERIALIZE AMPERSAND AS &AMP; INSTEAD OF &#38;
  • Bug #1524524: ORG.XML.SAX.ATTRIBUTES SHOULD RETURN NULL FOR MISSING ATTRIBUTE
  • Bug #1517153: XSLT 2.1.0 BREAKS <A HREF="#FOO"> LINKS WITH #QUALIFIER
  • Bug #1498548: THE XSLPROCESSOR IS GENERATING WRONG <BR> TAG WHEN THE OUTPUT IS   HTML
  • Bug #1497045: EXTRA <ROOT> ELEMENT SURROUNDS <XSL:COPY-OF SELECT="DOCUMENT('XXX')">
  • Bug #1484776: IAS: NULLPOINTEREXCEPTION WHEN DELETING AN ATTRIBUTE
  • Bug #1481089: SUPPORT FOR DOM LEVEL 2 RANGE & EVENTS
  • Bug #1478703: XSQL SERVLET BROKEN AFTER MOVE TO DOM2; PLEASE IMPLEMENT ADOPTNODE()
  • Bug #1478699: TOP-LEVEL XSL:VARIABLE CONTAINING XSL:VALUE-OF CONCATENATES VALUES INCORRECTLY
  • Bug #1403099: PROVIDE COMMAND-LINE TOOL TO SCHEMA-VALIDATE AN XML FILE
  • Bug #1396231: ORAXML.BAT AND ORAXSL.BAT DON'T WORK ON WIN98
  • Bug #1376300: CORE DUMPS WHEN PARSING XML USING SAX WITH VALIDATION OFF AND DTD OF FINITE SIZE
  • Bug #1354891: JAVA.LANG.ARRAYINDEXOUTOFBOUNDS EXCEPTION WHEN NUMBER OF XML TAGS EXCEED 100.
  • Bug #1285762: SUPPORT SAX2 INTERFACES
  • Bug #1268775: PARSER SHOULD OUTPUT NAMED ENTITIES RATHER THAN DECIMAL REPRESENTATION
  • Bug #1224738: ISSUES WITH XSL*.JAVA CODE
  • Bug #1044950: XSLPROCESSOR SHOULD BE ABLE TO PROCESS ELEMENTS




  •  

    Release 2.1.0.0.0

    October 20, 2000

    New Features

  • Implements SAX Level 2.0
  • Implements DOM Level 2.0 Core Namespace
  • Implements DOM Level 2.0 Traversal
  • Provides new APIs to get XSL Transformation as SAX Output
  • Bugs Fixed
  • Bug #1422083 Performance of valueof and selectnodes are linear w/ number of nodes in document
  • Bug #1418547 Cannot reuse dtd object if input contains Bug #1416019 XMLParser throws security exception when run as applet
  • Bug #1412088 Conformance: html output method not quoting non-ascii in uri's
  • Bug #1407845 getData() method returns null for xmltext
  • Bug #1407841 getNextSibling() & getPreviousSibling() method of XMLAttr doesnt return null
  • Bug #1407825 getElementByTagname includes the element in which it is called to the list
  • Bug #1407821 Remove attribute erroneous in presence of default value for the attribute
  • Bug #1407812 getAttributes() method should return null for XMLDocument & XMLDocumentFragment
  • Bug #1407804 Constructor of cdata section sets the node name value to a wrong value
  • Bug #1403674 XSL-1036 error using function in use expression
  • Bug #1402823 Internal subset dtd serialized incorrectly if doc not parsed in validation mode
  • Bug #1400219 xsl:value-of incorrectly copies text from comments in text nodes
  • Bug #1399421 NullPointerException if match attribute contains qnames
  • Bug #1398070 oracle soap requires dom2 support
  • Bug #1396231 oraxml.bat and oraxsl.bat don't work on win98
  • Bug #1380006 cannot create elements with a specific namespace
  • Bug #1376863 NullPointerException invoking qname template when prefix undefined
  • Bug #1375092 StringIndexOutOfBoundException doing substring('x','infinity')
  • Bug #1369631 Expose transform output as sax events
  • Bug #1367824 Undefined variable error when param refers to preceding variable
  • Bug #1365872 Output name cannot be derived in a template
  • Bug #1365841 NullPointerException if href="xx" not specified on
  • Bug #1365834 href attribute ignores attribute value templates
  • Bug #1365827 Readme.html doc incorrect for and ora:node-set
  • Bug #1364804 Consistent, garbarge output during transformation
  • Bug #1362117 Failed to get the value of xml attribute with name = "name" and value = "name"
  • Bug #1338487 XML Parser code needs to change to bufferedreader from inputstream
  • Bug #1333187 Conformance: no error raised if variable shadowed/reassigned
  • Bug #1325676 Expression error using foo:bar() nodeset ext func in location step




  •  

    Release 2.0.2.9.0

    July 11, 2000

    New Features

  • New API in DOMParser class:

  • reset() : Reset the internal DOM data structures.
  • New API in XMLDocument class:

  • print(PrintDriver): Customization of the print functionality
  • New Interface

  • PrintDriver : Interface for customizing print
    XMLPrintDriver class : Default implementation of PrintDriver.
    Bugs Fixed
  • Bug #1327645 NullPointerException using current()
  • Bug #1322251 value of xsl top-level param changed as side-effect of if-test
  • Bug #1317768 java.lang.ClassCastException from xml/xsl parser
  • Bug #1314594 two keys in same stylesheet dont work, one key ok
  • Bug #1313397 duplicate attribute defintions in dtd attlist not tolerated.
  • Bug #1312894 exception on attr with two or more avt's and value longer than expression
  • Bug #1311563 XML parser needs to provide api to clean up internal datastructures
  • Bug #1293126 ENH REQ: Provide formatting options for print() method on XMLNode
  • Bug #1292910 XMLNode.print() incorrectly escape characters in CDATA section
  • Bug #1189707 XSLT: potential performance improvements
  • Bug #1056165 Deserializing dom tree causes tag names not to be interned



  •  

    Release 2.0.2.8.0

    May 18, 2000

    New Features

  • New builtin extension element-

  • ora:output - where xmlns:ora="http://www.oracle.com/XSL/Transform/java".
  • This element can be used a top-level element similar to xsl:output (can have all attribute allowed in
  • xsl:output, and has similar functionality). It has an additional attribute 'name' used an an identifier. When
  • ora:output is used in a template, it can have only two attribute 'use' and 'href'. 'use' attribute specifies the
  • top-level ora:output to be used, and 'href' gives the output URL.
  • New builtin extension function-

  • ora:node-set - where xmlns:ora="http://www.oracle.com/XSL/Transform/java".
    ora:node-set function converts a result tree fragment into a node-set.
    Bugs Fixed
  • Bug# 1295864: Namespace qualified name not allowed in dtd parameter entity
  • Bug# 1278648: Nullpointerexception if missing name attribute
  • Bug# 1277644: Numberformatexception using selectnodes with sum()
  • Bug# 1272137: Nist java dom conformance test: nullpointerexception calling substringdata()
  • Bug# 1272120: Selectnodes on a document fragment result of a transformation does not work
  • Bug# 1271143: Nullpointerexception for missing variable after warning.
  • Bug# 1265045: Don't merge multiple xsl:output
  • Bug# 1264391: XMLDOMException doing xmlnode.valueof(".") on an attribute node
  • Bug# 1263988: XSL-1046 doing xsl:apply-imports from a named template
  • Bug# 1255863: Document('') gives stringindexoutofbounds exception
  • Bug# 1250927: XML parser fails to identify ebcdic input file.
  • Bug# 1250366: Need support for cp1047 encoding in xmlreader.java
  • Bug# 1250337: Xml parser tests fail with utf8 exceptions
  • Bug# 1248540: Parser fails to parse dtds containing ( #pcdata )
  • Bug# 1242099: Relative url handled incorrectly when parsing an inputstream (w/baseurl set)
  • Bug# 1241009: System-property('xsl:version') is supposed to be number, not string
  • Bug# 1223503: Non-breaking space displays as a-with-carat in html; encoding mismatches
  • Bug# 1223486: XML decl output for method="html" done using oraxsl
  • Bug# 1189597: xmlnode.selectnodes isn't threadsafe
  • Bug# 1188882: not implemented as per xslt spec
  • Bug# 1186370: XSLT: import precedence rules are incorrect
  • Bug# 1186358: XSLT: error when using xsl:message inside xsl:attribute
  • Bug# 1186317: XSLT: xsl:imports that aren't first children should cause error
  • Bug# 1140801: Can't match comments before doc element or at end of file
  • Bug# 1065368: ((XMLNODE)doc).selectnodes("/") returns a nodelist with an element named "ROOT"




  •  

    Release 2.0.2.7.0

    March 1, 2000

    New Features

  • New command line interface to parse XML documents has been added to bin directory.
  • Debugging support has been added to XSLT processing. The errors/warnings include the system identifier,
  • line number, and column number in debug mode. You can either use DOMParser.setDebugMode(boolean) or
  • use Java system property 'oracle.xml.parser.debugmode' to set the debug mode.
  • New API in DOMParser class:
  • setDebugMode(boolean flag)
  • New API in XMLDocument class:
  • setDoctype(String rootname, String sysid, String pubid) - Adds DOCTYPE declaration to the XML Dcoument.
  • Bugs Fixed
  • Bug #1212480: XSL Errors reported as MissingResourceException with certain Java VMs
  • Bug #1156743: Infinite loop parsing document with 'enews.dtd' dtd
  • Bug #1154528: Improved error messages
  • Bug #1146274: Text comes out before XML decl in output
  • Bug #1143969: XSL-1029: Cannot transform child '#comment' in xsl:call-template
  • Bug #1143567: No line numbers in error messages
  • Bug #1138336: Unexplainable new line in transformed output
  • Bug #1138014: QNames fail in test expressions
  • Bug #1137444: xsl:decimal-format not recognized
  • Bug #1136224: Null Pointer Exception if xsl:comment has element children
  • Bug #1133322: ArrayOutOfBounds exception if quote missing from xmldecl version attribute
  • Bug #1130324: xsl:html output method shouldn't set default encoding if node specified
  • Bug #1115222: Getting Java exception when xsl substring function is used
  • Bug #1115079: HTML empty elements can't use empty xml syntax
  • Bug #1087409: Need a simple way to set DOCTYPE uri on an XMLDocument
  • Bug #1086661: xsl:version attribute now required on literal result element
  • Bug #1053836: File names and line #s of error would ease debugging




  •  

    Release 2.0.2.6.0

    December 07, 19999

    New Features

  • Conformance to the XSLT/XPATH October REC.
  • New API in XSLStylesheet class:
  • removeParam(String param)
  • resetParams()
  • Bugs Fixed
  • Bug #1111423: OutOfMemory exception, if multiple calls made to document()
  • Bug #1101028: Unexpected character error in DTD parsing document using Docbook DTD
  • Bug #1101021: #default not supported in exclude-result-prefixes
  • Bug #1099830: Extra characters inserted into output using the XML Parser
  • Bug #1099663: HTML output does not allow *only* doctype-public to be specified
  • Bug #1099536: HTML output does not disable escaping for script, style unless lowercase
  • Bug #1098738: ArrayOutOfBoundsException xsl:if test="not(@a)'"
  • Bug #1095047: XSLProcessor NPE'S on named templates with non-empty namespaces
  • Bug #1094971: XSLStylesheet needs methods for removing parameters
  • Bug #1092351: Using valueof() shuffles order of elements in my source document
  • Bug #1086663: xsl:sort data-type attribute can now be a namespace-prefixed name
  • Bug #1064692: Default xml-serialization should use empty-element syntax
  • Bug #1064689: Current() function doesn't work correctly



  •  

    Release 2.0.2.5.0

    November 16, 1999

    New Features

  • Conformance to the XSLT/XPATH October PR.  Support for internationalized error messages has been added. The locale can be set using
  • setLocale(java.util.Locale) function in XSLProcessor, SAXParser, and DOMParser. The following locales are supported:
  • New APIs in XMLNode class:

  • value-of(String pattern)
    selectNodes(String pattern)
    selectSingleNode(String pattern)
    selectSingleNode(String pattern, NSResolver ns)
  • New API in XSLStylesheet class

  • setParam(String param, String value)
     
    Bugs Fixed
  • Bug #957465: Missing a way to set stylesheet-level param-variables
  • Bug #962290: selectNodes() improvements
  • Bug #1033472: Html output prints empty elements for non-empty elements
  • Bug #1040717: Character entity for greater that in html output style
  • Bug #1046003: Bug is parsing text nodes larger than 16K
  • Bug #1051671: 'xsl:namespace-alias' not supported
  • Bug #1052387: Disable-output-escaping doesn't flush while printing
  • Bug #1053273: 'xsl:message' terminate attribute not supported
  • Bug #1058004: No access to media-type and encoding on xsl:output
  • Bug #1058008: xsl:version attribute not copied to result
  • Bug #1061159: Exclude-result-prefixes not supported
  • Bug #1067965: Bug in Non-validating parser while reading QNames in DTD



  •  

    Release 2.0.2.4.0

    October 11, 1999

    New Features Bugs Fixed



     

    Release 2.0.2.3.0

    October 7, 19999

    Extension functions support was added, that allows users of the XSL processor to call any Java method from XSL expressions. Please refer to extfunc.html for more details on Extension functions.

    Bugs fixed: Minor bug fixes in print methods.




     

    Release 2.0.2.2.0

    September 29, 1999

    New Features

    New API in XSLProcessor class to support xsl:output element :

    Bugs Fixed


     

    Release 2.0.2.1.0

    September 20, 1999

    Bugs Fixed




     

    Release 2.0.2.0.0

    September 9,  1999

    Conformance to the XSLT/XPATH August WD.

    Note that there are several changes between April99 XSLT draft and the August99 XSLT/Xpath draft and these changes have been implemented in the XSL Processor. The XSL Processor has been modified to accept XPath syntax for expressions and patterns. Stylesheets might have to be modified to be conformant to the August XSLT/XPath draft before they can be used with this release.

    Some of the changes between April draft and the August draft are:
    Expressions in the stylesheet must match the XPath production Expr.
    Some of the attribute names and element names in XSL namespace have changed.
    Some new functions have been added to XPath CORE function library.

    Please refer to the August XSLT/XPath draft for more details.

    This is the first production release for v2.




     

    Release 2.0.1.0.0

    August 27, 1999

    Note the command line version of 'oraxsl' which can be used in scripts and can specify multiple # of threads has been added to the bin directory.

    Note that the 'xmlparser.jar' file name has been changed to 'xmlparserv2.jar' to allow co-existence with v1 Java XML parser.

    Bugs fixed





     

    Release 2.0.0.2.0

    August 18, 1999

    Bugs fixed




     

    Release 2.0.0.1.0

    July 2, 1999

    Bugs fixed

  • #920536, i.e. Cannot access element attributes via XSLT; #898423. i.e. ElementDecl's in DTDs;
  • #774774, i.e. DOM extensions using XSL pattern matching; #863890 i.e. SAX IOException not thrown.



  •  

    Release 2.0.0.0.0

    The Oracle XML v2 parser is an early beta release and is written in Java.  It features an improved
    architecture over the Oracle XML V1 parser and has shown better performance on small to large XML
    documents.  It will also be able to format the XML document according to a stylesheet, having integrated an XSLT processor.

    NOTE: Several of the package names and error messages are different than in the v1 of the parser.  See v2changes.txt and the .diff difference files in the sample directory.

    Version 2 of the XML Parser for Java, besides incorporating an XSLT processor, has been re-architected
    from version 1. This has resulted in a number of changes to the class names especially those that support
    Namespaces.