modified parsing of <list>, <union>, <restriction>, <sequence>, <choice>,

* xmlschemas.c: modified parsing of <list>, <union>, <restriction>,
  <sequence>, <choice>, <include>, <import>.
  Fixed schema defaults (elementFormDefault, etc.) for included
  schemas.
  Fixed a bug which reported attributes as invalid on
  elements declarations with the built-in type 'anyType'.
  Added "lax" validation of the content of elements of type
  'anyType'.
  Fixed: element declarations with the same name were treated
  as duplicate if located in the subtree of <choice> -> <sequence>.
  (This was bug 150623, submitted by Roland Lezuo)
  Fixed cleanup of error codes in xmlSchemaValidateDoc as proposed
  by Igor Kapitanker. (This was bug 150647, submitted by Igor
  Kapitanker)
* xmlschemastypes.c: Changed the type of anyType to
  XML_SCHEMAS_ANYTYPE.
* include/libxml/xmlerror.h: Added schema parser errors.
* result/schemas/bug145246_0_0*
  result/schemas/extension1_0_2.err: Changed test results.
* result/schemas/ct-sc-nobase_0_0*
  result/schemas/facet-whiteSpace_0_0*
  result/schemas/import1_0_0* result/schemas/import2_0_0*
  result/schemas/include2_0_0* result/schemas/include3_0_0*
  result/schemas/restriction-attr1_0_0*
  result/schemas/seq-dubl-elem1_0_0*
  result/schemas/xsd-list-itemType_0_0*: Added new rest results.
  test/schemas/bug145246.xsd.imp test/schemas/ct-sc-nobase_0*
  test/schemas/facet-whiteSpace_0* test/schemas/import1_0*
  test/schemas/import2_0* test/schemas/include2_0*
  test/schemas/include3_0* test/schemas/restriction-attr1_0*
  test/schemas/seq-dubl-elem1_0* test/schemas/xml.xsd
  test/schemas/xsd-list-itemType_0*: Added new tests and missing
  files.
diff --git a/xmlschemastypes.c b/xmlschemastypes.c
index f07518b..f46b03c 100644
--- a/xmlschemastypes.c
+++ b/xmlschemastypes.c
@@ -226,7 +226,8 @@
 	(type == XML_SCHEMAS_NMTOKENS) ||
 	(type == XML_SCHEMAS_ENTITIES)) 
 	ret->flags |= XML_SCHEMAS_TYPE_VARIETY_LIST;
-    else if (type != XML_SCHEMAS_UNKNOWN)
+    else if ((type != XML_SCHEMAS_ANYTYPE) &&
+	(type != XML_SCHEMAS_ANYSIMPLETYPE))
 	ret->flags |= XML_SCHEMAS_TYPE_VARIETY_ATOMIC;
     ret->contentType = XML_SCHEMA_CONTENT_BASIC;
     switch (type) {
@@ -277,7 +278,7 @@
     * 3.4.7 Built-in Complex Type Definition
     */
     xmlSchemaTypeAnyTypeDef = xmlSchemaInitBasicType("anyType",
-                                                     XML_SCHEMAS_UNKNOWN, 
+                                                     XML_SCHEMAS_ANYTYPE, 
 						     NULL);
     xmlSchemaTypeAnyTypeDef->baseType = xmlSchemaTypeAnyTypeDef;
     xmlSchemaTypeAnyTypeDef->contentType = XML_SCHEMA_CONTENT_MIXED;
@@ -286,7 +287,7 @@
 
 	wild = (xmlSchemaWildcardPtr) xmlMalloc(sizeof(xmlSchemaWildcard));
 	if (wild == NULL) {
-	    xmlSchemaTypeErrMemory(NULL, "could not create a wildcard on anyType");
+	    xmlSchemaTypeErrMemory(NULL, "could not create an attribute wildcard on anyType");
 	    return;
 	}
 	memset(wild, 0, sizeof(xmlSchemaWildcard));
@@ -297,7 +298,7 @@
 	xmlSchemaTypeAnyTypeDef->attributeWildcard = wild;
     }
     xmlSchemaTypeAnySimpleTypeDef = xmlSchemaInitBasicType("anySimpleType", 
-                                                           XML_SCHEMAS_UNKNOWN,
+                                                           XML_SCHEMAS_ANYSIMPLETYPE,
 							   xmlSchemaTypeAnyTypeDef);
     /*
     * primitive datatypes
@@ -1744,11 +1745,11 @@
     }
 
     switch (type->builtInType) {
-        case XML_SCHEMAS_UNKNOWN:
-            if ((type == xmlSchemaTypeAnySimpleTypeDef) ||
-		(type == xmlSchemaTypeAnyTypeDef))
-                goto return0;
+        case XML_SCHEMAS_UNKNOWN:            
             goto error;
+	case XML_SCHEMAS_ANYTYPE:
+	case XML_SCHEMAS_ANYSIMPLETYPE:
+	    goto return0;
         case XML_SCHEMAS_STRING:
             goto return0;
         case XML_SCHEMAS_NORMSTRING:{
@@ -3548,6 +3549,8 @@
 
     switch (x->type) {
 	case XML_SCHEMAS_UNKNOWN:
+	case XML_SCHEMAS_ANYTYPE:
+	case XML_SCHEMAS_ANYSIMPLETYPE:
 	    return(-2);
         case XML_SCHEMAS_INTEGER:
         case XML_SCHEMAS_NPINTEGER:
@@ -3688,9 +3691,6 @@
         case XML_SCHEMAS_NMTOKENS:
 	    TODO
 	    break;
-	case XML_SCHEMAS_ANYTYPE:
-	case XML_SCHEMAS_ANYSIMPLETYPE:
-	    break;
     }
     return -2;
 }