2008-06-13  Atsushi Enomoto  <atsushi@ximian.com>

	* XmlSchema.cs : fixed couple of olive regressions caused by
	  previous ProcessExternal() patches.

2008-06-06  Atsushi Enomoto  <atsushi@ximian.com>

	* XmlSchema.cs : indent (I slightly modified the previous patch
	  to expose the actual changes).

2008-06-06  Atsushi Enomoto  <atsushi@ximian.com>

	* XmlSchema.cs : fixed bug #397612, patch by James Fitzsimons.
	  in ProcessExternal(), Make xs:import without schemaLocation work
	  fine as if it were with schemaLocation.

2008-06-06  James Fitzsimons <james.fitzsimons@gmail.com>

	* XmlSchema.cs : Changed GetResolvedUri to return Uri in correct case
	  to make compatible with the Microsoft.NET framework.

2008-02-19  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Do recursively process xs:include inside included
	  schemas. Fixed bug #361818.

2008-02-19  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaAny.cs : block extra compilation in anyTypeContent.

2008-02-04  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : added couple of null argument check.
	  Do not depend on XmlSchemaInfo to retrieve attribute value (it
	  could be null).
	  Do not practically validate attribute when it is not in validating
	  state (i.e. inside xs:any). Fixed bug #358408.

2008-01-12  Sebastien Pouliot  <sebastien@ximian.com>

	* XmlSchemaInference.cs: Fix infinite recursion in TypeInference
	property getter. Found by Gendarme.

2007-11-12  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : XmlValueGetter actually needs string value
	  to validate against a restricted simple type (beyond ParseValue()). 
	  Fixed bug #339934.

2007-11-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : implemented value-space
	  comparison for enumerations. Actually it is hybrid (it also
	  tries literal-space comparison first). Fixed bug #322457 and
	  #322458.

	  When there is a literal-space match, sometimes you cannot try to
	  get TypedValue even if it is valid due to double.Parse() overflow.

2007-09-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlAtomicValue.cs :
	  Added ToString(). Public API metadata completion.

2007-08-02  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaComplexType.cs,
	  XmlSchemaComplexContentRestriction.cs :
	  in Validate(), every descendant item in complexType must be first
	  validated before getting GetOptimizedParticle(), or it could result
	  in wrong content particle. Fixed bug #82010.

2007-08-02  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : another extra whitespace rejection.
	  Fixed another issue reported on bug #82183.

2007-07-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : do not reject whitespaces in elementOnly
	  content model. Fixed bug #82183.

2007-07-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : dependent changes to 
	  XsdParticleValidationState. Changed ValidateWhitespace() to do
	  the same as we do in XsdValidatingReader.

2007-04-24  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs XmlSchemaGroup.cs XmlSchemaAny.cs XmlSchemaElement.cs
	  XmlSchemaNotation.cs XmlSchemaComplexType.cs
	  XmlSchemaAttributeGroup.cs XmlSchemaSimpleType.cs
	  XmlSchemaIdentityConstraint.cs XmlSchemaAnyAttribute.cs
	  XmlSchemaRedefine.cs XmlSchemaAttribute.cs :
	  avoid incorrect compilation of included schemas, fixed bug #81360.
	  more fix for wrong targetNamespace propagation within current
	  processing model. Replaced ParentIsSchema field with a property.

2007-04-24  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs XmlSchemaSimpleTypeList.cs
	  XmlSchemaComplexContentRestriction.cs XmlSchemaGroup.cs
	  XmlSchemaComplexContentExtension.cs XmlSchemaSequence.cs
	  XmlSchemaSimpleContentRestriction.cs
	  XmlSchemaSimpleContentExtension.cs
	  XmlSchemaElement.cs XmlSchemaAll.cs XmlSchemaComplexType.cs
	  XmlSchemaAttributeGroup.cs XmlSchemaSimpleTypeRestriction.cs
	  XmlSchemaSimpleContent.cs XmlSchemaChoice.cs
	  XmlSchemaSimpleType.cs XmlSchemaIdentityConstraint.cs
	  XmlSchemaSimpleTypeUnion.cs XmlSchemaRedefine.cs
	  XmlSchemaComplexContent.cs XmlSchemaAttribute.cs
	  XmlSchemaObject.cs : set parent component in prior to compilation,
	  bringing Parent to 1.x as internal. Moving toward fixing #81360.

2006-12-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaIdentityConstraint.cs : give conflicting component in
	  the error message.
	* XmlSchemaElement.cs : When resolving "ref" and "substitutionGroup",
	  It should use XmlSchema.FindElement() instead of XmlSchema.Elements
	  so that it does not miss external components.
	* XmlSchemaSet.cs, XmlSchema.cs : now in one XmlSchemaSet
	  compilation, make sure to not handle the same schema twice even
	  at the schema level.

2006-10-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : it must also be fixed for method signature
	  change.
	* XmlSchemaSimpleTypeRestriction.cs : on .NET 2.0, use 
	  IXmlNamespaceResolver for XmlSchemaValidator.

