Re: [xml] current state of validating against Schemas



Hi,

On Sun, 2005-06-26 at 17:51 -0400, Daniel Veillard wrote:
On Sun, Jun 26, 2005 at 02:47:45PM -0500, Rob Benton wrote:
Hey guys I have been looking through a lot of the old messages in the 
archive about validation using schemas.  I wanted to see what the 
current state of that is.  Is it still incomplete?

  Mostly complete, but there are bugs left, depends how "hard" your
schemas are I guess.

To summarise it a bit:

1. We don't support <redefine>s yet.
2. <any> with a namespace of "##other" does only work if
   minOccurs/maxOccurs both are 1 [1].
3. We don't support ID/IDREF yet [2] - use identity-constraints instead
4. The complex content model cannot be built in some cases [3]
5. The subset of XPath for identity-constraints is not checked yet, so
   be careful what expressions you use
6. Complex type <restriction>s are not checked for being a valid
   restriction. I recommend using an other XS processor if you need a
   teacher for valid restrictions.
7. The data-type section seems to work pretty well, except for 
   float and double values, where we don't support the whole range of
   values (extremely low/high values)

We have still some failures in the W3C test suite, mostly on the
MS side; many of the failures are due to the tests itself being
broken, but some of them might reveal some new bugs. I'm already a
bit burned out by looking at every single test and compare the results
with Xerces and XSV - there are simply too many of them (about > 7K).
The W3C schema test suite is currently under revision by the W3C
people, so we should get more accurate/assured results soon.

If you need exact knowledge of the missing parts, search for "TODO" in
xmlschemas.c. Many of the TODOs should be internal, but some of them
are directly related to missing parts in the spec.

[1] http://bugzilla.gnome.org/show_bug.cgi?id=172215
[2] http://bugzilla.gnome.org/show_bug.cgi?id=170795
[3] http://bugzilla.gnome.org/show_bug.cgi?id=307508

Regards,

Kasimier



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]