mirror of
https://github.com/AdaCore/xmlada.git
synced 2026-02-12 12:30:28 -08:00
git-svn-id: svn+ssh://svn.eu.adacore.com/Dev/trunk/xmlada@160081 936e1b1b-40f2-da11-902a-00137254ae57
113 lines
5.6 KiB
Plaintext
113 lines
5.6 KiB
Plaintext
=======================================
|
|
Known problems in XML/Ada version 3.2.0
|
|
=======================================
|
|
|
|
Copyright (c) 2009-2010, AdaCore
|
|
|
|
The following is a listing of known problems in release 3.2.0. Except where
|
|
specifically noted, all these problems have been corrected in the development
|
|
tree of the 3.2 technology. This means they are corrected in any 3.3.0w
|
|
wavefront issued subsequent to the date specified (in ISO format YYYY-MM-DD) in
|
|
the status line. This can be used to determine if a given wavefront has the fix
|
|
identified in the entry.
|
|
|
|
KP-32-J325-027 Missing obj directories
|
|
|
|
Problem: When compiling XML/Ada, gnatmake will sometimes complain of
|
|
missing object directories, which may not be part of the source
|
|
package.
|
|
|
|
Status: Fixes in XML/Ada 3.2.1
|
|
|
|
Workaround: In the Makefile, replace "gnatmake" with "gnatmake -p"
|
|
|
|
KP-32-J302-043 Lots of fixes in schema validation
|
|
|
|
Problem: Several problems were found in the schema validation testsuite.
|
|
These include:
|
|
- Incorrect checking of date ranges (valid days in the month for
|
|
instance), or in time (seconds < 60);
|
|
- Elements with no type should have processContents lax, rather
|
|
than strict. This means that their children element should be
|
|
checked if they have entries in the schema, rather than just
|
|
ignored;
|
|
- Attributes "use" and "fixed" were ignored for attribute whose
|
|
type was defined with a "ref". For instance:
|
|
<xsd:attribute ref="tn:number" use="required"/>
|
|
Furthermore, when using ref, the referenced attribute's fixed
|
|
was also ignored.
|
|
- Unicity was not checked for types derived from ID. In
|
|
particular, XML/Ada did not check unicity for elements (only
|
|
for certain cases of attributes)
|
|
- HexBinary length must be even
|
|
- In XSD 1.0, elements must have at most one ID attribute. This
|
|
restriction was lifted in XSD 1.1 (and XML/Ada now handles both
|
|
cases)
|
|
- In XSD 1.0, schemaLocation cannot be used after an element has
|
|
already used that namespace
|
|
- Regexp are always anchored implicitly ("^..$"), and "\w" should
|
|
not match "_"
|
|
- Namespaces specified as ##other should not allow unqualified
|
|
elements.
|
|
- Fix computation of length on lists, and therefore the facets
|
|
minLength, length and maxLength
|
|
- Fix handling of anyAttribute when defined in an attributeGroup
|
|
- When multiple anyAttributes are defined for an element, they
|
|
must all match
|
|
- "qualified/unqualified" does not apply to elements defined
|
|
through a <group> when they have a "ref" attribute, since they
|
|
are considered global in that case.
|
|
- "fixed" attribute values should be compared with non-normalized
|
|
value of the attribute
|
|
- Verify the "form" for attributes (whether they should be
|
|
namespace qualified or not)
|
|
- QName elements must have a valid namespace
|
|
- <facet name="pattern" value="..."> should preserve spaces in
|
|
the pattern
|
|
- Handling of <group> inside a <restriction>
|
|
- Error when root element is abstract
|
|
- Support for block="substitution"
|
|
- Type of <element> should be computed from its
|
|
substitutionGroup if there is no other type defined
|
|
- Raise explicit exception (XML_Not_Supported) for various
|
|
regexp constructs that are not supported (unicode,...)
|
|
- Length facets should be ignored for QName (always match)
|
|
- A restriction does not inherit wildcard attributes from its
|
|
base type
|
|
- Added support for "final" attribute in <simpleType>
|
|
- <anyAttribute> should accept multiple namespaces in its
|
|
namespace attribute
|
|
- A sequence of <any> elements failed when the first one did
|
|
not match (XML/Ada never tried to match the next one)
|
|
- Elements with a simpleType need to normalize their whitespaces
|
|
before validation
|
|
- When in a restriction, all the <anyAttribute> must match,
|
|
whereas in an extension only one of them has to match
|
|
- The "fixed" value must also match the type from xsi:type
|
|
- A "prohibited" attribute might still be accepted through a
|
|
<anyAttribute> if there is one in the same element
|
|
- Two attributes with different namespaces: the second one was
|
|
never validated
|
|
- All elements are nillable by default
|
|
- "fixed" does not specify the exact string the element or
|
|
attribute must have, but its value. For instance, if this is
|
|
a float attribute, specifying "1.0" as a float still allows
|
|
"1" as the actual value. Same for enumerations.
|
|
|
|
Status: Fixed in 4.0.0
|
|
|
|
Workaround: None
|
|
|
|
KP-32-IC10-021 Incorrect validation of "date" types with timezone
|
|
|
|
Problem: If an attribute is of type xsd:date, it should allow the use of
|
|
timezones (either "Z" or "+00:00" for instance). XML/Ada does not
|
|
support these in 3.2.0 version
|
|
|
|
Status: Fixed in 4.0.0
|
|
|
|
Workaround: You could have two elements, one for the date the other for the
|
|
timezone, although that's not as elegant
|
|
|
|
|