2006-10-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : for facet validation, it should
	  use namespacemanager. Though the change is not perfect, thus I
	  disable this change for now.

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs, XmlSchemaSimpleTypeList.cs,
	  XmlSchemaSimpleContentRestriction.cs, XmlSchemaUtil.cs,
	  XmlSchemaSimpleContentExtension.cs, XmlSchemaElement.cs,
	  XmlSchemaComplexType.cs, XmlSchemaSimpleTypeRestriction.cs,
	  XmlSchemaSimpleTypeUnion.cs, XmlSchemaAttribute.cs :
	  Finally fixed bugs around cross-referencing importing schema 
	  components (namely, #77489 and #78220) by resolving referenced
	  components via new internal Find[Element|Attribute|AttributeGroup|
	  SchemaType] methods in XmlSchema.

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : set ValidationEventHandler to XmlSchemaSet only
	  when the argument event handler is not null.
	  Validate() is internal to open it to XmlSchemaSet.
	* XmlSchemaSet.cs : removed extraneous "handler" field and method
	  "OnValidationError". Now ValidationEventHandler just works since
	  we don't have to care about XmlSchemaCollection's event (it just
	  reuses XmlSchemaSet's event now).
	  Split Compile() process to collect components first, and to
	  validate next.

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : compiling and validating external components in
	  prior to direct components in a schema does block my refactoring.
	  Removed extraneous call to XmlSchemaSet.Add().

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs, XmlSchemaSet.cs : some minor refactoring to make
	  Compile() simple two phase (i.e. CompileSubset() and Validate()).

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaException.cs : oops, .ctor(string) was only for 2.0.

2006-07-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCollection.cs :
	  eliminated call to XmlSchema.CompileSubset(). Now XmlSchemaSet is
	  the only starter of the compilation.
	* XmlSchemaSet.cs : added targetNamespace check.

2006-07-26  Atsushi Enomoto <atsushi@ximian.com>

	Refactoring compilation to make Compile() portable to
	XmlSchemaSet.Compile() and fix multi-schema bugs (not done yet)

	* XmlSchema.cs : 
	  Removed "root schema" concept from Compile().
	  Since nested inclusion does not result in an error, the role of
	  schemaLocationStack is identical to handledUris, thus removed it.
	  The handledUris does not have to be a field.
	  Moved NamedIdentities and IDCollections to XmlSchemaSet.
	  Renamed a Compile() which is called from XmlSchemaCollection and
	  XmlSchemaSet as CompileSubset(). Renamed private Compile() as
	  DoCompile().
	  public Compile() now internally creates a new XmlSchemaSet and
	  compiles the set.
	* XmlSchemaCollection.cs : now it hooks its schemaSet's validation
	  event handler and thus XmlSchemaSet does not need to check this
	  collection's event handler by itself.
	  XmlSchema.Compile() -> XmlSchema.CompileSubset().
	* XmlSchemaSet.cs :
	  Removed SchemaCollection which became unneccessary.
	  Added NamedIdentities and IDCollection.
	  XmlSchema.Compile() -> XmlSchema.CompileSubset().
	* XmlSchemaAttributeGroupRef.cs, XmlSchemaXPath.cs
	  XmlSchemaSimpleTypeList.cs, XmlSchemaComplexContentRestriction.cs,
	  XmlSchemaGroup.cs, XmlSchemaComplexContentExtension.cs,
	  XmlSchemaSequence.cs, XmlSchemaSimpleContentRestriction.cs,
	  XmlSchemaSimpleContentExtension.cs, XmlSchemaAny.cs,
	  XmlSchemaElement.cs, XmlSchemaNotation.cs, XmlSchemaAll.cs,
	  XmlSchemaComplexType.cs, XmlSchemaAnnotation.cs,
	  XmlSchemaAttributeGroup.cs, XmlSchemaSimpleTypeRestriction.cs,
	  XmlSchemaSimpleContent.cs, XmlSchemaGroupRef.cs,
	  XmlSchemaChoice.cs, XmlSchemaSimpleType.cs,
	  XmlSchemaIdentityConstraint.cs, XmlSchemaSimpleTypeUnion.cs,
	  XmlSchemaAnyAttribute.cs, XmlSchemaComplexContent.cs,
	  XmlSchemaAttribute.cs, XmlSchemaObject.cs :
	  removed XmlSchemaObject.IsCompiled(). Check compilation state by
	  comparing compilation ID directly.

2006-07-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : mutual schema import was failing because the
	  compiling schema's SourceUri was not enlisted for nest check.

2006-03-02  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : seems like there is XmlSchemaExternal.Schema property
	  that is filled after Compile(). Fixed bug #77687.

2006-03-01  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaAppInfo.cs, XmlSchemaDocumentation.cs : seems like MS
	  implementation fills empty node set for empty xs:appinfo and
	  xs:documentation and waste memory. Fixed bug #77685.

2006-02-28  Gert Driesen  <drieseng@users.sourceforge.net>

	* XmlSchema.cs: Do not define namespace for zero-length TargetNamespace
	and report XmlSchemaException when compiling XmlSchema with
	zero-length TargetNamespace.

2006-02-01  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs : anyURI could be such relative path that
	  contains ':' in the middle. It also affects on relaxng validation.

2006-01-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationException.cs : fixed .ctor() signatures.

2006-01-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaAttribute.cs, XmlSchemaElement.cs : AttributeSchemaType
	  and ElementSchemaType were not working fine for anySimpleType.
	* XmlSchemaValidator.cs : When actual schema type was complex,
	  schema types was not filled correctly. Modified some extra comments.
	* XmlSchemaSet.cs, XmlSchemaType.cs : removed extra MonoTODOs.

2006-01-10  Atsushi Enomoto <atsushi@ximian.com>

	* XmlAtomicValue.cs : it won't be implemented since there is no way
	  to test it inside sys.xml. Thus remarked MonoTODO.
	* XmlSchemaDatatype.cs : implemented IsDerivedFrom(), which is however
	  mostly useless.

2006-01-06  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : Add() rollbacks IsCompiled to false.
	  Global components are not added when Add() is called.

2006-01-06  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : reverted previous fix; it broke inclusions.

2006-01-06  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : Add() needs (consistent) namespace duplicate check.

2006-01-06  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : maxLength and minLength were
	  likely to be ignored in ValidateNonListValueWithFacets().
	* XmlSchemaValidator.cs : Don't use normalized string value as the
	  input to AssessStringValid().

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs :
	  Turned out that it also has set_CompilationSettings.
	* XmlSchemaComplexType. : thus CompilationSettings is nullable, we
	  have to check its existence.

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Compile() are obsoleted in 2.0.

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : TypeCode is virtual in 2.0 RTM.

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationException.cs :
	  oops, there is SourceObject other than SourceSchemaObject.
	* XmlSchemaCompilationSettings.cs : oops, actually XmlSchemaSet is
	  also used in 1.x profile (internally)
	* XmlSchemaSimpleTypeList.cs : added set_BaseItemType bogus (just to
	  fill API compatibility).

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCompilationSettings.cs : new file.
	* XmlSchemaSet.cs : added CompilationSettings property.
	* XmlSchemaComplexType.cs : support for EnableUpaCheck.

2005-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationException.cs : added SetSourceObject() which
	  is just for API compat (it does nothing on MS.NET).
	  Removed #if NET_2_0 inside #if NET_2_0.

2005-12-01  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSequence.cs : when a subcomponent is not optional
	  (minOccurs!=0) then it should clean previous components up.
	  Really fixed bug #76865.

2005-12-01  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaElement.cs : Fixed ambiguity detection logic so that
	  chameleon ##other (xs:any) does not block other "absent"
	  (empty targetNamespace) element. Fixed bug #76865.

2005-11-07  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : added missing ValidateWhitespace and
	  ValidateText, though the latter I think is LAMESPEC.

2005-11-07  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationFlags.cs : updated to match 2.0 RTM.
	* XmlSchemaValidator.cs : related fix.

2005-11-07  Atsushi Enomoto <atsushi@ximian.com>

	* XmlValueGetter.cs, XmlSchemaValidator.cs, XmlSchemaException.cs,
	  XmlSchemaAttribute.cs : Updated API to match 2.0 RTM. Most of the
	  changes are related to XmlValueGetter change.

2005-11-07  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : sealed.
	* ValidationEventArgs.cs : not sealed in 2.0.
	* XmlSchemaCollection.cs : added private ICollection.Count (to erase
	  IsVirtual difference).

2005-10-17  Lluis Sanchez Gual  <lluis@novell.com>

	* XmlSchemaSerializer.cs: Arrays of XmlNode don't
	need to be all XmlElments. Fix by Atsushi for bug #76288.

2005-09-30  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaUtil.cs: (GetParserContext) if reader is not internal 
	  IHasXmlParserContext, silently return null. This is for NVDL xsd
	  support.

2005-09-30  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : XmlReader position after Read() is the end of the
	  schema element.

2005-09-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaBuiltInType.cs : removed obsolete beta file.

2005-09-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationFlags.cs, XmlSchemaValidator.cs :
	  NET_2_0 API updates.

2005-08-31  Sebastien Pouliot  <sebastien@ximian.com>

	* XmlSchemaException.cs: Added a Demand for SerializationFormatter
	on GetObjectData method.

2005-08-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : normalize EOL.
	  Remove non-ASCII letters.

2005-08-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaComplexType.cs : Fixed ValidateTypeDerivationOK (complex)
	  that missed primitive simple types as base types (BaseXmlSchemaType
	  is not working fine; it is the actual culprit to be fixed).
	* XmlSchemaUtil.cs,
	  XmlSchemaAttributeGroup.cs,
	  XmlSchemaComplexType.cs : 
	  fixed XmlSchemaUtil.ValidateAttributesResolved(). If there is a 
	  corresponding attribute definition in the derived extension type,
	  then it should be allowed.

2005-08-06  Gert Driesen <drieseng@users.souceforge.net>

	* XmlSchema.cs: XmlElementAttribute, XmlAttributeAttribute and
	DefaultValueAttribute corrections to match MS.NET.
	* XmlSchemaAll.cs:
	* XmlSchemaAnnotated.cs: 
	* XmlSchemaAnnotation.cs:
	* XmlSchemaAppInfo.cs:
	* XmlSchemaAttribute.cs:
	* XmlSchemaAttributeGroup.cs:
	* XmlSchemaChoice.cs:
	* XmlSchemaComplexContent.cs:
	* XmlSchemaComplexContentExtension.cs:
	* XmlSchemaComplexContentRestriction.cs:
	* XmlSchemaComplexType.cs:
	* XmlSchemaDocumentation.cs:
	* XmlSchemaElement.cs:
	* XmlSchemaExternal.cs:
	* XmlSchemaGroup.cs:
	* XmlSchemaIdentityConstraint.cs:
	* XmlSchemaImport.cs:
	* XmlSchemaInclude.cs:
	* XmlSchemaRedefine.cs:
	* XmlSchemaSequence.cs:
	* XmlSchemaSimpleContent.cs:
	* XmlSchemaSimpleContentExtension.cs:
	* XmlSchemaSimpleContentRestriction.cs:
	* XmlSchemaSimpleType.cs:
	* XmlSchemaSimpleTypeList.cs:
	* XmlSchemaSimpleTypeRestriction.cs:
	* XmlSchemaSimpleTypeUnion.cs:
	* XmlSchemaXPath.cs:

2005-08-03  Gert Driesen <drieseng@users.sourceforge.net>

	* XmlSchemaInference.cs: Is sealed in Beta 2.
	* XmlSchemaInfo.cs: Added ContentType property.
	* XmlSchemaObjectEnumerator.cs: No longer sealed in Beta 2.
	* XmlSchemaSet.cs: No longer sealed in Beta 2. XmlResolver property
	is now CLSCompliant.

2005-07-04  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatype.cs, XmlSchemaParticle.cs, XmlSchemaContent.cs,
	  XmlSchemaFacet.cs : eliminated internal abstract members.

2005-06-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCollection.cs, XmlSchemaCollectionEnumerator.cs :
	  GetEnumerator() was not in sync with the internal change to
	  XmlSchemaSet. Fixed bug #75126. Patch by Crestez Leonard.

2005-06-07  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationFlags.cs : it is NET_2_0.

2005-05-23  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaInference.cs : For each resulting schema, it has to emit
	  xs:import when it has a reference to external schema components.

2005-05-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaInference.cs : When doing lax inference, set minOccurs="0"
	  of those elements in a sequence. Fixed misspellings.

2005-05-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlAtomicValue.cs : moved from XPathAtomicValue, removed some stuff.

2005-05-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaType.cs, XmlSchemaSimpleType.cs : removed ValueConverter.
	* XmlSchemaDatatype.cs,
	  XmlSchemaComplexType.cs : removed removed member in .net 2.0 beta2.

2005-04-12  Lluis Sanchez Gual  <lluis@novell.com>

	* XmlSchemaParticle.cs: Set MaxOccurs to unbounded when set to
	decimal.MaxValue.

2005-03-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaChoice.cs : commented out warned code.
	* XmlSchemaCollection.cs : removed warned code (now it all depends on
	  XmlSchemaSet).

2005-01-25  Martin Baulig  <martin@ximian.com>

	* XmlSchemaSet.cs (XmlSchemaSet.XmlResolver): Mark this as
	not CLS-compliant to avoid a CS3025.

	* XmlSchemaType.cs (XmlSchemaType.ValueConverter): Mark this as
	not CLS-compliant to avoid a CS3025.

2005-01-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : XmlSchema.Write() should not write duplicating
	  top-level entry in XmlSerializerNamespaces and XmlNamespaceManager.
	  This fixes some DataSet bugs.

2005-01-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : in case of open start tag,
	  ValidateEndElement() calls ValidateEndOfAttributes().

2005-01-17  Atsushi Enomoto <atsushi@ximian.com>

	* xmlschemagen.config,
	  XmlSchemaSerializer.cs : replacement of CustomSerializer.cs which was
	  based on genxs but manually modified.
	* CustomSerializer.cs : removed.

2005-01-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Write() should handle carefully output
	  namespace/prefix mapping.

2004-12-26  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : added Remove(), RemoveRecursive(), Reprocess().
	* XmlValueConverter.cs : implemented almost all the feature.
	* XmlSchemaSimpleType.cs : fixed some built-in types.
	* XmlSchemaType.cs : added ValueConverter property.

2004-12-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : XmlResolver.ResolveUri() may return null.

2004-12-16  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : ValidateElement() was not LAMESPEC. Added
	  some comments on ValidateEndElement().

2004-12-16  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : fill schemaInfo as long as possible right now.

2004-12-16  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaInfo.cs : added internal copy constructor.

2004-12-16  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : implemented GetExpectedParticles() and
	  SkipToEndElement ().

2004-12-15  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : set default resolver. Clear components before
	  recompilation.
	* XmlSchemaValidator.cs :
	  SourceUri is System.Uri.
	  GetUnspecifiedDefaultAttributes() is allowed only when it is inside
	  start tag.
	  Added AddSchema().
	  Added duplicate attribute check.
	  Added ValidateElement() that takes xsi:* parameters.
	  (http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackId=7fc38ea1-c306-4fb7-8631-0e174b0ff3c6)
	  HandleXsiNil() now just takes string parameter.

2004-12-14  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidator.cs : implemented basic validation feature.

2004-12-14  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaUtil.cs : added FindAttributeDeclaration() and
	  AttributeWildcardItemValid().

2004-12-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaUtil.cs : added static ReadTypedValie().
	* XmlSchemaInference.cs : compile at the end of inference.

2004-12-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlValueGetter.cs,
	  XmlSchemaValidationFlags.cs,
	  XmlSchemaValidator.cs : added.
	* XmlSchemaSet.cs : XmlResolver is now internally gettable.

2004-12-04  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaObject.cs : added Parent.
	* XmlSchema.cs,
	  XmlSchemaElement.cs,
	  XmlSchemaAttribute.cs,
	  XmlSchemaAttributeGroup.cs,
	  XmlSchemaGroup.cs,
	  XmlSchemaComplexType.cs,
	  XmlSchemaSequence.cs,
	  XmlSchemaChoice.cs,
	  XmlSchemaAll.cs,
	  XmlSchemaIdentityConstraint.cs,
	  XmlSchemaComplexContent.cs,
	  XmlSchemaSimpleContent.cs,
	  XmlSchemaSimpleContentExtension.cs,
	  XmlSchemaSimpleContentRestriction.cs,
	  XmlSchemaComplexContentExtension.cs,
	  XmlSchemaComplexContentRestriction.cs,
	  XmlSchemaSimpleType.cs,
	  XmlSchemaSimpleTypeRestriction.cs,
	  XmlSchemaSimpleTypeList.cs,
	  XmlSchemaSimpleTypeUnion.cs : Fill Parent on Compilation.

	* XmlSchemaException.cs,
	  XmlSchemaInferenceException.cs,
	  XmlSchemaValidationException.cs : added SecurityPermissionAttribute.

2004-12-04  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaComplexType.cs : simplify Compile().

2004-11-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaElement.cs,
	  XmlSchemaComplexType.cs,
	  XmlSchema.cs,
	  XmlSchemaChoice.cs,
	  XmlSchemaSimpleType.cs,
	  XmlSchemaObjectTable.cs,
	  XmlSchemaObjectCollection.cs,
	  XmlSchemaCollection.cs,
	  : All changes are just for warning removal.

2004-11-24  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : added ParseValue() override.
	* XmlSchemaSimpleTypeList.cs,
	  XmlSchemaSimpleTypeUnion.cs : #if NET_2_0 some private fields,
	  just for eliminating warnings :(
	* XmlSchemaSet.cs : commented some fields currently not in use.
	  It is for eliminating warnings.
	* XmlSchemaSimpleTypeRestriction.cs : removed exception field name
	  to eliminate warning.
	* XmlSchemaException.cs : hasLineInfo is also runtime serialized now.

2004-11-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaException.cs : Message is only 1.x (not 2.0).
	* XmlSchemaInference.cs : use more static readonly QName fields.
	  Type merge inference now traverses every base types.
	* XmlSchemaInfo.cs : added new file.

2004-11-18  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaException.cs : added .ctor(string).
	* XmlSchemaInferenceException.cs : use base.ctor(string).
	* XmlSchemaValidationException.cs : It is 2.0 class. Added some .ctor()

2004-11-18  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCollection.cs : obsolete.
	* XmlSchemaInference.cs :
	  Fixed typo in enum. It is still MonoTODO. Reformatted code a bit.

2004-11-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : don't set TargetNamespace = "".

2004-11-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaInferenceDesign.txt : added (incomplete though.)

2004-11-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaValidationException.cs : added.

2004-11-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaInference.cs,
	  XmlSchemaInferenceException.cs : added.

2004-11-17  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaException.cs : removed get_Message in 2.0 profile (all done
	  in .ctor()).

2004-11-08  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : use NameTable when creating XmlTextReader.

2004-11-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSet.cs : reduced extraneous XmlSchemaObjectTable creation.

2004-11-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeList.cs,
	  XmlSchemaSimpleTypeUnion.cs : XmlIgnore.

2004-10-29  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaAttribute.cs : AttributeSchemaType could be determined on
	  compilation time. AttributeType is obsolete.
	* XmlSchemaElement.cs : ditto for ElementSchemaType and ElementType.

2004-10-29  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaComplexType.cs : added LocalElements, with the description
	  why it can never be correct implementation.
	* XmlSchemaUtil.cs : use IHasXmlParserContext.

2004-10-29  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeUnion.cs : Added 2.0 BaseMemberTypes property 
	  (this property name is also ambiguous and should be changed too.)

2004-10-29  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeList.cs : Added 2.0 BaseItemType property (BTW
	  this property name is really ambiguous and should be changed.)

2004-10-28  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaAttributeGroup.cs, XmlSchemaGroup.cs :
	  in 2.0, QualifiedName properties are public.
	* XmlSchemaType.cs : TypeCode is [XmlIgnore] (anyways ignored though).

2004-10-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaType.cs : Implemented GetBuiltInComplexType(XmlTypeCode).

2004-09-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : handle xdt:* types in FromName().

2004-09-16  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs, SchemaDataValueType.cs :
	  ParseValue() for xs:AnyURI should return System.Uri. MS.NET returns
	  XmlSchemaUri, but it is derived from System.Uri, while ours was not.

2004-09-07  Atsushi Enomoto <atsushi@ximian.com>

	* IXmlType.cs : deprecated in .NET 2.0.

2004-09-03  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : When schema inclusion results in a recursion, just
	  skip recursed schema.
	* BUGS-MS.txt : added another entry. Reflected response from Microsoft.

2004-08-30  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaType.cs : quick build fix.

2004-08-30  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : Removed FromName(localName) that cannot
	  handle xdt:* types.
	* XmlSchemaType.cs : added internal GetBuiltInType() methods that
	  mix GetBuiltInSimpleType() and GetBuiltInComplexType().

2004-08-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleType.cs : Fill list types such as xs:IDREFS.
	* XmlSchemaType.cs :
	  Fixed TypeCode more (broken on predefined list types and xs:anyType).

2004-08-25  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaType.cs :
	  anyType was anonymous, thus GetBuiltInComplexType() didn't work.

2004-08-24  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaType.cs : return XmlTypeCode.AnyAtomicType for
	  anySimpleType's TypeCode property.

2004-08-10  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Replace XmlSchemaCollection with XmlSchemaSet that
	  used to maintain compiled schema state.
	  Simplified code a bit (Include processing).
	  Set IsCompiled = true only when successfully compiled.
	* XmlSchemaCollection.cs : Now it totally delegates its processing
	  to XmlSchemaSet. Removed unused methods.
	* XmlSchemaElement.cs : Added post-compiled information initializer
	  method, and call it before (re)Compile().
	* XmlSchemaSet.cs :
	  - Replaced internal store from Dictionary to List, since schema
	    resources for one target namespace can be more than one (that's why
	  - Schemas(string targetNamespace) returns ICollection).
	  - Now global schemaset members are added per schema addition (it is
	    more MS compatible than before).
	  - Use GetSafeNs() to do targetNamespace comparison correctly.

	  XmlSchemaSet looks still unstable, so it will be changed again.

	* XmlSchemaSimpleTypeRestriction.cs,
	  XmlSchemaSimpleTypeUnion.cs,
	* XmlSchemaUtil.cs : Consider xdt namespace.

2004-08-10  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCollection.cs : replaced CRLF to LF (they were mixed).

2004-08-10  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : code reformatting. convert CRLF to LF.
	  Use String.Format() instead of +. Removed commented code.

2004-07-28  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs : use XmlQualifiedName.Parse().

2004-07-23  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Added internal XdtNamespace constant. don't fill
	  schemaset compoenents here.
	* XmlSchemaAttribute.cs : Implemented AttributeSchemaType.
	* XmlSchemaElement.cs : Implemented ElementSchemaType.
	* XmlSchemaSimpleType.cs : Added predefined simple types
	* XmlSchemaType.cs : Implemented GetBuiltInSimpleType().
	* XmlSchemaDatatype.cs : Allow Xdt namespaces too (not completed;
	  quick fix for GetBuiltInSimpleType()).

2004-07-21  Atsushi Enomoto <atsushi@ximian.com>

	* BUGS-MS.txt : updated including answer excerpts from MS team.
	* BUGS.txt : it turned out that some bugs I wrote as "MS bugs" are 
	  actually my bug. Noted them.
	* BuiltInDatatype.cs :
	  Commented out extraneous [CLSCompliant].
	  Switch ParseValue() argument as IXmlNamespaceResolver for 2.0, and
	  XmlNamespaceManager for 1.x.
	  Added TypeCode overrides.
	* XmlSchemaDatatype.cs : Added 2.0 members.
	  Switch IXmlNamespaceResolver and XmlNamespaceManager.
	* XmlSchemaType.cs : Added some NET_2_0 members. removed old 1.2 stuff.

2004-07-13  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaBuiltInType.cs, XmlSchemaValidity.cs, XmlTypeCode.cs
	  : fixed annoying enum errors.
	* XmlSchemaCollection.cs : completely delegate to XmlSchemaSet.
	* XmlSchemaSet.cs : sealed classes. Use ListDictionary (avoid annoying
	  order preservation matter). NameTable null check for .ctor().
	  Fill GlobalAttributes, GlobalElements, GlobalTypes correctly.
	  Add(string, XmlReader) checks namespace conflicts, while
	  Add(XmlSchema) does not. Fixed Schemas() return type.

2004-07-11  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatypeVariety.cs : Fixed class name typo.
	* XmlValueConverter.cs : fixed return types.

2004-06-18  Atsushi Enomoto <atsushi@ximian.com>

	* CustomSerializer.cs, XmlSchemaException.cs,
	  XmlSchemaParticle.cs, XmlSchemaSimpleTypeRestriction.cs
	  : Globalization.

2004-06-10  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaFacet.cs : Fixed internal protected --> internal.

2004-06-06  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Make sure to close url-based XmlTextReader.

2004-06-03  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs,
	  XmlSchemaFacet.cs,
	  XmlSchemaSimpleTypeRestriction.cs,
	  XmlSchemaXPath.cs : modified some enum const to static readonly
	  (.NET 1.0 does not allow it). Use safe overload of LookupNamespace().

2004-05-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaDatatypeVariety.cs,
	  XmlSchemaValidity.cs : they are NET_2_0 enums.

2004-05-22  Atsushi Enomoto <atsushi@ximian.com>

	* XmlValueConverter.cs : missed NET_2_0.

2004-05-22  Atsushi Enomoto <atsushi@ximian.com>

	* IXmlSchemaInfo.cs,
	  IXmlType.cs,
	  XmlSchemaDatatypeVariety.cs,
	  XmlSchemaValidity.cs,
	  XmlTypeCode.cs,
	  XmlValueConverter.cs : added.

	* XmlSchemaInfo.cs : removed (.NET 1.2).

	* XmlSchemaBuiltInType.cs,
	  XmlSchemaSet.cs : updated.

2004-05-19  Atsushi Enomoto <atsushi@ximian.com>

	* CustomSerializer.cs : Added custom serializer for XmlSchema, that is
	  generated by SerializationCodeGenerator and edited a bit.
	* XmlSchema.cs : Use XmlSchemaSerializationWriter.

2004-05-13  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Removed FIXME. No PSVI required.
	* XmlSchemaAll.cs : Removed FIXME. It was not done.
	* XmlSchemaAttributeGroupRef.cs : Removed FIXME. It can be annotated.
	* XmlSchemaChoice.cs : not FIXME but LAMESPEC.
	* XmlSchemaSimpleTypeRestriction.cs : Added check for non 
	  XmlSchemaFacet items on Compile(). Thus removed FIXME.
	* XmlSchemaUtil.cs : Fixed SplitList to handle sequential spaces.
	  Thus removed FIXME.
	* XmlSchemaObjectTable. cs: modified to use HybridDictionary (mostly
	  for avoiding iterator order difference).

2004-05-13  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : Removed MonoTODO. done.

2004-05-12  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs : made classes/enums internal.

2004-05-05  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs : trivia fix

2004-05-05  Atsushi Enomoto <atsushi@ximian.com>

	* BuiltInDatatype.cs : added BUGGY_MS_COMPLIANT condition and that
	  handles ms-compatible properties.
	* XmlSchemaComplexType.cs : ditto for ContentTypeParticle of xs:anyType.
	  Make sure ContentType for xs:anyType is Mixed.
	* XmlSchemaUtil.cs : ditto for <xs:attribute use="prohibited" ..>

2004-05-05  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchema.cs : Write() handles schema namespace for xmlserializer
	  (it does not look to be handled inside xmlserializer).

2004-04-27  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaComplexType.cs : Set basetype as ur-type for such complex
	  type that has an immediate Particle (W3C specified as restriction
	  of ur-type).

2004-04-27  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : optimized Normalize() not to create
	  extraneous string objects.

2004-03-15  Atsushi Enomoto <atsushi@ximian.com>

	* reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to
	  reject incorrect schemas ;-)

2004-03-04  Alon Gazit <along@mainsoft.com>

	* XmlSchemaUnique.cs : Changed Read implementation.
	Currently can read "field" element before "selector" element (like MS).  

2004-02-26  Atsushi Enomoto <atsushi@ximian.com>

	* XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized
	  (as always synchronized).

2004-02-16  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014.
	* BUGS.txt : FYI.

2004-02-03  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify
	  pattern string as "^str$" and convert WXS specific char classes into
	  .NET regexp patterns.

2004-01-21  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was
	  incorrectly treated.

2004-01-20  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <dave-mono@earth.li>

       * BuiltInDatatype.cs: added guard to stop index out of range error for
         invalid Base64 characters.

2004-01-15  Jackson Harper <jackson@ximian.com>

	* XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes
	build).
	
2004-01-15  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <dave-mono@earth.li>

        * 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 <dave-mono@earth.li>

        * 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 <atsushi@ximian.com>

	* XmlSchemaComplexType.cs : forgot to commit ;)
	* XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false
	  for comparison between ID and IDREF.

