August 26, 1999: version 2.0.15

  • Bugs Fixed:
    TX: readDTDStream and readStream ret null 
    TX readDTDStream reading dtd as internal subsets
    TX: getParameterEntitiesEnumeration() is broken
    TX: incorrect factory method being called for ignorableWhitespace

August 3, 1999: version 2.0.14

  • Bugs Fixed:
    Predefined  Entity references not expanded in Node
    cloneNode() Copies Default Attributes
    Attr#getElement() -> Attr#getOwnerElement()
    DOMWriter incorrect EncName when using -e
    XMLTreeView can't display Japanese characters  
    TX: readDTDStream interferes with createDTD

July 15, 1999: version 2.0.13

  • New Features:
    Serialize DOM Implementation
    Attribute#getElement for LotusXSL
    Query Node by ID value for LotusXSL
    DOMWriter encoding feature documentation update
  • Bugs Fixed:
    Parsers reject document w/ multiple entity refs for attribute values
    Parsers accept files w/ bad attribute declarations
    TX Parser is not validating, broken
    Remove final from Pools & structs
    Treeviewer throws exception                  

July 8, 1999: version 2.0.12

  • New Features:
    New DOMAddLines sample puts line numbers in DOM tree
    Added FAQ on memory "leaks"
    Separated programatic vs deferred DOM
    Added option to DOMWriter to set output encoding
  • Bugs fixed:
    Empty file passes through parser without error
    Error message for xml:space was wrong
    SAXParser blew up on null DocumentHandler
    endDocument callback without startDocument callback
    Parser failed silently on bad default attribute value declaration
    DOMWriter threw an exception on error
    JavaDoc for native DOM wasn't being generated
    Improved memory usage for DOM
    DefaultScanner didn't build under JBuilder 3
    Parser threw an exception if JVM didn't support encoding
    TreeViewer fixes

June 11, 1999: version 2.0.11

  • Fixed extraneous output from DefaultEntityHandler
  • "Invalid attribute" error was Fatal using non-validating parser.
  • SAX/DOMWriter samples were not extensible.
  • PCDATA between elements but not declared in the content model was not rejected.
  • Cloning Document caused null pointer exception thrown when using DEFERRED DOMParser
  • Text nodes were not normalized  when using FULL DOMParser and setExpandEntityReferences(true)
  • Attribute values were cloned incorrectly.
  • Enumerated attributes could  be assigned values from any enumerated declaration.
  • Some Validity Constraint errors were Fatal, and caused the parser to stop.

May 12, 1999: version 2.0.10

  • MixedContentModel with more than 64 elements caused parsing to stop
  • CDATA sections contained extra text
  • config.bat for building parser configurations was broken for DOM
  • Hard-coded strings moved to ResourceBundle to permit translation

May 6, 1999: version 2.0.9

  • DOM Implementation classes were final, but should not have been
  • TX: Revalidation functions didn't check attributes
  • Parameter entity error reporting was confusing

April 29, 1999: version 2.0.8

  • Modified license (no termination clause!).
  • Static Members in Classes cause problems for threads
  • NodeImpl.insertBefore needs to call synchronizeChildren
  • Missing end tag </doc> does not emit error on EOF
  • Content Model With >= 64 Parts Stops Parse
  • Entity Reference in NMTOKEN Attribute can only be used once
  • TX: Namespace constraint checking is broken.
  • TX: searchDescendantsAll not returning null if no children

April 9, 1999: version 2.0.7

  • XML4J was holding files/streams open
  • TX: Parser#readDTDStream didn't work
  • DOMParser no longer prints a msg to stderr, if file not found
  • version string was getting compiled in, because it was "final"
  • support for xml-stylesheet PI verified (xml:stylesheet is no longer part of the XSL spec)
  • Fixed several minor documentation problems

April 6, 1999: version 2.0.6

  • Samples source code wasn't packaged correctly.
  • Fixed several minor documentation problems.

