2004-04-27 Atsushi Enomoto * XmlSchemaAttribute.cs : When type was inline simple type, it is not validated correctly. * XmlSchemaSimpleType.cs : When Content was restriction, DataType was not indicating base type's Datatype correctly. 2004-04-06 Atsushi Enomoto * XmlSchemaDatatype.cs : optimized Normalize() not to create extraneous string objects. 2004-03-15 Atsushi Enomoto * reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to reject incorrect schemas ;-) 2004-03-04 Alon Gazit * XmlSchemaUnique.cs : Changed Read implementation. Currently can read "field" element before "selector" element (like MS). 2004-02-26 Atsushi Enomoto * XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized (as always synchronized). 2004-02-16 Atsushi Enomoto * XmlSchema.cs, XmlSchemaAttribute.cs XmlSchemaAttributeGroup.cs, XmlSchemaComplexContent.cs, XmlSchemaComplexType.cs, XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaParticle.cs : extra TODO removal. foreach elimination. Moved attribute group recursion check field from XmlSchemaObject to XmlSchemaAttributeGroup. Fixed XmlSchemaParticle.EmptyParticle class access modifier. * XmlSchemaSimpleType.cs, XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs : Removed "actualBaseSchemaType" field and the owner simpleType should hold the corresponding type info. Collect base type info in prior to validation. 2004-02-05 Atsushi Enomoto * BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014. * BUGS.txt : FYI. 2004-02-03 Atsushi Enomoto * BuiltInDatatype.cs : Fixed some Parse() for token based datatypes. * XmlSchemaAny.cs : set properties for cloned particle. This will fix bugzilla #53668. * XmlSchemaParticle.cs : copy occurence string after computation of validated min/max occurence. This will fix bug #53667. 2004-01-26 Atsushi Enomoto * XmlSchema.cs : Raise warning event when external schema could not be resolved. * XmlSchemaAll.cs : Fixed incorrect IsEmptiable computation. * XmlSchemaAny.cs : Fixed incorrect occurence computation. * XmlSchemaChoice.cs : compiledItems were incorrectly appended. * XmlSchemaComplexType.cs : Now validatableParticle became extraneous. * XmlSchemaGroupBase.cs : Here we should not get optimized particle because it might cause infinite loop. * XmlSchemaGroupRef.cs : Fixed Validate() to avoid null reference exception (only occur with ValidationEventHandler). Fixed Occurence embedding logic that was useless because of particle optimization. 2004-01-22 Atsushi Enomoto * BuiltInDatatype.cs : On parsing QName, we don't have to spend costs on Add()ing parsed name to name table. * XmlSchemaUtil.cs : Added IsBuiltInDatatypeName(). * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeList.cs : Use the method above instead of Namespace string comparison. (it will be required to validate schema for schemas.) * XmlSchemaComplexType.cs : Type Derivation OK (3.4.6) should also treat null base type as anyType. Derivation Valid Restriction (3.4.6) should allow base type wildcard absense in case of anyType. 2004-01-22 Atsushi Enomoto * XmlSchema.cs : When we have schema A which includes schema B which includes schema C (i.e. A->B->C), C components should be compiled. Here, same URL inclusions are ignored. * XmlSchemaElement.cs : Hack for missing substitution-group fix. * XmlSchemaSimpleTypeContent.cs : make actualBaseSchemaType private and initialize. This fixes bug #53178. * XmlSchemaSimpleTypeUnion.cs : Forgot to commit ;) 2004-01-22 Atsushi Enomoto * XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify pattern string as "^str$" and convert WXS specific char classes into .NET regexp patterns. 2004-01-21 Atsushi Enomoto * XmlSchema.cs : - Removed extra property Language. Fill substitution-group info before ContentTypeParticle is computed. * XmlSchemaComplexType.cs : ContentType and ContentTypeParticle are now computer before Validate() (to exclude 3.4.2 from 3.4.6 component constraint check). * XmlSchemaObject.cs, XmlSchemaParticle.cs : Added CopyInfo() for cloning objects. * XmlSchemaObjectTable.cs : Add() doesn't have to reject same named items. * XmlSchemaParticle.cs : - Renamed internal class XmlSchemaParticleEmpty to EmptyParticle (for ease of post compilation infoset comparison). - GetMinEffectiveTotalRange() should return max occurs for element and any. * XmlSchemaParticle.cs, XmlSchemaAll.cs, XmlSchemaAny.cs, XmlSchemaChoice.cs, XmlSchemaElement.cs, XmlSchemaGroupBase.cs, XmlSchemaGroupRef.cs, XmlSchemaSequence.cs : - Removed ActualParticle property. - Added GetOptimizedParticle() to get ContentTypeParticle. - ContentTypeParticle is now created as different object from user-specified "Particle" property. - Return Empty particle when model groups contains no Items. - When Items contains exactly 1 item, return the item (unless it is top level choice model group - it causes DBR problem). - ValidateDerivationValidRestriction() and related WXS 3.9.6 DBR check methods such as ValidateNSRecurseCheckCardinality() now returns a bool value and avoids exceptions on each failure time. - ValidateRecurse() now doesn't progress base particle incorrectly. (it caused incorrect order-preserving-mapping error.) - 3.9.6 Recurse, RecurseLax, MapAndSum are now treated as different. * XmlSchemaAll.cs : occurence validation shoud be done against values after computation (ValidatedMaxOccurs). * XmlSchemaChoice.cs : When Items is empty, then invoke warning event. * XmlSchemaElement.cs : - Consider referencedElement also for SubstitutionGroupElement. - Removed SubstitutingChoice which is not in use. - when it was targeted as substitution group by other elements, its ContentTypeParticle should be substitution choice (see 3.9.6 Particle Valid (Restriction) term 2.1). - Added FillsubstitutionElementInfo() (see XmlSchema.cs above). * XmlSchemaGroup.cs : Removed extra check on model group (because it is impossible to specify non-model-group particle). * XmlSchemaIdentityConstraint.cs, XmlSchemaKey.cs, XmlSchemaKeyRef.cs, XmlSchemaUnique.cs : Removed extraneous MonoTODO. * XmlSchemaSimpleContent.cs : Made actualSchemaType as internal. * XmlSchemaSimpleType.cs : Removed extraneous new Datatype property. * XmlSchemaSimpleTypeRestriction.cs : Renamed actualBaseSchemaType to ActualBaseSchemaType. * XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs : Removed unused actualBaseSchemaType code. * XmlSchemaType.cs : use recently introduced BaseXmlSchemaType. * XmlSchemaUtil.cs : Removed unused CheckLanguage(). 2004-01-21 Atsushi Enomoto * XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was incorrectly treated. 2004-01-20 Atsushi Enomoto * SchemaDataValueType.cs : UriValueType.ToString() should return actual URI string (as MS's XmlSchemaUri class does). * XmlSchemaReader.cs : Make it internal. 2004-01-16 David Sheldon * BuiltInDatatype.cs: added guard to stop index out of range error for invalid Base64 characters. 2004-01-15 Jackson Harper * XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes build). 2004-01-15 Atsushi Enomoto * XmlSchemaComplexContentExtension.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, XmlSchemaContent.cs : Added IsExtension. GetXXX() became nonvirtual. * XmlSchemaType.cs : - Added NET_2_0 BaseXmlSchemaType (other members are commented out). - Now BaseSchemaType redirects to new property BaseXmlSchemaType. * XmlSchemaComplexType.cs : - Now it fully uses BaseXmlSchemaType above. - Since ValidateXXX() became too huge, I divided them into CollectXXX() [spec 3.4.1] and ValidateXXX() [spec 3.4.3 / 3.4.6]. Schema Components are contributed before constraint check. - Now ContentTypeParticle is distinguished from validating particle which is newly introduced as "ValidatableParticle" (only used in XsdValidatingReader). * XmlSchemaSimpleType.cs : Now it uses BaseXmlSchemaType. capitalized internal members a bit. 2004-01-14 David Sheldon * XmlSchemaSimpleTypeRestriction: Convert pattern facets to be ORed, as per: http://www.w3.org/TR/xmlschema-2/#src-multiple-patterns Fixes bug 52841 2004-01-14 David Sheldon * BuiltInDatatype.cs: XsdAnySimpleType - Added Length that returns the string length. XsdBase64Binary - Added Length, and used more direct, less fussy, Base64 decoder. XsdHexBinary - Added Length method * XmlSchemaSimpleTypeRestriction: use DataType Length method to determine length to compare against. Stop testing Lenght facets on QName and Notation types (as per errata) 2004-01-14 Atsushi Enomoto * XmlSchemaComplexType.cs : forgot to commit ;) * XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false for comparison between ID and IDREF. 2004-01-14 Atsushi Enomoto * Added SchemaDataValueType.cs. * BuiltInDatatype.cs, XmlSchemaDatatype.cs : Adde ParseValueType() on all derived datatype classes. * XmlSchemaComplexType.cs : Fixed ContentType value for simple types. Errata-considered simple content derivation check and simple content restriction should check this too. 2004-01-13 Jackson Harper * XmlSchemaComplexType.cs: Comment out line that was breaking the build. 2004-01-13 Atsushi Enomoto * XmlSchemaSimpleTypeUnion.cs : The same reason as the previous patch. * XmlSchemaComplexType.cs : Now it handles ContentTypeParticle and ContentType much more presise than before. * XmlSchemaElement.cs : Simplified property handling for reference element. 2004-01-13 Atsushi Enomoto * XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs : Invalid attribute should raise an error, not a warning. 2004-01-13 Atsushi Enomoto * XmlSchemaObject.cs : Fixed error() not to set severity as Warning. * ValidationHandler.cs, XmlSchemaSet.cs, XmlSchemaCollection.cs : Throw exception only in case of errors. * XmlSchemaCollection.cs : Remove schema from schemaset if exist. (It might not be good to use schemaset, but keep for a while) * XmlSchemaContent.cs, XmlSchemaComplexContentExtension.cs, XmlSchemaComplexContentRestriction.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, : added GetBaseTypeName() and GetParticle() (not used yet). 2004-01-11 Atsushi Enomoto * BuiltInDatatype.cs : internal type should not appear in protected members' signature. 2004-01-11 David Sheldon * BuiltInDatatype.cs : Added XsdOrdering enum, and Compare methods to the data-types. Changed AllowedFacets to be a bitfield. * XmlSchemaFacet.cs : Added Facet enumeration to represent bitfield. * XmlSchemaEnumerationFacet.cs, XmlSchemaFractionDigitsFacet.cs, XmlSchemaLengthFacet.cs, XmlSchemaMaxExclusiveFacet.cs, XmlSchemaMaxInclusiveFacet.cs, XmlSchemaMaxLengthFacet.cs, XmlSchemaMinExclusiveFacet.cs, XmlSchemaMinInclusiveFacet.cs, XmlSchemaMinLengthFacet.cs, XmlSchemaNumericFacet.cs, XmlSchemaPatternFacet.cs, XmlSchemaTotalDigitsFacet.cs, XmlSchemaWhiteSpaceFacet.cs : Added ThisFacet Property to return facet type * XmlSchemaSimpleTypeRestriction.cs: Inherited facets from base types, checked which which were allowed on different types. Validated fixed facets, duplicated facets and derivation by restriction. Added checking for min/max Inclusive/Exclusive, totalDigits and fractionDigits facets in validation. 2004-01-09 Atsushi Enomoto * XmlSchemaSet.cs : implemented some members. * XmlSchemaCollection.cs : modified to use internal schema set (This class provides more precise schema validation feature and will be commonly used for XPathNavigator2). Added .NET 1.1 .ctor() which takes XmlResolver. * XmlSchema.cs : fix related to above changes. Use validation event handler on Read() at all required places. Added .NET 1.1 .ctor() which takes XmlResolver. * XmlSchemaComplexType.cs : content type comparison was incorrect. Renamed confusing method. * XmlSchemaElement.cs : don't use ContentTypeParticle in CheckRecursion(), where that property might not be determined yet. * XmlSchemaGroupBase.cs : Modified ValidateRecurse() a bit (currently no effect) * XmlSchemaGroupBase.cs, XmlSchemaChoice.cs, XmlSchemaAll.cs, XmlSchemaSequence.cs : moved CheckRecursion to XmlSchemaGroupBase. * XmlSchemaObjectTable.cs : Fixed missing error info. * BUGS-MS.txt : Added info a bit. 2004-01-08 Atsushi Enomoto * BUGS-MS.txt : added list derivation and facet case. * XmlSchemaComplexType.cs : Added some description. Avoided null reference exception in some places. Fixed incorrect 3.4.6 Derivation Valid (Extension) 1.4.1.2.2 and 3.9.6 Particle Valid (Extension) 2. * XmlSchemaGroupBase.cs : Fixed ParticleEquals() which didn't work properly against sequence and all. 2004-01-08 Atsushi Enomoto * XmlSchemaObjectTable.cs : Modified enumerator's Current to return DictionaryEntry. * XmlSchemaComplexType.cs, XmlSchemaUtil.cs : In reflection to object table enumerator change. 2004-01-08 Atsushi Enomoto * XmlSchemaElement.cs : Fixed incorrect unique particle attribution check on ##other and target namespace element. 2004-01-08 Nick Drochak * XmlSchemaSimpleType.cs: Needed a 'new' on the property * XmlSchemaXPath.cs: Removed unreachable code. 2004-01-03 Atsushi Enomoto * XmlSchemaDatatype.cs : trivial allocation fix. 2003-12-17 David Sheldon * BuiltInDatatype.cs : Added whitespace=collapse to data types such as date, dateTime, .... gDay. I think I have them all now. 2003-12-15 Atsushi Enomoto * BuiltInDatatype.cs : anySimpleType should allow facets. 2003-12-14 David Sheldon * BuiltInDatatype.cs : Added code to tell which facets were valid on types derived from each basetype. * XmlSchemaSimpleTypeRestriction.cs : Complain if an invalid facet has been added to a restriction. 2003-12-14 David Sheldon * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths specified are integers. Also made some error messages more useful. 2003-12-08 Atsushi Enomoto * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check if max/min length range is valid. 2003-12-07 Atsushi Enomoto * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace facet as collapse (patch by David Sheldon). * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-) * XmlSchemaSequence.cs : MapAndSum implementation. 2003-11-17 Atsushi Enomoto * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes (for convenience of ObjectSpaces stubbing). 2003-10-25 Atsushi Enomoto * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while the correct binding is sbyte. * XmlSchemaAll.cs, XmlSchemaChoice.cs, XmlSchemaSequence.cs, XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness described in WXS structures 3.9.6. Added ValidateRecurse() to support 'Recurse' validation. * XmlSchemaComplexType.cs : Removed incorrect content type conformity check. * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation described in WXS structures 3.9.6. Fixed type derivation check to do only if the base type is not anyType. * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex() construction exception. ValidateList... and ValidateNonList... was in reverse. * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken(). 2003-10-25 Atsushi Enomoto * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time. Fixed most of date-time related types' ParseValue(). Applied Normalize() before parsing values in some ParseValue(). 2003-10-23 Atsushi Enomoto * XmlSchemaAll.cs, XmlSchemaChoice.cs, XmlSchemaGroupBase.cs, XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase. * XmlSchemaAny.cs, XmlSchemaElement.cs, XmlSchemaGroupBase.cs, XmlSchemaGroupRef.cs, XmlSchemaParticle.cs, XmlSchemaSequence.cs : Added ParticleEquals() method to compare whether the particles are equal in the context of WXS part 1 - 3.9.6. * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction(). * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my responsibility on this class. Added ValidateWildcardAllowsNamespaceName(). * XmlSchemaAttribute.cs : Added ValidatedUse which holds post- compilation value of "Use". * XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other classes) since there is no more errors on attribute stuff ;-) * XmlSchemaComplexType.cs : complex content extension must block derivation from any built-in primitive types. Fixed wildcard derivation by restriction. ValidateDerivationByRestriction() now checks attribute related validity of DBR (derivation by restriction). Now uses ParticleEquals() for particle DBR check. * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items. 2003-10-21 Atsushi Enomoto * XmlSchema.cs, XmlSchemaUtil.cs : Reduced warning message. * XmlSchemaAttribute.cs : NotImplementedException should no more exist. (All things are going to be implemented.) * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal. * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented list type derivation validation. Added Normalize(). * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType with anySimpleType. * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation, such as pattern, enumeration, and length etc. 2003-10-19 Atsushi Enomoto * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse(). * XmlSchemaCollection.cs : Implemented CopyTo(). * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling. Added support for anySimpleType. * XmlSchemaSimpleType.cs : Type specification named as anyType should be mapped to anySimpleType. * BUGS-MS.txt : Added more case note. 2003-10-13 Lluis Sanchez Gual * XmlSchema.cs: If the schema element is an empty element, skip it after reading the attributes. 2003-10-09 Atsushi Enomoto * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes. 2003-10-01 Lluis Sanchez Gual * XmlSchemaUtil.cs: arrayType attribute needs special handling. 2003-10-01 Atsushi Enomoto * XmlSchema.cs : Forgot to update with previous files. 2003-10-01 Atsushi Enomoto * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs, XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs : Fixed missing sub components check. It should fix soap stuff. * XmlSchemaAny.cs, XmlSchemaAttribute.cs, XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs : Added my responsibility on them ;-) 2003-10-01 Atsushi Enomoto * XmlSchema.cs : Read() should keep current position of XmlReader if it was already positioned to 'schema' element. 2003-09-30 Atsushi Enomoto * Forgot to append 8/24/2003 ChangeLog. * BUGS.txt, BUGS-MS.txt : Appended additional bug info. * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs, XmlSchemaCollection.cs, XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs, XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs, XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs, XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs, XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs, XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs, XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs, XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs, XmlSchemaXPath.cs : - Almost all classes are changed to implement schema component constraints, and schema validation using XsdValidatingReader. - better exception messages. - More datatype support. and so on. 2003-09-14 Lluis Sanchez Gual * XmlSchema.cs: Do not add schema namespace declaration if it is already declared. 2003-08-28 Lluis Sanchez Gual * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type. 2003-08-24 Atsushi Enomoto * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None. * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema. Add() should compile specified schema. 2003-08-08 Lluis Sanchez Gual * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI, XsdDateTime, XsdDate, XsdTime. 2003-08-07 Atsushi Enomoto * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken. Tokenized type of nmtokens and entities is string []. * XmlSchema.cs : Changed IsCompile implementation a bit. Compile() should reset compiled contents. * XmlSchemaDatatype.cs : Fixed collapsing Normalize(). * XmlSchemaObject.cs : added CompilationId initialization. 2003-08-05 Lluis Sanchez Gual * XmlSchema.cs: Set IsCompiled to true after compiling. In Compile(): ignore included schemas that do not have a value in SchemaLocation. It means that FindElement can return null if the referred schema was ignored. Added check for that case. Compile schema after reading it. * XmlSchemaCollection.cs: The targetNamespace of a schema may be null. Make XmlSchemaCollection work for this case. * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive types: float, base64Binary, boolean. 2003-08-02 Atsushi Enomoto * XmlSchema.cs : - Changed missingElementTypeRefs from Hashtable to ArrayList. - Added internal XmlSchemas for keeping imported schemas. - Added private Compile() that takes the original rootSchema and schema location stack for nested inclusion check. - Added basic xs:import and xs:include support. - Compile() is now aware of included XmlSchemaObject items. - Changed Compile() to fill missing elements' types and that of referencing elements. - Read() now adds SourceUri property (although only to itself). * XmlSchemaCollection.cs : Implemented Add(). * XmlSchemaCollectionEnumerator.cs : Changed .ctor() to use schema collection as its argument. Fixed Current to return hashtable's Value, instead of Current (which returns DictionaryEntry). * XmlSchemaComplexType.cs : Added internal static AnyType. Compile() is now searches for its base type into other schemas. * XmlSchemaElement.cs : anyType is supported. It now searches for type information after Compile(). SetReferedElementInfo() is now changed to SetSchemaType(). * XmlSchemaObjectTable.cs : It had problems similar to schema collection. Now it uses internal class XmlSchemaObjectTableEnumerator to support GetEnumerator(). * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty and internal static Empty. 2003-07-26 Atsushi Enomoto * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented. * XmlSchemaDatatype.cs : public Whitespace and protected Normalize() should be internal. 2003-07-24 Atsushi Enomoto * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize(). 2003-07-21 Atsushi Enomoto * XmlSchema.cs, XmlSchemaElement.cs : added internal MissingElementTypeRefs and support for refering element's elementType. 2003-07-20 Atsushi Enomoto * XmlSchema.cs : added support for collecting missing type references at compilation-time. * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs: - Renamed qName to QNameInternal. - Added BaseSchemaType and ContentTypeParticle support. 2003-07-19 Atsushi Enomoto * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs, XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs, XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs, XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs, XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs, XmlSchemaSimpleContentExtension.cs, XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs, XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs, XmlSchemaXPath.cs, As to Compile() and Validate(), - Added CompilationId and check it while compiling schema components. - Code refactory. Replaced literal xmlns with XmlSchema.Namespace - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema also has PSVI components inside it, so passing itself seems enough). - Related to above change, IDCollection was moved to XmlSchema, and blockDefault/finalDefault/blockResolved/finalResolved resolution was changed to reference only to schema.BlockDefault/FinalDefault. - The similar change has done against XmlSchemaForm related stuff. - Changed compilation order of schema type definitions (it is workaround). First it compiles types, and then it compiles others. * XmlSchemaElement.cs : added ElementType PSVI contribution support. 2003-07-19 Atsushi Enomoto * BuiltInDatatypes.cs, XmlSchemaDatatype.cs : Added decimal and its derived datatypes. Added abstract XsdAnySimpleType. 2003-07-15 Lluis Sanchez Gual * BuiltInDatatype.cs, XmlSchemaDatatype.cs : added unsignedByte type support. 2003-07-14 Lluis Sanchez Gual * XmlSchemaDatatype.cs: Fixed compiler warning. 2003-07-12 Atsushi Enomoto * BuiltInDatatype.cs, XmlSchemaDatatype.cs : added NOTATION type support. 2003-07-06 Atsushi Enomoto * added BuiltInDatatype.cs. * XmlSchemaDatatype.cs : [GetType()] added support for some built-in datatypes. 2003-05-05 Atsushi Enomoto * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode(). 2003-02-19 Atsushi Enomoto * XmlSchemaAnnotation.cs : expect the correct closing tag on and elements. (patch by Peter Pentchev) * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject instead of XmlSchema. (patch by Peter Pentchev) 2002-07-23 Duncan Mak * XmlSchemaException.cs: Partiall implement the ISerializable methods. It's not clear now SourceSchemaObject should be deserialized. 2002-07-22 Tim Coleman * XmlSchema.cs: Removed isCompiled which is defined as internal in XmlSchemaObject. 2002-06-18 Dwivedi, Ajay kumar * XmlSchema: Started work on Validate methods 2002-06-18 Dwivedi, Ajay kumar * XmlSchema: The Read and Write methods are no more [MonoTODO] :) * XmlSchemaAppInfo: Xml Markup is now being read. * XmlSchemaDocumentation: Xml Markup is now being read. * All: Unhandled attributes are being handled properly. * All: Reordered the properties in all cs files to match with MS Implementation. This was required since the order is importatnt for the XmlSerializer. 2002-06-14 Dwivedi, Ajay kumar * General: Fixed a few more Bugs 2002-06-10 Dwivedi, Ajay kumar * XmlSchemaReader: A Wrapper class around XmlReader with customized methods to suit reading a schema. * General: Implemented Read() method for the schema. There are only a few minor bugs remaining. 2002-05-25 Dwivedi, Ajay kumar * BUGS.txt: New file to keep track of bugs * ALL: All classes are initialized exactly as in .NET except 1. inclusion of language attribute in schema 2. ComplexContent's Particle is initialized to null whereas .NET to some internal implementation. IMO Null is more appropriate * ALL: Changed the Compile methods to return the count of errors. * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests. This number should shoot up if we write a parser to read the Schema instead of using reflection (which is slower too) 2002-05-04 Dwivedi, Ajay kumar * XmlSchemaUtil.cs: New file added. * Parser.cs: New file Added. Unused at the moment. * XmlSchemaObjectCollection: Fixed GetEnumerator * General: Preprocessing for Attributes and SimpleTypes completed. 2002-04-26 Duncan Mak * ValidationHandler.cs: New file. * XmlSchemaInfo.cs: New file. * *.cs: More updates from Ajay. 2002-03-27 Duncan Mak * *.cs: Updates from Ajay Dwivedi .