2004-01-14  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <jackson@ximian.com>

	* XmlSchemaComplexType.cs: Comment out line that was breaking the build.
	
2004-01-13  Atsushi Enomoto <atsushi@ximian.com>

	* 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 <atsushi@ximian.com>

	* XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs :
	  Invalid attribute should raise an error, not a warning.

2004-01-13  Atsushi Enomoto <atsushi@ximian.com>

	* 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  <atsushi@ximian.com>

	* BuiltInDatatype.cs : internal type should not appear in protected
	  members' signature.

2004-01-11  David Sheldon <dave-mono@earth.li>

  * 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  <atsushi@ximian.com>

	* 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  <atsushi@ximian.com>

	* 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  <atsushi@ximian.com>

	* 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  <atsushi@ximian.com>

	* XmlSchemaElement.cs : Fixed incorrect unique particle attribution
	  check on ##other and target namespace element.

2004-01-08  Nick Drochak <ndrochak@ieee.org>

	* XmlSchemaSimpleType.cs: Needed a 'new' on the property
	* XmlSchemaXPath.cs: Removed unreachable code.
	
2004-01-03  Atsushi Enomoto  <atsushi@ximian.com>

	* XmlSchemaDatatype.cs : trivial allocation fix.

2003-12-17  David Sheldon  <dave-mono@earth.li>

  * 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  <ginga@kit.hi-ho.ne.jp>

	* BuiltInDatatype.cs : anySimpleType should allow facets.

