Re: [xml] xml Digest, Vol 71, Issue 9
- From: Piotr Sipika <piotreks optonline net>
- To: robert coup koordinates com
- Cc: xml gnome org
- Subject: Re: [xml] xml Digest, Vol 71, Issue 9
- Date: Mon, 15 Mar 2010 10:23:53 -0400
Robert Coup wrote:
...
gml_error.xsd:15: element complexType: Schemas parser error : local
list type: A type, derived by list or union, must have the simple
ur-type definition as base type, not
'{http://www.example.org/gml}doubleList'.
WXS schema gml_error.xsd failed to compile
This might be a bug in libxml2 as your schema validates with the w3.org
validator[1].
If you look at xmlschemas.c, the actual line generating the error is
located at xmlschemas.c:15161
if ( (WXS_IS_LIST(type) || WXS_IS_UNION(type)) &&
(WXS_IS_RESTRICTION(type) == 0) &&
here--> (! WXS_IS_ANY_SIMPLE_TYPE(baseType)))
Simple type macros are defined at xmlschemas.c:227:
#define WXS_IS_SIMPLE(item) \
((item->type == XML_SCHEMA_TYPE_SIMPLE) || \
((item->type == XML_SCHEMA_TYPE_BASIC) && \
(item->builtInType != XML_SCHEMAS_ANYTYPE)))
#define WXS_IS_ANY_SIMPLE_TYPE(i) \
(((i)->type == XML_SCHEMA_TYPE_BASIC) && \
((i)->builtInType == XML_SCHEMAS_ANYSIMPLETYPE))
As you can see, the macro in question verifies that the type is an
XMLSchema built-in type or anySimpleType. I believe the marcro used in
the test at line 15161 should be a combination of WXS_IS_SIMPLE and
WXS_IS_ANY_SIMPLE_TYPE, i.e., something like:
#define WXS_IS_SIMPLE_TYPE(i) \
(((i->type == XML_SCHEMA_TYPE_SIMPLE) && \
((i->type == XML_SCHEMA_TYPE_BASIC) && \
((i)->builtInType == XML_SCHEMAS_ANYSIMPLETYPE)))
Does this look like a valid diagnosis, or am I missing something?
Thanks,
Piotr
[1] http://www.w3.org/2001/03/webdata/xsv
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]