=== version history of XML::Compile Unless noted otherwise, these changes where initiated and applied by Mark Overmeer. To be resolved (hopefully soon): facets on list base-types: length, maxLength, minLength, enumeration, , pattern, whiteSpace fixed to collapsed length facet on base64/hex encoding about binary length (tests needed) handle XML::LibXML::Error objects handle xsi:type useSchema() relation to ::Cache::declare()? version 1.01: Thu Feb 12 09:39:50 CET 2009 Fixes: - do not use /bin/pwd in t/pod.t - writer: report warnings when accepting a difficult construction. - key_rewrite(PREFIXED) options now do stack, without the possibility to get it rewritten twice. - reader: complain if no data was recognized. [Jozef Kutej] - handle schema's with targetNamespace but not qualified elements. http://www.w3.org/TR/xmlschema-0/#UnqualLocals [Jozef Kutej] Improvements: - ::Schema::useSchema() let you share definitions between various ::Schema extensions. - document that XML::Compile::dataToXML() can be used as instance method as well. version 1.00: Wed Jan 21 10:51:23 CET 2009 Changes: - oops, rename elementFormDefault parameters into element_form_default. Breaks only XML::Compile::SOAP 2.00_01 - substitutionGroup keys did not get prefixed, when key_rewrite was enabled. Fixes: - writer: name-space qualified for NIL [Mark Blackman] - template: be more careful not to put trailing '}' on a line with comment. - writer: contents of tagged elements were not processed, so not checked or whitespace corrected. - report rewritten key when required value is missing, not the full key. - compile(mixed_elements=STRUCTURAL) was ignored when the mixed option was found with the complexContent. Improvements: - template: hook "COLLAPSE" to reduce output size for well-known types. - writer: accept {_ => $value} as alternative for $value. - writer: optimize seq block with one block element. - added XML::Compile::Util::even_elements() - writer: show available tags in complex block with unused tags when in debug mode. - show substitutionGroup members in debug mode. Requires Log::Report v0.21 - make addHooks() use addHook(), easier to override. - reader: elements with mixed="true" by default only unpacks the ATTRIBUTES. It is hard to figure-out why the node is not translated into Perl. Therefore, the resulting HASH now contains a _MIXED_ELEMENT_MODE key as explanation. - with "Log::Report mode => 'DEBUG'", you may get extra help on some errors. version 0.99: Mon Dec 29 10:16:28 CET 2008 Changes: - reset "used count" when include_namespaces - Qname will not complain about "unused namespace", because that is often not true. If true, than you have to provide a the compile(prefixes) as HASH with used flag set. Fixes: - elements and attributes with non-default "form" attribute were not recognized. - type-based replace hook selected too often. Improvements: - compile(include_namespaces) can have a code reference to filter included namespace declarations to be included. - addSchemas/importDefinitions now have options {element,attribute}FormDefault to overrule the (missing) info in many (old) schemas (even those of soap and wsdl). - dataToXML() also finds filenames in the SCHEMADIR, not only known namespaces. That was always intended to happen. - optimize reading of complex with zero or one component. - new reader hook after => 'NODE_TYPE' - error when schema definition contains components of other namespaces. - you now can compile types only, where the schema does not contain the definition of the element which will be produced. But I will not tell you how until the interface has settled ;-) version 0.98: Tue Dec 16 08:32:04 CET 2008 Fixes: - writer failed for choice with an element containing a false value, like "0" or ''. Reported by [Sander Hulst] - do not attempt to add namespace declarations to produced attributes in the writer. - elements with minOccurs=0/maxOccurs=unbounded and optional content failed. rt.cpan.org#41725 [Osfameron] Improvements: - easier to understand error messages in block writer. - started XML::Compile::FAQ version 0.97: Mon Nov 24 15:51:54 CET 2008 Fixes: - dataToXML() with document node will return document element. - dateTime reversed minutes/seconds. Fixed by [Allan Wind] - dateTime timezone part is optional. Fixed in docs by [Allan Wind] - count error with array of elements writer, when maxOccurs is an integer value larger than 1. An error will be produced when too many elements are provided. Improvements: - bigfloat support for xml2yaml [Slaven Rezic] version 0.96: Fri Oct 10 16:02:09 CEST 2008 Fixes: - warning condition on old libxml2 version was broken: warned too often. rt.cpan.org#39807 [Joerg Plate] - overruling "qualified" on top-level elements did not work anymore. - writer hook "replace" crashed on missing (optional) data. version 0.95: Wed Oct 1 17:38:07 CEST 2008 Fixes: - top-level elements could not be have as nillable, default, and fixed. rt.cpan.org#39215 [Tom Hukins] - do pattern match on unmodified float values. rt.cpan.org#39224 [MIROD] - automatically defined xsi when any element is nillable. You will still need to specify "include_namespaces => 1" to have the compiler add the name-space definition to the root namespace. For the moment only supports SCHEMA2001 - the applications of facets is explicitly ordered, to avoid colissions between checks in lexical space and conversions made in value-space. - accept but ignore minScale and maxScale facets (cannot be represented in Perl objects yet) - removed facet totalFracDigits, which does not exist. How did it get in? - precissionDecimal was handled as int, should be float. - positiveInteger value check broken. [Sander Hulst] - accept the 'error' base-type. Improvements: - small (<1e9) float/decimal values will not become Math::Big* - facet lists and non-lists various optimizations in reader. - pre-lexical facet whiteSpace on list does not need to be checked in writer. - handling of (+|-|)INF and NaN for precissionDecimals, floats and doubles. - adapt names of test helpers to new X::C::Tester standard. v0.03 of that module is now required. version 0.94: Tue Aug 26 10:09:05 CEST 2008 Fixes: - repair whitespace facets collapse and replace. [Allan Wind] - NMTOKEN has no blanks, but token may have them. rt.cpan.org#38675 [Allan Wind] Improvements: - show more useful features of Log::Report in ::Schema SYNOPSIS version 0.93: Mon Aug 11 21:13:22 CEST 2008 Changes: - changed order of attributes back to situation of 0.90: the base-class attributes are probably more important than the attributes of the extension. - groups with maxOccurs > 1 renamed from gr_