March 31, 1999: version 2.0.5

  • Added revalidation on native (non-TX-compatibility) DOM trees.
  • TX: DOMHash now supports namespaces.
  • UTF-16 reading was broken.
  • Some non-well formed XML was accepted without error.
  • Parser was printing "Imperfect hashcode".
  • NMToken attribute type with entity ref in attribute value ends parse.
  • Infinite loop in error handler, if file contains Unicode 0.
  • Validating parsers fail to catch bad DTD.
  • Validation fails to catch files that reference undeclared Elements.
  • Revalidation bugs fixed.
  • Element#normalize() throws NullPointerException.
  • PI's in DOM tree turn into CDATA Section nodes.
  • DOCTYPE node should not have children.
  • Default attribute values didn't work correctly in DOM tree.
  • TX: DTD#unregistID added for use with XPointer.
  • TX: DOM serializability problems.
  • TX: javadocs wrong: DTD.setName() deprecated()
  • TX: javadocs wrong: TXDocument doesn't call createAttribute().
  • TX: CMLeaf#equals(), CM2op#equals(), CM2op#toString().
  • TX: DTD#realInsert doesn't add new entities to EntityPool.
  • TX: TXAttribute#cloneNode doesn't clone all data
  • TX: TXDocument cloning is broken

March 12, 1999: version 2.0.4

  • IllegalAccessException in UTF8CharReader under certain Java VMs
  • Empty content emits "incomplete content" validation error for content models that specify all optional parts
  • No public constructors on DOM implementation classes
  • ElementImpl#getTagName returns null
  • DocumentImpl#getElementsByTagName throws exception
  • DocumentImpl#getDocumentElement returns null
  • Removed extraneous methods from parsers

March 5, 1999: version 2.0.3

  • Native DOM performance improved
  • Native DOM classes moved to com.ibm.xml.dom from com.ibm.domimpl
  • Added setExpandEntityReferences to com.ibm.xml.parsers.DOMParser and com.ibm.xml.parsers.NonValidatingDOMParser. Additional details are in the FAQ.
  • Added setNodeExpansion to com.ibm.xml.parsers.DOMParser and com.ibm.xml.parsers.NonValidatingDOMParser. Additional details are in the Programming Guide.
  • TX: ElementHandlers don't work
  • SAX DTDHandlers returning wrong results

Feb 26, 1999: version 2.0.2

  • Long content models aren't validated correctly
  • Unable to recognize encodings other than UTF-8
  • Invalid attribute value throws internal exception
  • Various DOM implementation bugs
  • Build script can't package TX-compatible parsers

Feb 18, 1999: version 2.0.1

  • only accepts URLs
  • Some relative URI's failing in XJParse
  • Erroneous validator messages
  • Configuration scripts missing from package
  • DOM generating incorrect Text nodes
  • TX: SAXDriver missing
  • NOTE: if you are using SAX, we strongly recommend that you switch to the new method of creating a SAX parser.
  • Added FAQ on Visual Age for Java

Feb 5, 1999: version 2.0.0

  • Added EBCDIC Support
  • Improved internal error handling
  • Doesn't support unparsed entities that refer to notations declared afterward the referencing entity.
  • TX: setPreserveSpace not implemented correctly
  • TX: PI handling missing null check
  • TX: incompatible with XML4J 1.1.13
  • TX: user supplied TXDocument factory can result in null pointer exceptions
  • License updated

Jan 18, 1999: version D06

  • Re-validation of TX DOM trees.
  • TX: Ignorable whitespace is not created correctly

Jan 15, 1999: version D05

  • Entity resolution cannot find relative entities.
  • TX: Errors are not reported.
  • TX: TXText Nodes created instead of CDATA Nodes.

Dec 23, 1998: version D04

  • Sample files 'SAXCount...' are now included in samples JAR.
  • The parser can now be interrupted mid-stream (checked on a per-element basis).
  • Correctly process FIXED attribute defaults.

Dec 18, 1998: version D03

  • Added TX Compatibility classes
  • Added native catalog support for both TX style catalog and XCatalog
  • Updated documentation .

Dec 7, 1998: version D02

  • Improved memory management architecture
  • Fixed DOM defects.

Nov 17, 1998: version D01

  • Improved documentation. 

Nov 6, 1998: version EA1

  • Now supports:
    • XML 1.0 Specification (Feb. 02, 1998)
    • DOM (Core) Level 1 Specification Version 1.0 (Oct. 01, 1998)
    • SAX 1.0 Specification
  • Rearchitecture and new implementation of XML4J
    • Modular architecture.
    • Pre-bundled parser configurations included are:
      • SAX Parser (with and without validation)
      • DOM Parser (with and without validation)