Changes in V4.0.0 since V3.1.0 * XMLBEANS-548: XmlDocumentProperties.setStandalone is ignored when saving * XMLBEANS-542: SAX Parsing should not fail if parser does not allow the setting of declaration-handler * XMLBEANS-541, XMLBEANS-544, XMLBEANS-545: Fixes to ant build scripts * XMLBEANS-540: Prevent trim of elements when pretty print is used * XMLBEANS-539: Support Saxon-HE 10 as an XPath engine Changes in V3.1.0 since V3.0.2 * update build and deployment artifacts to standardize naming and remove unused items * XMLBEANS-502: Allow to clear all ThreadLocals from the current thread * XMLBEANS-503: Allow to specify -nowarn in the Ant task * XMLBEANS-537: Add missing StscState.end() to avoid memory leaks * XMLBEANS-532: Streamline build.xml and update tests to Junit4 * XMLBEANS-531: Fix schema gen of attributes * XMLBEANS-530: Allow namespaces of XmlOptions to be passed to the XQuery engine * XMLBEANS-529: Format xmlobjects to the correct string representation on XPath access * XMLBEANS-528: Allow document locator to be set after initialization * XMLBEANS-527: Rename shell script directory, to align on typical directory layout * XMLBEANS-526: Fix issue with loading META-INF/services files * XMLBEANS-538: fix issue with parsing DOM with DTD Changes in V3.0.2 since V3.0.1 * XMLBEANS-520: wrong name for source(s) artifact * XMLBEANS-519: issue when using old XML parser versions * XMLBEANS-506: NPE trying to load resource file if XmlBeans was loaded by the bootstrap ClassLoader Changes in V3.0.1 since V3.0.0 * XMLBEANS-518: add support to XmlOptions to allow control over the XML parser settings that affect DTD loading and entity expansion Changes in V3.0.0 since V2.6.0 * XMLBEANS-517: use safe XML parsers * XMLBEANS-516: remove unnecessary javax and org.w3c classes * XMLBEANS-515: remove piccolo support * XMLBEANS-514: make java 6 the lowest supported runtime * XMLBEANS-489: fix for Cursor getAllNamespaces not returning default namespace * Fix for XMLBEANS-499: xmlbeans2.6.0.jar contains duplicate class files (causes issues on Android) * XMLBEANS-447: Drop the ConcurrentReaderHashMap source code * Fix for XMLBEANS-404: entitizeContent CDATA loop iterating too many times (causes assertion error or ArrayIndexOutOfBoundsException in replace) * Fix for XMLBEANS-332: XMLBeans changes surrogate pair bytes to question marks Changes in V2.6.0 since V2.5.0 * Add new xml option CopyUseNewSynchronizationDomain used for copy. This fixes the scenario when copy and access (ex. selectPath) are used in a multithreading environment. * Entitize \r when not in pretty print, this helps with maintaining \r entities. * Fix validation of integer value containing dot char. * Fix chars in comments to avoid errors in IntelliJ under linux. * Update durations to latest spec. * Fix for compiling schema that contains complex type with simple content that has facets defined in the base simple type * Fix for Piccolo lexer when read method returns 0. * Fix to preserve the CDATA bookmarks when copy from one xmlobject to another. * Fix bug when resizing circular buffer in saver's output stream implementation. * Fix for bug when not specifing type for a particle in derived schema type and when minOccurs is 0. * Fixed error messages when contain base and derived type names. * Introducing a default maximum entity replacement limit of 10kb, it can be controled by using the option XmlOptions.setLoadEntityBytesLimit. * Fixed javadoc for inst2xsd and xsd2inst tools. * Fix NPE in SchemaTypeImpl.getEnumJavaClass(). * Added multiple entry points and refactored code for xsd2inst code. * Remove org.w3c.dom files from xbean.jar. * Add another xpath and xquery interface implementation. * Add src/xmlinputstream classes org.apache.xmlbeans.xml.stream.* to xmlpublic.jar. * Make bootstrap run twice to avoid GUMP error emails. * Fix for bug XMLBEANS-396: GML 3.1.1 generated code fails to compile. * Fix for bug XMLBEANS-412: Pattern facet regex requires dash - to be escaped. * Fix for bug XMLBEANS-414: error cvc-complex-type.2.1: Element 'XXXX' with empty content type cannot have text or element content. Changes in V2.5.0 since V2.4.0 * Exit codes for InstanceValidator * Decimal precision handling fix in xsd2inst * Option to perform additional, stricter Schema validation checks: XMLBEANS-350 * updated pattern for dayTimeDuration * Extended year min/max value limitations * Support for date and time types with hour 24. * NOTATION built-in type * DocType fix when root element is changed * "User types" feature - allows mapping of Schema simple types to custom user Java classes http://wiki.apache.org/xmlbeans/UserTypes * Nested enumeration type compilation error fix: XMLBEANS-381 * Deadlock fix in generated impl setter simple and array * Required attribute fix in streaming validator * Many other fixes and optimizations Changes in V2.4.0 since V2.3.0 * Pluggable XPath/XQuery engine support * Upgraded support for Saxon 9 * Added Schema compilation option to skip errors in case duplicate component declarations are encountered. * Finer grained support for CDATA * Tool to generate XPath for a given cursor position in a document * added more fine-grained control over XML to Java name mapping * Add support for JVM-supported encodings * Adding XmlError codes * Replace static HashMaps with WeakHashMaps * Fix for XMLBEANS-309 Warnings on Generated code * Fix for XMLBEANS-361 invalid NaN comparisons * Fix qname marshaling when empty namespace * Various other bug fixes Changes in V2.3.0 since V2.2.0 * Improved Saxon support, Saxon 8.8 became the recommended version * Added options to control use of CDATA sections when saving to XML * Added support for QNames in Schema annotations * Added support for new encodings: UTF-16LE, UTF-16BE, CP936/GBK. * Fix: overzealous whitespace cropping after parsing entities like & (XMLBEANS-274) * Fix: selectPath() with setXqueryCurrentNodeVar() option does not work for Saxon (XMLBEANS-276) * Fix: synchronization problem with array setters * Fix: Saver$TextSaver.replace method throws java.lang.ArrayIndexOutOfBoundsException (XMLBEANS-209) * Fix: QNameSet generated by QNameSet.forArray(QName[]) can't be unioned with other QNameSets (XMLBEANS-290) * Fix: java.lang.ArrayIndexOutOfBoundsException when saving XML (XMLBEANS-291) * Fix: XQuery gives wrong result with Saxon 8.6.1 (XMLBEANS-275) * Fix: bug during generation of complex types with simple content * Fix: improved error handling during loading of Schema type system * Fix: bugs in Duration serialization * Fix: XMLCursor.getTextValue() * Fix: Remove year zero from GDate, GDateBuilder and XmlCalendar per XMLSchema spec D.3.2 Changes in v2.2.0 since v2.1.0: * Allow polymorphism in Extension Interfaces Feature * Fix for circular buffer in TextSaver * Tuned synchronization for multithreaded validation * Updated to the latest XMLSchema.xsd - January 25, 2006 * Better QName validation * Fix insertion positions when using substitution groups with arrays * Updated XmlBeans to work with SaxonB-8.6.1 in place of SaxonB8.1 * Fix for regex validation in multi-threaded, multi-processor environment * Fix for schema compilation error when restricting complex type with simple content * Implemented XMLInputStream interface for saving a store * XQuery external variable binding support * Various other bug fixes Changes in v2.1.0 since v2.0.0: * Fixed the issue whereby some IDEs would have problems with the TypeSystemHolder class being generated in the classes directory * Better integration with Maven * Implemented support for ID/IDREF in DTDs via DOM's .getElementByID() * Integrated a patch that makes XmlBeans work in a sandboxed environment * Added the ability to control entitization of characters when saving documents * Fixed issue with memory reclamation in multi-threaded environments, which was delayed too much so it could be mistaken for a memory leak * Added numerous new test cases and performance tests * Continued improving performance, especially in the DOM support and XmlCursor areas * Added column numbers support in our snapshot of Piccolo; validation and XMLSchema error reporting benefit from this and is of course usable from user code * Line/column number is now also available for end-tags * Solved a legal inconsistency surrounding our use of JSR173 APIs * Fixed a lot of reported issues in various areas of the product Changes in v2.0.0 since v2.0.0-beta1: * many performance related changes, especialy in the DOM and Cursor areas * rewrite of the support * Completed the implementation of Filer * new documentation on xs:any, validation plus updates of the old docs * many bug fixes, including perm gen memory bug Changes in v2.0.0-beta1: * new store implementation, including native DOM implementation * Piccolo is now the default parser.XmlOptions.setLoadUseXMLReader (XMLReader xmlReader) can be used when a diffrent parser is required. * Sample xml generation from an schema file * New failfast behavior for simple types, more consistent * EntityResolver is setable in SchemaCompiler * XPath 2.0 and Xquery support through Saxon * java 1.5 generics for array properties added to generated source * Simplified working with substitution groups by adding XmlObject.substitute() method * "-noVDoc" command-line option for scomp to skip validation of contents * uniform access to the getSourceName() method in Schema Object Model * Cleaned up schema compilation APIs with a XmlBeans.compileXmlBeans() * Added error codes and improved validation error messages * Changed .xsb format and loading strategy to improve performance * Ability to pass URLs instead of Files for Wsdl/Schemas * Added option to pass in "##local" to -allowmdef * Inst2xsd: support for xsi:nil and qname fix. * adding getCurrentElementSchemaType in Validator for finding schema types of elements with xsi:type attribute * adding ValidatingInfoXMLStreamReader for PSVI access on XMLStreamReaders * added Location to streaming validation errors * Instance 2 schema tool * Support for arbitrarily nesting s * New "schema bookmark" mechanism allowing one to tag user data on Schema Object Model entities * Add ability for XmlSaxHandler to insert bookmarks while loading * Added a diff utility that compares two jars (or directories) containing compiled Schema types * Interface and pre-post extensions * Enabled ValidatingXMLStreamReader to start validating from both current and next event in the XMLStreamReader * Functionality to retrieve xml validation errors programatically * Added saver options to not save xml decl * Added ability to compile Schemas containing references to SOAP11 encoded arrays * selectChildren and selectAttributes for dynamic getters and some wildcard scenarios * Location in ValidatingXmlStreamReader * Added a wrapper over jsr173's XMLStreamReader * Added support for default value in XMLStreamReaderExt interface and implementation * Adding typed value for QName case in the Validator * Adding an utility for validation of simple schema types * Improved the Validator to ofer PSVI info * Exposed some of the XMLSchema validator functionality in the public interfaces * Added support for XML Catalog, based on Apache Commons CatalogResolver * Added XMLStreamReaderExt an extention of XMLStreamReader which alowes getting strongly typed java values from a stream * Adds support for annotations in XMLSchema * Added JSR 173 support * performance tests * various feature tests * samples and documentation * packaging, licencing changes