2003-12-14  David Sheldon <dave-mono@earth.li>
  
  * 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 <dave-mono@earth.li>

  * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths 
    specified are integers. Also made some error messages more useful.

2003-12-08  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
	  if max/min length range is valid.

2003-12-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
	  (for convenience of ObjectSpaces stubbing).

2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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 <lluis@ximian.com>

	* XmlSchema.cs: If the schema element is an empty element, skip it after
	  reading the attributes.

2003-10-09  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.

2003-10-01  Lluis Sanchez Gual <lluis@ximian.com>

	* XmlSchemaUtil.cs: arrayType attribute needs special handling.

2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchema.cs : Forgot to update with previous files.

2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* XmlSchema.cs : Read() should keep current position of XmlReader if
	  it was already positioned to 'schema' element.

2003-09-30  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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 <lluis@ximian.com>

	* XmlSchema.cs: Do not add schema namespace declaration if it is already
	  declared.

2003-08-28  Lluis Sanchez Gual <lluis@ximian.com>

	* BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.

2003-08-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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 <lluis@ximian.com>

	* BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
	  XsdDateTime, XsdDate, XsdTime.

2003-08-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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 <lluis@ximian.com>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
	* XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
	  should be internal.

2003-07-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().

2003-07-21  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchema.cs, XmlSchemaElement.cs :
	  added internal MissingElementTypeRefs and support for refering 
	  element's elementType.

