[Mono-list] Issues in XmlSchema.XmlSchemaElement

Tom Cabanski tcabanski@OAI.cc
Tue, 6 Jan 2004 15:59:37 -0600

I am working on a port of a large toolkit (150K+ lines) that deals with =
the JDF xml standard (see www.cip4.org).  Fortunately or unfortunately, =
their schema is one of the largest, most complex and most screwy I have =
ever seen.  Even so, I compile it and use the SOM to generate validation =
rules successfully for the Windows (Microsoft Framework 1.1) version of =
the toolkit.  I have also used it successfully with the Xerces parser =
under C++ and Java as well as in various tools such as XML Spy.  Under =
Mono, I have hit a variety of problems during schema compile (via =
XmlSchema.Compile merthod), which I am starting to explore and fix.

In general, it would appear the Mono compile is doing some extra checks =
that, although logical, may not be in line with the W3C standards; they =
are certainly not in line with the Microsoft and Xerces implementations. =
 One that represents the issue takes place in =
XmlSchemaElement.ValidateUniqueParticleAttribution.  This routine fails =
on the CIP4 JDF schema with the error "Ambiguous element label which is =
contained by -any- particle was detected".  I know it fails because of =
the way, the admittedly bizarre way, that this schema uses the any =
element.  As far as I can tell, it is legal in xml schema to allow any =
in the way they are doing so even though it makes for ambiguity as the =
error points out.  Essentially, children qualify under the any rule as =
well as a specific rule.  I'd like to chat with the developer(s) that =
are most knowledgeable on the SOM implementation in Mono so I can =
determine the best way to proceed.


Tom Cabanski