2003-07-20  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* 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  <ginga@kit.hi-ho.ne.jp>

	* BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
	  Added decimal and its derived datatypes.
	  Added abstract XsdAnySimpleType.

2003-07-15  Lluis Sanchez Gual <lluis@ximian.com>

	* BuiltInDatatype.cs,
	  XmlSchemaDatatype.cs : added unsignedByte type support.

2003-07-14  Lluis Sanchez Gual <lluis@ximian.com>

	* XmlSchemaDatatype.cs: Fixed compiler warning.

2003-07-12  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* BuiltInDatatype.cs,
	  XmlSchemaDatatype.cs : added NOTATION type support.

2003-07-06  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* added BuiltInDatatype.cs.
	* XmlSchemaDatatype.cs : [GetType()] added support for some 
	  built-in datatypes.

2003-05-05  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().

2003-02-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>

	* XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
		and <documentation> elements. (patch by Peter Pentchev)
	* XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject 
		instead of XmlSchema. (patch by Peter Pentchev)

2002-07-23  Duncan Mak  <duncan@ximian.com>

	* XmlSchemaException.cs: Partiall implement the ISerializable
	methods. It's not clear now SourceSchemaObject should be deserialized.

2002-07-22  Tim Coleman  <tim@timcoleman.com>
	* XmlSchema.cs: Removed isCompiled which is defined as internal
		in XmlSchemaObject.

2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
	
	* XmlSchema: Started work on Validate methods

2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
	* 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 <adwiv@yahoo.com>
	* General: Fixed a few more Bugs

2002-06-10  Dwivedi, Ajay kumar <adwiv@yahoo.com>
	* 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 <adwiv@yahoo.com>
	* 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 <adwiv@yahoo.com>
	* 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  <duncan@ximian.com>

	* ValidationHandler.cs: New file.

	* XmlSchemaInfo.cs: New file.

	* *.cs: More updates from Ajay.

2002-03-27  Duncan Mak  <duncan@ximian.com>

	* *.cs: Updates from Ajay Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>.
