New test.
[mono.git] / mcs / class / System.XML / System.Xml.Schema / ChangeLog
1 2006-10-27  Atsushi Enomoto <atsushi@ximian.com>
2
3         * XmlSchemaValidator.cs : it must also be fixed for method signature
4           change.
5         * XmlSchemaSimpleTypeRestriction.cs : on .NET 2.0, use 
6           IXmlNamespaceResolver for XmlSchemaValidator.
7
8 2006-10-27  Atsushi Enomoto <atsushi@ximian.com>
9
10         * XmlSchemaSimpleTypeRestriction.cs : for facet validation, it should
11           use namespacemanager. Though the change is not perfect, thus I
12           disable this change for now.
13
14 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
15
16         * XmlSchema.cs, XmlSchemaSimpleTypeList.cs,
17           XmlSchemaSimpleContentRestriction.cs, XmlSchemaUtil.cs,
18           XmlSchemaSimpleContentExtension.cs, XmlSchemaElement.cs,
19           XmlSchemaComplexType.cs, XmlSchemaSimpleTypeRestriction.cs,
20           XmlSchemaSimpleTypeUnion.cs, XmlSchemaAttribute.cs :
21           Finally fixed bugs around cross-referencing importing schema 
22           components (namely, #77489 and #78220) by resolving referenced
23           components via new internal Find[Element|Attribute|AttributeGroup|
24           SchemaType] methods in XmlSchema.
25
26 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
27
28         * XmlSchema.cs : set ValidationEventHandler to XmlSchemaSet only
29           when the argument event handler is not null.
30           Validate() is internal to open it to XmlSchemaSet.
31         * XmlSchemaSet.cs : removed extraneous "handler" field and method
32           "OnValidationError". Now ValidationEventHandler just works since
33           we don't have to care about XmlSchemaCollection's event (it just
34           reuses XmlSchemaSet's event now).
35           Split Compile() process to collect components first, and to
36           validate next.
37
38 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
39
40         * XmlSchema.cs : compiling and validating external components in
41           prior to direct components in a schema does block my refactoring.
42           Removed extraneous call to XmlSchemaSet.Add().
43
44 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
45
46         * XmlSchema.cs, XmlSchemaSet.cs : some minor refactoring to make
47           Compile() simple two phase (i.e. CompileSubset() and Validate()).
48
49 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
50
51         * XmlSchemaException.cs : oops, .ctor(string) was only for 2.0.
52
53 2006-07-27  Atsushi Enomoto <atsushi@ximian.com>
54
55         * XmlSchemaCollection.cs :
56           eliminated call to XmlSchema.CompileSubset(). Now XmlSchemaSet is
57           the only starter of the compilation.
58         * XmlSchemaSet.cs : added targetNamespace check.
59
60 2006-07-26  Atsushi Enomoto <atsushi@ximian.com>
61
62         Refactoring compilation to make Compile() portable to
63         XmlSchemaSet.Compile() and fix multi-schema bugs (not done yet)
64
65         * XmlSchema.cs : 
66           Removed "root schema" concept from Compile().
67           Since nested inclusion does not result in an error, the role of
68           schemaLocationStack is identical to handledUris, thus removed it.
69           The handledUris does not have to be a field.
70           Moved NamedIdentities and IDCollections to XmlSchemaSet.
71           Renamed a Compile() which is called from XmlSchemaCollection and
72           XmlSchemaSet as CompileSubset(). Renamed private Compile() as
73           DoCompile().
74           public Compile() now internally creates a new XmlSchemaSet and
75           compiles the set.
76         * XmlSchemaCollection.cs : now it hooks its schemaSet's validation
77           event handler and thus XmlSchemaSet does not need to check this
78           collection's event handler by itself.
79           XmlSchema.Compile() -> XmlSchema.CompileSubset().
80         * XmlSchemaSet.cs :
81           Removed SchemaCollection which became unneccessary.
82           Added NamedIdentities and IDCollection.
83           XmlSchema.Compile() -> XmlSchema.CompileSubset().
84         * XmlSchemaAttributeGroupRef.cs, XmlSchemaXPath.cs
85           XmlSchemaSimpleTypeList.cs, XmlSchemaComplexContentRestriction.cs,
86           XmlSchemaGroup.cs, XmlSchemaComplexContentExtension.cs,
87           XmlSchemaSequence.cs, XmlSchemaSimpleContentRestriction.cs,
88           XmlSchemaSimpleContentExtension.cs, XmlSchemaAny.cs,
89           XmlSchemaElement.cs, XmlSchemaNotation.cs, XmlSchemaAll.cs,
90           XmlSchemaComplexType.cs, XmlSchemaAnnotation.cs,
91           XmlSchemaAttributeGroup.cs, XmlSchemaSimpleTypeRestriction.cs,
92           XmlSchemaSimpleContent.cs, XmlSchemaGroupRef.cs,
93           XmlSchemaChoice.cs, XmlSchemaSimpleType.cs,
94           XmlSchemaIdentityConstraint.cs, XmlSchemaSimpleTypeUnion.cs,
95           XmlSchemaAnyAttribute.cs, XmlSchemaComplexContent.cs,
96           XmlSchemaAttribute.cs, XmlSchemaObject.cs :
97           removed XmlSchemaObject.IsCompiled(). Check compilation state by
98           comparing compilation ID directly.
99
100 2006-07-25  Atsushi Enomoto <atsushi@ximian.com>
101
102         * XmlSchema.cs : mutual schema import was failing because the
103           compiling schema's SourceUri was not enlisted for nest check.
104
105 2006-03-02  Atsushi Enomoto <atsushi@ximian.com>
106
107         * XmlSchema.cs : seems like there is XmlSchemaExternal.Schema property
108           that is filled after Compile(). Fixed bug #77687.
109
110 2006-03-01  Atsushi Enomoto <atsushi@ximian.com>
111
112         * XmlSchemaAppInfo.cs, XmlSchemaDocumentation.cs : seems like MS
113           implementation fills empty node set for empty xs:appinfo and
114           xs:documentation and waste memory. Fixed bug #77685.
115
116 2006-02-28  Gert Driesen  <drieseng@users.sourceforge.net>
117
118         * XmlSchema.cs: Do not define namespace for zero-length TargetNamespace
119         and report XmlSchemaException when compiling XmlSchema with
120         zero-length TargetNamespace.
121
122 2006-02-01  Atsushi Enomoto <atsushi@ximian.com>
123
124         * BuiltInDatatype.cs : anyURI could be such relative path that
125           contains ':' in the middle. It also affects on relaxng validation.
126
127 2006-01-25  Atsushi Enomoto <atsushi@ximian.com>
128
129         * XmlSchemaValidationException.cs : fixed .ctor() signatures.
130
131 2006-01-11  Atsushi Enomoto <atsushi@ximian.com>
132
133         * XmlSchemaAttribute.cs, XmlSchemaElement.cs : AttributeSchemaType
134           and ElementSchemaType were not working fine for anySimpleType.
135         * XmlSchemaValidator.cs : When actual schema type was complex,
136           schema types was not filled correctly. Modified some extra comments.
137         * XmlSchemaSet.cs, XmlSchemaType.cs : removed extra MonoTODOs.
138
139 2006-01-10  Atsushi Enomoto <atsushi@ximian.com>
140
141         * XmlAtomicValue.cs : it won't be implemented since there is no way
142           to test it inside sys.xml. Thus remarked MonoTODO.
143         * XmlSchemaDatatype.cs : implemented IsDerivedFrom(), which is however
144           mostly useless.
145
146 2006-01-06  Atsushi Enomoto <atsushi@ximian.com>
147
148         * XmlSchemaSet.cs : Add() rollbacks IsCompiled to false.
149           Global components are not added when Add() is called.
150
151 2006-01-06  Atsushi Enomoto <atsushi@ximian.com>
152
153         * XmlSchemaSet.cs : reverted previous fix; it broke inclusions.
154
155 2006-01-06  Atsushi Enomoto <atsushi@ximian.com>
156
157         * XmlSchemaSet.cs : Add() needs (consistent) namespace duplicate check.
158
159 2006-01-06  Atsushi Enomoto <atsushi@ximian.com>
160
161         * XmlSchemaSimpleTypeRestriction.cs : maxLength and minLength were
162           likely to be ignored in ValidateNonListValueWithFacets().
163         * XmlSchemaValidator.cs : Don't use normalized string value as the
164           input to AssessStringValid().
165
166 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
167
168         * XmlSchemaSet.cs :
169           Turned out that it also has set_CompilationSettings.
170         * XmlSchemaComplexType. : thus CompilationSettings is nullable, we
171           have to check its existence.
172
173 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
174
175         * XmlSchema.cs : Compile() are obsoleted in 2.0.
176
177 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
178
179         * XmlSchemaDatatype.cs : TypeCode is virtual in 2.0 RTM.
180
181 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
182
183         * XmlSchemaValidationException.cs :
184           oops, there is SourceObject other than SourceSchemaObject.
185         * XmlSchemaCompilationSettings.cs : oops, actually XmlSchemaSet is
186           also used in 1.x profile (internally)
187         * XmlSchemaSimpleTypeList.cs : added set_BaseItemType bogus (just to
188           fill API compatibility).
189
190 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
191
192         * XmlSchemaCompilationSettings.cs : new file.
193         * XmlSchemaSet.cs : added CompilationSettings property.
194         * XmlSchemaComplexType.cs : support for EnableUpaCheck.
195
196 2005-12-08  Atsushi Enomoto <atsushi@ximian.com>
197
198         * XmlSchemaValidationException.cs : added SetSourceObject() which
199           is just for API compat (it does nothing on MS.NET).
200           Removed #if NET_2_0 inside #if NET_2_0.
201
202 2005-12-01  Atsushi Enomoto <atsushi@ximian.com>
203
204         * XmlSchemaSequence.cs : when a subcomponent is not optional
205           (minOccurs!=0) then it should clean previous components up.
206           Really fixed bug #76865.
207
208 2005-12-01  Atsushi Enomoto <atsushi@ximian.com>
209
210         * XmlSchemaElement.cs : Fixed ambiguity detection logic so that
211           chameleon ##other (xs:any) does not block other "absent"
212           (empty targetNamespace) element. Fixed bug #76865.
213
214 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
215
216         * XmlSchemaValidator.cs : added missing ValidateWhitespace and
217           ValidateText, though the latter I think is LAMESPEC.
218
219 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
220
221         * XmlSchemaValidationFlags.cs : updated to match 2.0 RTM.
222         * XmlSchemaValidator.cs : related fix.
223
224 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
225
226         * XmlValueGetter.cs, XmlSchemaValidator.cs, XmlSchemaException.cs,
227           XmlSchemaAttribute.cs : Updated API to match 2.0 RTM. Most of the
228           changes are related to XmlValueGetter change.
229
230 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
231
232         * XmlSchemaValidator.cs : sealed.
233         * ValidationEventArgs.cs : not sealed in 2.0.
234         * XmlSchemaCollection.cs : added private ICollection.Count (to erase
235           IsVirtual difference).
236
237 2005-10-17  Lluis Sanchez Gual  <lluis@novell.com>
238
239         * XmlSchemaSerializer.cs: Arrays of XmlNode don't
240         need to be all XmlElments. Fix by Atsushi for bug #76288.
241
242 2005-09-30  Atsushi Enomoto <atsushi@ximian.com>
243
244         * XmlSchemaUtil.cs: (GetParserContext) if reader is not internal 
245           IHasXmlParserContext, silently return null. This is for NVDL xsd
246           support.
247
248 2005-09-30  Atsushi Enomoto <atsushi@ximian.com>
249
250         * XmlSchema.cs : XmlReader position after Read() is the end of the
251           schema element.
252
253 2005-09-25  Atsushi Enomoto <atsushi@ximian.com>
254
255         * XmlSchemaBuiltInType.cs : removed obsolete beta file.
256
257 2005-09-25  Atsushi Enomoto <atsushi@ximian.com>
258
259         * XmlSchemaValidationFlags.cs, XmlSchemaValidator.cs :
260           NET_2_0 API updates.
261
262 2005-08-31  Sebastien Pouliot  <sebastien@ximian.com>
263
264         * XmlSchemaException.cs: Added a Demand for SerializationFormatter
265         on GetObjectData method.
266
267 2005-08-25  Atsushi Enomoto <atsushi@ximian.com>
268
269         * XmlSchemaSimpleTypeRestriction.cs : normalize EOL.
270           Remove non-ASCII letters.
271
272 2005-08-08  Atsushi Enomoto <atsushi@ximian.com>
273
274         * XmlSchemaComplexType.cs : Fixed ValidateTypeDerivationOK (complex)
275           that missed primitive simple types as base types (BaseXmlSchemaType
276           is not working fine; it is the actual culprit to be fixed).
277         * XmlSchemaUtil.cs,
278           XmlSchemaAttributeGroup.cs,
279           XmlSchemaComplexType.cs : 
280           fixed XmlSchemaUtil.ValidateAttributesResolved(). If there is a 
281           corresponding attribute definition in the derived extension type,
282           then it should be allowed.
283
284 2005-08-06  Gert Driesen <drieseng@users.souceforge.net>
285
286         * XmlSchema.cs: XmlElementAttribute, XmlAttributeAttribute and
287         DefaultValueAttribute corrections to match MS.NET.
288         * XmlSchemaAll.cs:
289         * XmlSchemaAnnotated.cs: 
290         * XmlSchemaAnnotation.cs:
291         * XmlSchemaAppInfo.cs:
292         * XmlSchemaAttribute.cs:
293         * XmlSchemaAttributeGroup.cs:
294         * XmlSchemaChoice.cs:
295         * XmlSchemaComplexContent.cs:
296         * XmlSchemaComplexContentExtension.cs:
297         * XmlSchemaComplexContentRestriction.cs:
298         * XmlSchemaComplexType.cs:
299         * XmlSchemaDocumentation.cs:
300         * XmlSchemaElement.cs:
301         * XmlSchemaExternal.cs:
302         * XmlSchemaGroup.cs:
303         * XmlSchemaIdentityConstraint.cs:
304         * XmlSchemaImport.cs:
305         * XmlSchemaInclude.cs:
306         * XmlSchemaRedefine.cs:
307         * XmlSchemaSequence.cs:
308         * XmlSchemaSimpleContent.cs:
309         * XmlSchemaSimpleContentExtension.cs:
310         * XmlSchemaSimpleContentRestriction.cs:
311         * XmlSchemaSimpleType.cs:
312         * XmlSchemaSimpleTypeList.cs:
313         * XmlSchemaSimpleTypeRestriction.cs:
314         * XmlSchemaSimpleTypeUnion.cs:
315         * XmlSchemaXPath.cs:
316
317 2005-08-03  Gert Driesen <drieseng@users.sourceforge.net>
318
319         * XmlSchemaInference.cs: Is sealed in Beta 2.
320         * XmlSchemaInfo.cs: Added ContentType property.
321         * XmlSchemaObjectEnumerator.cs: No longer sealed in Beta 2.
322         * XmlSchemaSet.cs: No longer sealed in Beta 2. XmlResolver property
323         is now CLSCompliant.
324
325 2005-07-04  Atsushi Enomoto <atsushi@ximian.com>
326
327         * XmlSchemaDatatype.cs, XmlSchemaParticle.cs, XmlSchemaContent.cs,
328           XmlSchemaFacet.cs : eliminated internal abstract members.
329
330 2005-06-11  Atsushi Enomoto <atsushi@ximian.com>
331
332         * XmlSchemaCollection.cs, XmlSchemaCollectionEnumerator.cs :
333           GetEnumerator() was not in sync with the internal change to
334           XmlSchemaSet. Fixed bug #75126. Patch by Crestez Leonard.
335
336 2005-06-07  Atsushi Enomoto <atsushi@ximian.com>
337
338         * XmlSchemaValidationFlags.cs : it is NET_2_0.
339
340 2005-05-23  Atsushi Enomoto <atsushi@ximian.com>
341
342         * XmlSchemaInference.cs : For each resulting schema, it has to emit
343           xs:import when it has a reference to external schema components.
344
345 2005-05-22  Atsushi Enomoto <atsushi@ximian.com>
346
347         * XmlSchemaInference.cs : When doing lax inference, set minOccurs="0"
348           of those elements in a sequence. Fixed misspellings.
349
350 2005-05-05  Atsushi Enomoto <atsushi@ximian.com>
351
352         * XmlAtomicValue.cs : moved from XPathAtomicValue, removed some stuff.
353
354 2005-05-05  Atsushi Enomoto <atsushi@ximian.com>
355
356         * XmlSchemaType.cs, XmlSchemaSimpleType.cs : removed ValueConverter.
357         * XmlSchemaDatatype.cs,
358           XmlSchemaComplexType.cs : removed removed member in .net 2.0 beta2.
359
360 2005-04-12  Lluis Sanchez Gual  <lluis@novell.com>
361
362         * XmlSchemaParticle.cs: Set MaxOccurs to unbounded when set to
363         decimal.MaxValue.
364
365 2005-03-22  Atsushi Enomoto <atsushi@ximian.com>
366
367         * XmlSchemaChoice.cs : commented out warned code.
368         * XmlSchemaCollection.cs : removed warned code (now it all depends on
369           XmlSchemaSet).
370
371 2005-01-25  Martin Baulig  <martin@ximian.com>
372
373         * XmlSchemaSet.cs (XmlSchemaSet.XmlResolver): Mark this as
374         not CLS-compliant to avoid a CS3025.
375
376         * XmlSchemaType.cs (XmlSchemaType.ValueConverter): Mark this as
377         not CLS-compliant to avoid a CS3025.
378
379 2005-01-17  Atsushi Enomoto <atsushi@ximian.com>
380
381         * XmlSchema.cs : XmlSchema.Write() should not write duplicating
382           top-level entry in XmlSerializerNamespaces and XmlNamespaceManager.
383           This fixes some DataSet bugs.
384
385 2005-01-17  Atsushi Enomoto <atsushi@ximian.com>
386
387         * XmlSchemaValidator.cs : in case of open start tag,
388           ValidateEndElement() calls ValidateEndOfAttributes().
389
390 2005-01-17  Atsushi Enomoto <atsushi@ximian.com>
391
392         * xmlschemagen.config,
393           XmlSchemaSerializer.cs : replacement of CustomSerializer.cs which was
394           based on genxs but manually modified.
395         * CustomSerializer.cs : removed.
396
397 2005-01-11  Atsushi Enomoto <atsushi@ximian.com>
398
399         * XmlSchema.cs : Write() should handle carefully output
400           namespace/prefix mapping.
401
402 2004-12-26  Atsushi Enomoto <atsushi@ximian.com>
403
404         * XmlSchemaSet.cs : added Remove(), RemoveRecursive(), Reprocess().
405         * XmlValueConverter.cs : implemented almost all the feature.
406         * XmlSchemaSimpleType.cs : fixed some built-in types.
407         * XmlSchemaType.cs : added ValueConverter property.
408
409 2004-12-22  Atsushi Enomoto <atsushi@ximian.com>
410
411         * XmlSchema.cs : XmlResolver.ResolveUri() may return null.
412
413 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
414
415         * XmlSchemaValidator.cs : ValidateElement() was not LAMESPEC. Added
416           some comments on ValidateEndElement().
417
418 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
419
420         * XmlSchemaValidator.cs : fill schemaInfo as long as possible right now.
421
422 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
423
424         * XmlSchemaInfo.cs : added internal copy constructor.
425
426 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
427
428         * XmlSchemaValidator.cs : implemented GetExpectedParticles() and
429           SkipToEndElement ().
430
431 2004-12-15  Atsushi Enomoto <atsushi@ximian.com>
432
433         * XmlSchemaSet.cs : set default resolver. Clear components before
434           recompilation.
435         * XmlSchemaValidator.cs :
436           SourceUri is System.Uri.
437           GetUnspecifiedDefaultAttributes() is allowed only when it is inside
438           start tag.
439           Added AddSchema().
440           Added duplicate attribute check.
441           Added ValidateElement() that takes xsi:* parameters.
442           (http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackId=7fc38ea1-c306-4fb7-8631-0e174b0ff3c6)
443           HandleXsiNil() now just takes string parameter.
444
445 2004-12-14  Atsushi Enomoto <atsushi@ximian.com>
446
447         * XmlSchemaValidator.cs : implemented basic validation feature.
448
449 2004-12-14  Atsushi Enomoto <atsushi@ximian.com>
450
451         * XmlSchemaUtil.cs : added FindAttributeDeclaration() and
452           AttributeWildcardItemValid().
453
454 2004-12-11  Atsushi Enomoto <atsushi@ximian.com>
455
456         * XmlSchemaUtil.cs : added static ReadTypedValie().
457         * XmlSchemaInference.cs : compile at the end of inference.
458
459 2004-12-08  Atsushi Enomoto <atsushi@ximian.com>
460
461         * XmlValueGetter.cs,
462           XmlSchemaValidationFlags.cs,
463           XmlSchemaValidator.cs : added.
464         * XmlSchemaSet.cs : XmlResolver is now internally gettable.
465
466 2004-12-04  Atsushi Enomoto <atsushi@ximian.com>
467
468         * XmlSchemaObject.cs : added Parent.
469         * XmlSchema.cs,
470           XmlSchemaElement.cs,
471           XmlSchemaAttribute.cs,
472           XmlSchemaAttributeGroup.cs,
473           XmlSchemaGroup.cs,
474           XmlSchemaComplexType.cs,
475           XmlSchemaSequence.cs,
476           XmlSchemaChoice.cs,
477           XmlSchemaAll.cs,
478           XmlSchemaIdentityConstraint.cs,
479           XmlSchemaComplexContent.cs,
480           XmlSchemaSimpleContent.cs,
481           XmlSchemaSimpleContentExtension.cs,
482           XmlSchemaSimpleContentRestriction.cs,
483           XmlSchemaComplexContentExtension.cs,
484           XmlSchemaComplexContentRestriction.cs,
485           XmlSchemaSimpleType.cs,
486           XmlSchemaSimpleTypeRestriction.cs,
487           XmlSchemaSimpleTypeList.cs,
488           XmlSchemaSimpleTypeUnion.cs : Fill Parent on Compilation.
489
490         * XmlSchemaException.cs,
491           XmlSchemaInferenceException.cs,
492           XmlSchemaValidationException.cs : added SecurityPermissionAttribute.
493
494 2004-12-04  Atsushi Enomoto <atsushi@ximian.com>
495
496         * XmlSchemaComplexType.cs : simplify Compile().
497
498 2004-11-25  Atsushi Enomoto <atsushi@ximian.com>
499
500         * XmlSchemaElement.cs,
501           XmlSchemaComplexType.cs,
502           XmlSchema.cs,
503           XmlSchemaChoice.cs,
504           XmlSchemaSimpleType.cs,
505           XmlSchemaObjectTable.cs,
506           XmlSchemaObjectCollection.cs,
507           XmlSchemaCollection.cs,
508           : All changes are just for warning removal.
509
510 2004-11-24  Atsushi Enomoto <atsushi@ximian.com>
511
512         * XmlSchemaDatatype.cs : added ParseValue() override.
513         * XmlSchemaSimpleTypeList.cs,
514           XmlSchemaSimpleTypeUnion.cs : #if NET_2_0 some private fields,
515           just for eliminating warnings :(
516         * XmlSchemaSet.cs : commented some fields currently not in use.
517           It is for eliminating warnings.
518         * XmlSchemaSimpleTypeRestriction.cs : removed exception field name
519           to eliminate warning.
520         * XmlSchemaException.cs : hasLineInfo is also runtime serialized now.
521
522 2004-11-22  Atsushi Enomoto <atsushi@ximian.com>
523
524         * XmlSchemaException.cs : Message is only 1.x (not 2.0).
525         * XmlSchemaInference.cs : use more static readonly QName fields.
526           Type merge inference now traverses every base types.
527         * XmlSchemaInfo.cs : added new file.
528
529 2004-11-18  Atsushi Enomoto <atsushi@ximian.com>
530
531         * XmlSchemaException.cs : added .ctor(string).
532         * XmlSchemaInferenceException.cs : use base.ctor(string).
533         * XmlSchemaValidationException.cs : It is 2.0 class. Added some .ctor()
534
535 2004-11-18  Atsushi Enomoto <atsushi@ximian.com>
536
537         * XmlSchemaCollection.cs : obsolete.
538         * XmlSchemaInference.cs :
539           Fixed typo in enum. It is still MonoTODO. Reformatted code a bit.
540
541 2004-11-17  Atsushi Enomoto <atsushi@ximian.com>
542
543         * XmlSchemaSet.cs : don't set TargetNamespace = "".
544
545 2004-11-17  Atsushi Enomoto <atsushi@ximian.com>
546
547         * XmlSchemaInferenceDesign.txt : added (incomplete though.)
548
549 2004-11-17  Atsushi Enomoto <atsushi@ximian.com>
550
551         * XmlSchemaValidationException.cs : added.
552
553 2004-11-17  Atsushi Enomoto <atsushi@ximian.com>
554
555         * XmlSchemaInference.cs,
556           XmlSchemaInferenceException.cs : added.
557
558 2004-11-17  Atsushi Enomoto <atsushi@ximian.com>
559
560         * XmlSchemaException.cs : removed get_Message in 2.0 profile (all done
561           in .ctor()).
562
563 2004-11-08  Atsushi Enomoto <atsushi@ximian.com>
564
565         * XmlSchemaSet.cs : use NameTable when creating XmlTextReader.
566
567 2004-11-05  Atsushi Enomoto <atsushi@ximian.com>
568
569         * XmlSchemaSet.cs : reduced extraneous XmlSchemaObjectTable creation.
570
571 2004-11-05  Atsushi Enomoto <atsushi@ximian.com>
572
573         * XmlSchemaSimpleTypeList.cs,
574           XmlSchemaSimpleTypeUnion.cs : XmlIgnore.
575
576 2004-10-29  Atsushi Enomoto <atsushi@ximian.com>
577
578         * XmlSchemaAttribute.cs : AttributeSchemaType could be determined on
579           compilation time. AttributeType is obsolete.
580         * XmlSchemaElement.cs : ditto for ElementSchemaType and ElementType.
581
582 2004-10-29  Atsushi Enomoto <atsushi@ximian.com>
583
584         * XmlSchemaComplexType.cs : added LocalElements, with the description
585           why it can never be correct implementation.
586         * XmlSchemaUtil.cs : use IHasXmlParserContext.
587
588 2004-10-29  Atsushi Enomoto <atsushi@ximian.com>
589
590         * XmlSchemaSimpleTypeUnion.cs : Added 2.0 BaseMemberTypes property 
591           (this property name is also ambiguous and should be changed too.)
592
593 2004-10-29  Atsushi Enomoto <atsushi@ximian.com>
594
595         * XmlSchemaSimpleTypeList.cs : Added 2.0 BaseItemType property (BTW
596           this property name is really ambiguous and should be changed.)
597
598 2004-10-28  Atsushi Enomoto <atsushi@ximian.com>
599
600         * XmlSchemaAttributeGroup.cs, XmlSchemaGroup.cs :
601           in 2.0, QualifiedName properties are public.
602         * XmlSchemaType.cs : TypeCode is [XmlIgnore] (anyways ignored though).
603
604 2004-10-22  Atsushi Enomoto <atsushi@ximian.com>
605
606         * XmlSchemaType.cs : Implemented GetBuiltInComplexType(XmlTypeCode).
607
608 2004-09-22  Atsushi Enomoto <atsushi@ximian.com>
609
610         * XmlSchemaDatatype.cs : handle xdt:* types in FromName().
611
612 2004-09-16  Atsushi Enomoto <atsushi@ximian.com>
613
614         * BuiltInDatatype.cs, SchemaDataValueType.cs :
615           ParseValue() for xs:AnyURI should return System.Uri. MS.NET returns
616           XmlSchemaUri, but it is derived from System.Uri, while ours was not.
617
618 2004-09-07  Atsushi Enomoto <atsushi@ximian.com>
619
620         * IXmlType.cs : deprecated in .NET 2.0.
621
622 2004-09-03  Atsushi Enomoto <atsushi@ximian.com>
623
624         * XmlSchema.cs : When schema inclusion results in a recursion, just
625           skip recursed schema.
626         * BUGS-MS.txt : added another entry. Reflected response from Microsoft.
627
628 2004-08-30  Atsushi Enomoto <atsushi@ximian.com>
629
630         * XmlSchemaType.cs : quick build fix.
631
632 2004-08-30  Atsushi Enomoto <atsushi@ximian.com>
633
634         * XmlSchemaDatatype.cs : Removed FromName(localName) that cannot
635           handle xdt:* types.
636         * XmlSchemaType.cs : added internal GetBuiltInType() methods that
637           mix GetBuiltInSimpleType() and GetBuiltInComplexType().
638
639 2004-08-25  Atsushi Enomoto <atsushi@ximian.com>
640
641         * XmlSchemaSimpleType.cs : Fill list types such as xs:IDREFS.
642         * XmlSchemaType.cs :
643           Fixed TypeCode more (broken on predefined list types and xs:anyType).
644
645 2004-08-25  Atsushi Enomoto <atsushi@ximian.com>
646
647         * XmlSchemaType.cs :
648           anyType was anonymous, thus GetBuiltInComplexType() didn't work.
649
650 2004-08-24  Atsushi Enomoto <atsushi@ximian.com>
651
652         * XmlSchemaType.cs : return XmlTypeCode.AnyAtomicType for
653           anySimpleType's TypeCode property.
654
655 2004-08-10  Atsushi Enomoto <atsushi@ximian.com>
656
657         * XmlSchema.cs : Replace XmlSchemaCollection with XmlSchemaSet that
658           used to maintain compiled schema state.
659           Simplified code a bit (Include processing).
660           Set IsCompiled = true only when successfully compiled.
661         * XmlSchemaCollection.cs : Now it totally delegates its processing
662           to XmlSchemaSet. Removed unused methods.
663         * XmlSchemaElement.cs : Added post-compiled information initializer
664           method, and call it before (re)Compile().
665         * XmlSchemaSet.cs :
666           - Replaced internal store from Dictionary to List, since schema
667             resources for one target namespace can be more than one (that's why
668           - Schemas(string targetNamespace) returns ICollection).
669           - Now global schemaset members are added per schema addition (it is
670             more MS compatible than before).
671           - Use GetSafeNs() to do targetNamespace comparison correctly.
672
673           XmlSchemaSet looks still unstable, so it will be changed again.
674
675         * XmlSchemaSimpleTypeRestriction.cs,
676           XmlSchemaSimpleTypeUnion.cs,
677         * XmlSchemaUtil.cs : Consider xdt namespace.
678
679 2004-08-10  Atsushi Enomoto <atsushi@ximian.com>
680
681         * XmlSchemaCollection.cs : replaced CRLF to LF (they were mixed).
682
683 2004-08-10  Atsushi Enomoto <atsushi@ximian.com>
684
685         * XmlSchema.cs : code reformatting. convert CRLF to LF.
686           Use String.Format() instead of +. Removed commented code.
687
688 2004-07-28  Atsushi Enomoto <atsushi@ximian.com>
689
690         * BuiltInDatatype.cs : use XmlQualifiedName.Parse().
691
692 2004-07-23  Atsushi Enomoto <atsushi@ximian.com>
693
694         * XmlSchema.cs : Added internal XdtNamespace constant. don't fill
695           schemaset compoenents here.
696         * XmlSchemaAttribute.cs : Implemented AttributeSchemaType.
697         * XmlSchemaElement.cs : Implemented ElementSchemaType.
698         * XmlSchemaSimpleType.cs : Added predefined simple types
699         * XmlSchemaType.cs : Implemented GetBuiltInSimpleType().
700         * XmlSchemaDatatype.cs : Allow Xdt namespaces too (not completed;
701           quick fix for GetBuiltInSimpleType()).
702
703 2004-07-21  Atsushi Enomoto <atsushi@ximian.com>
704
705         * BUGS-MS.txt : updated including answer excerpts from MS team.
706         * BUGS.txt : it turned out that some bugs I wrote as "MS bugs" are 
707           actually my bug. Noted them.
708         * BuiltInDatatype.cs :
709           Commented out extraneous [CLSCompliant].
710           Switch ParseValue() argument as IXmlNamespaceResolver for 2.0, and
711           XmlNamespaceManager for 1.x.
712           Added TypeCode overrides.
713         * XmlSchemaDatatype.cs : Added 2.0 members.
714           Switch IXmlNamespaceResolver and XmlNamespaceManager.
715         * XmlSchemaType.cs : Added some NET_2_0 members. removed old 1.2 stuff.
716
717 2004-07-13  Atsushi Enomoto <atsushi@ximian.com>
718
719         * XmlSchemaBuiltInType.cs, XmlSchemaValidity.cs, XmlTypeCode.cs
720           : fixed annoying enum errors.
721         * XmlSchemaCollection.cs : completely delegate to XmlSchemaSet.
722         * XmlSchemaSet.cs : sealed classes. Use ListDictionary (avoid annoying
723           order preservation matter). NameTable null check for .ctor().
724           Fill GlobalAttributes, GlobalElements, GlobalTypes correctly.
725           Add(string, XmlReader) checks namespace conflicts, while
726           Add(XmlSchema) does not. Fixed Schemas() return type.
727
728 2004-07-11  Atsushi Enomoto <atsushi@ximian.com>
729
730         * XmlSchemaDatatypeVariety.cs : Fixed class name typo.
731         * XmlValueConverter.cs : fixed return types.
732
733 2004-06-18  Atsushi Enomoto <atsushi@ximian.com>
734
735         * CustomSerializer.cs, XmlSchemaException.cs,
736           XmlSchemaParticle.cs, XmlSchemaSimpleTypeRestriction.cs
737           : Globalization.
738
739 2004-06-10  Atsushi Enomoto <atsushi@ximian.com>
740
741         * XmlSchemaFacet.cs : Fixed internal protected --> internal.
742
743 2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
744
745         * XmlSchema.cs : Make sure to close url-based XmlTextReader.
746
747 2004-06-03  Atsushi Enomoto <atsushi@ximian.com>
748
749         * BuiltInDatatype.cs,
750           XmlSchemaFacet.cs,
751           XmlSchemaSimpleTypeRestriction.cs,
752           XmlSchemaXPath.cs : modified some enum const to static readonly
753           (.NET 1.0 does not allow it). Use safe overload of LookupNamespace().
754
755 2004-05-22  Atsushi Enomoto <atsushi@ximian.com>
756
757         * XmlSchemaDatatypeVariety.cs,
758           XmlSchemaValidity.cs : they are NET_2_0 enums.
759
760 2004-05-22  Atsushi Enomoto <atsushi@ximian.com>
761
762         * XmlValueConverter.cs : missed NET_2_0.
763
764 2004-05-22  Atsushi Enomoto <atsushi@ximian.com>
765
766         * IXmlSchemaInfo.cs,
767           IXmlType.cs,
768           XmlSchemaDatatypeVariety.cs,
769           XmlSchemaValidity.cs,
770           XmlTypeCode.cs,
771           XmlValueConverter.cs : added.
772
773         * XmlSchemaInfo.cs : removed (.NET 1.2).
774
775         * XmlSchemaBuiltInType.cs,
776           XmlSchemaSet.cs : updated.
777
778 2004-05-19  Atsushi Enomoto <atsushi@ximian.com>
779
780         * CustomSerializer.cs : Added custom serializer for XmlSchema, that is
781           generated by SerializationCodeGenerator and edited a bit.
782         * XmlSchema.cs : Use XmlSchemaSerializationWriter.
783
784 2004-05-13  Atsushi Enomoto <atsushi@ximian.com>
785
786         * XmlSchema.cs : Removed FIXME. No PSVI required.
787         * XmlSchemaAll.cs : Removed FIXME. It was not done.
788         * XmlSchemaAttributeGroupRef.cs : Removed FIXME. It can be annotated.
789         * XmlSchemaChoice.cs : not FIXME but LAMESPEC.
790         * XmlSchemaSimpleTypeRestriction.cs : Added check for non 
791           XmlSchemaFacet items on Compile(). Thus removed FIXME.
792         * XmlSchemaUtil.cs : Fixed SplitList to handle sequential spaces.
793           Thus removed FIXME.
794         * XmlSchemaObjectTable. cs: modified to use HybridDictionary (mostly
795           for avoiding iterator order difference).
796
797 2004-05-13  Atsushi Enomoto <atsushi@ximian.com>
798
799         * XmlSchemaSimpleTypeRestriction.cs : Removed MonoTODO. done.
800
801 2004-05-12  Atsushi Enomoto <atsushi@ximian.com>
802
803         * BuiltInDatatype.cs : made classes/enums internal.
804
805 2004-05-05  Atsushi Enomoto <atsushi@ximian.com>
806
807         * BuiltInDatatype.cs : trivia fix
808
809 2004-05-05  Atsushi Enomoto <atsushi@ximian.com>
810
811         * BuiltInDatatype.cs : added BUGGY_MS_COMPLIANT condition and that
812           handles ms-compatible properties.
813         * XmlSchemaComplexType.cs : ditto for ContentTypeParticle of xs:anyType.
814           Make sure ContentType for xs:anyType is Mixed.
815         * XmlSchemaUtil.cs : ditto for <xs:attribute use="prohibited" ..>
816
817 2004-05-05  Atsushi Enomoto <atsushi@ximian.com>
818
819         * XmlSchema.cs : Write() handles schema namespace for xmlserializer
820           (it does not look to be handled inside xmlserializer).
821
822 2004-04-27  Atsushi Enomoto <atsushi@ximian.com>
823
824         * XmlSchemaComplexType.cs : Set basetype as ur-type for such complex
825           type that has an immediate Particle (W3C specified as restriction
826           of ur-type).
827
828 2004-04-27  Atsushi Enomoto <atsushi@ximian.com>
829
830         * XmlSchemaAttribute.cs : When type was inline simple type, it is not
831           validated correctly.
832         * XmlSchemaSimpleType.cs : When Content was restriction, DataType was
833           not indicating base type's Datatype correctly.
834
835 2004-04-06  Atsushi Enomoto <atsushi@ximian.com>
836
837         * XmlSchemaDatatype.cs : optimized Normalize() not to create
838           extraneous string objects.
839
840 2004-03-15  Atsushi Enomoto <atsushi@ximian.com>
841
842         * reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to
843           reject incorrect schemas ;-)
844
845 2004-03-04  Alon Gazit <along@mainsoft.com>
846
847         * XmlSchemaUnique.cs : Changed Read implementation.
848         Currently can read "field" element before "selector" element (like MS).  
849
850 2004-02-26  Atsushi Enomoto <atsushi@ximian.com>
851
852         * XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized
853           (as always synchronized).
854
855 2004-02-16  Atsushi Enomoto <atsushi@ximian.com>
856
857         * XmlSchema.cs,
858           XmlSchemaAttribute.cs
859           XmlSchemaAttributeGroup.cs,
860           XmlSchemaComplexContent.cs,
861           XmlSchemaComplexType.cs,
862           XmlSchemaContent.cs,
863           XmlSchemaDatatype.cs,
864           XmlSchemaNotation.cs,
865           XmlSchemaObject.cs,
866           XmlSchemaParticle.cs : extra TODO removal. foreach elimination.
867             Moved attribute group recursion check field from XmlSchemaObject 
868             to XmlSchemaAttributeGroup.
869             Fixed XmlSchemaParticle.EmptyParticle class access modifier.
870         * XmlSchemaSimpleType.cs,
871           XmlSchemaSimpleTypeContent.cs,
872           XmlSchemaSimpleTypeList.cs,
873           XmlSchemaSimpleTypeRestriction.cs,
874           XmlSchemaSimpleTypeUnion.cs : Removed "actualBaseSchemaType" field
875             and the owner simpleType should hold the corresponding type info.
876             Collect base type info in prior to validation.
877
878 2004-02-05  Atsushi Enomoto <atsushi@ximian.com>
879
880         * BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014.
881         * BUGS.txt : FYI.
882
883 2004-02-03  Atsushi Enomoto <atsushi@ximian.com>
884
885         * BuiltInDatatype.cs : Fixed some Parse() for token based datatypes.
886         * XmlSchemaAny.cs : set properties for cloned particle. This will fix
887           bugzilla #53668.
888         * XmlSchemaParticle.cs : copy occurence string after computation of
889           validated min/max occurence. This will fix bug #53667.
890
891 2004-01-26  Atsushi Enomoto <atsushi@ximian.com>
892
893         * XmlSchema.cs : Raise warning event when external schema could not 
894           be resolved.
895         * XmlSchemaAll.cs : Fixed incorrect IsEmptiable computation.
896         * XmlSchemaAny.cs : Fixed incorrect occurence computation.
897         * XmlSchemaChoice.cs : compiledItems were incorrectly appended.
898         * XmlSchemaComplexType.cs : Now validatableParticle became extraneous.
899         * XmlSchemaGroupBase.cs : Here we should not get optimized particle
900           because it might cause infinite loop.
901         * XmlSchemaGroupRef.cs : Fixed Validate() to avoid null reference 
902           exception (only occur with ValidationEventHandler).  Fixed Occurence
903           embedding logic that was useless because of particle optimization.
904
905 2004-01-22  Atsushi Enomoto <atsushi@ximian.com>
906
907         * BuiltInDatatype.cs : On parsing QName, we don't have to spend costs
908           on Add()ing parsed name to name table.
909         * XmlSchemaUtil.cs : Added IsBuiltInDatatypeName().
910         * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, 
911           XmlSchemaElement.cs, XmlSchemaSimpleContentExtension.cs,
912           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeList.cs :
913           Use the method above instead of Namespace string comparison.
914           (it will be required to validate schema for schemas.)
915         * XmlSchemaComplexType.cs : Type Derivation OK (3.4.6) should also
916           treat null base type as anyType.  Derivation Valid Restriction 
917           (3.4.6) should allow base type wildcard absense in case of anyType.
918
919 2004-01-22  Atsushi Enomoto <atsushi@ximian.com>
920
921         * XmlSchema.cs : When we have schema A which includes schema B which
922           includes schema C (i.e. A->B->C), C components should be compiled.
923           Here, same URL inclusions are ignored.
924         * XmlSchemaElement.cs : Hack for missing substitution-group fix.
925         * XmlSchemaSimpleTypeContent.cs : make actualBaseSchemaType private
926           and initialize. This fixes bug #53178.
927         * XmlSchemaSimpleTypeUnion.cs : Forgot to commit ;)
928
929 2004-01-22  Atsushi Enomoto <atsushi@ximian.com>
930
931         * XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify
932           pattern string as "^str$" and convert WXS specific char classes into
933           .NET regexp patterns.
934
935 2004-01-21  Atsushi Enomoto <atsushi@ximian.com>
936
937         * XmlSchema.cs :
938           - Removed extra property Language.  Fill substitution-group info
939             before ContentTypeParticle is computed.
940         * XmlSchemaComplexType.cs : ContentType and ContentTypeParticle are 
941           now computer before Validate() (to exclude 3.4.2 from 3.4.6
942           component constraint check).
943         * XmlSchemaObject.cs, XmlSchemaParticle.cs :
944           Added CopyInfo() for cloning objects.
945         * XmlSchemaObjectTable.cs :
946           Add() doesn't have to reject same named items.
947         * XmlSchemaParticle.cs :
948           - Renamed internal class XmlSchemaParticleEmpty to EmptyParticle 
949             (for ease of post compilation infoset comparison).
950           - GetMinEffectiveTotalRange() should return max occurs for element and
951             any.
952         * XmlSchemaParticle.cs,
953           XmlSchemaAll.cs,
954           XmlSchemaAny.cs,
955           XmlSchemaChoice.cs,
956           XmlSchemaElement.cs,
957           XmlSchemaGroupBase.cs,
958           XmlSchemaGroupRef.cs,
959           XmlSchemaSequence.cs :
960           - Removed ActualParticle property.
961           - Added GetOptimizedParticle() to get ContentTypeParticle.
962           - ContentTypeParticle is now created as different object from 
963             user-specified "Particle" property.
964           - Return Empty particle when model groups contains no Items.
965           - When Items contains exactly 1 item, return the item (unless it is
966             top level choice model group - it causes DBR problem).
967           - ValidateDerivationValidRestriction() and related WXS 3.9.6 DBR
968             check methods such as ValidateNSRecurseCheckCardinality() now
969             returns a bool value and avoids exceptions on each failure time.
970           - ValidateRecurse() now doesn't progress base particle incorrectly.
971             (it caused incorrect order-preserving-mapping error.)
972           - 3.9.6 Recurse, RecurseLax, MapAndSum are now treated as different.
973         * XmlSchemaAll.cs : occurence validation shoud be done against values
974           after computation (ValidatedMaxOccurs).
975         * XmlSchemaChoice.cs : When Items is empty, then invoke warning event.
976         * XmlSchemaElement.cs :
977           - Consider referencedElement also for SubstitutionGroupElement.  
978           - Removed SubstitutingChoice which is not in use.
979           - when it was targeted as substitution group by other elements, its 
980             ContentTypeParticle should be substitution choice (see 3.9.6 
981             Particle Valid (Restriction) term 2.1).
982           - Added FillsubstitutionElementInfo() (see XmlSchema.cs above).
983         * XmlSchemaGroup.cs : Removed extra check on model group (because it
984           is impossible to specify non-model-group particle).
985         * XmlSchemaIdentityConstraint.cs,
986           XmlSchemaKey.cs,
987           XmlSchemaKeyRef.cs,
988           XmlSchemaUnique.cs : Removed extraneous MonoTODO.
989         * XmlSchemaSimpleContent.cs : Made actualSchemaType as internal.
990         * XmlSchemaSimpleType.cs : Removed extraneous new Datatype property.
991         * XmlSchemaSimpleTypeRestriction.cs : Renamed actualBaseSchemaType to
992           ActualBaseSchemaType.
993         * XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
994           Removed unused actualBaseSchemaType code.
995         * XmlSchemaType.cs : use recently introduced BaseXmlSchemaType.
996         * XmlSchemaUtil.cs : Removed unused CheckLanguage().
997
998 2004-01-21  Atsushi Enomoto <atsushi@ximian.com>
999
1000         * XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was
1001           incorrectly treated.
1002
1003 2004-01-20  Atsushi Enomoto <atsushi@ximian.com>
1004
1005         * SchemaDataValueType.cs : UriValueType.ToString() should return 
1006           actual URI string (as MS's XmlSchemaUri class does).
1007         * XmlSchemaReader.cs : Make it internal.
1008
1009 2004-01-16  David Sheldon <dave-mono@earth.li>
1010
1011        * BuiltInDatatype.cs: added guard to stop index out of range error for
1012          invalid Base64 characters.
1013
1014 2004-01-15  Jackson Harper <jackson@ximian.com>
1015
1016         * XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes
1017         build).
1018         
1019 2004-01-15  Atsushi Enomoto <atsushi@ximian.com>
1020
1021         * XmlSchemaComplexContentExtension.cs,
1022           XmlSchemaSimpleContentExtension.cs,
1023           XmlSchemaSimpleContentExtension.cs,
1024           XmlSchemaSimpleContentRestriction.cs,
1025           XmlSchemaContent.cs : Added IsExtension. GetXXX() became nonvirtual.
1026         * XmlSchemaType.cs : 
1027           - Added NET_2_0 BaseXmlSchemaType (other members are commented out).
1028           - Now BaseSchemaType redirects to new property BaseXmlSchemaType.
1029         * XmlSchemaComplexType.cs :
1030           - Now it fully uses BaseXmlSchemaType above.
1031           - Since ValidateXXX() became too huge, I divided them into 
1032             CollectXXX() [spec 3.4.1] and ValidateXXX() [spec 3.4.3 / 3.4.6].
1033             Schema Components are contributed before constraint check.
1034           - Now ContentTypeParticle is distinguished from validating particle
1035             which is newly introduced as "ValidatableParticle" (only used in 
1036             XsdValidatingReader).
1037         * XmlSchemaSimpleType.cs : Now it uses BaseXmlSchemaType.
1038           capitalized internal members a bit.
1039
1040 2004-01-14  David Sheldon <dave-mono@earth.li>
1041
1042         * XmlSchemaSimpleTypeRestriction: Convert pattern facets to be ORed, 
1043           as per: http://www.w3.org/TR/xmlschema-2/#src-multiple-patterns
1044           Fixes bug 52841
1045
1046 2004-01-14  David Sheldon <dave-mono@earth.li>
1047
1048         * BuiltInDatatype.cs:
1049            XsdAnySimpleType - Added Length that returns the string length. 
1050            XsdBase64Binary - Added Length, and used more direct, less fussy, 
1051                Base64 decoder. 
1052            XsdHexBinary - Added Length method
1053
1054         * XmlSchemaSimpleTypeRestriction: use DataType Length method to
1055           determine length to compare against. Stop testing Lenght facets on 
1056           QName and Notation types (as per errata)
1057
1058 2004-01-14  Atsushi Enomoto <atsushi@ximian.com>
1059
1060         * XmlSchemaComplexType.cs : forgot to commit ;)
1061         * XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false
1062           for comparison between ID and IDREF.
1063
1064 2004-01-14  Atsushi Enomoto <atsushi@ximian.com>
1065
1066         * Added SchemaDataValueType.cs.
1067         * BuiltInDatatype.cs, XmlSchemaDatatype.cs : Adde ParseValueType() on
1068           all derived datatype classes.
1069         * XmlSchemaComplexType.cs : Fixed ContentType value for simple types.
1070           Errata-considered simple content derivation check and simple content
1071           restriction should check this too.
1072
1073 2004-01-13  Jackson Harper <jackson@ximian.com>
1074
1075         * XmlSchemaComplexType.cs: Comment out line that was breaking the build.
1076         
1077 2004-01-13  Atsushi Enomoto <atsushi@ximian.com>
1078
1079         * XmlSchemaSimpleTypeUnion.cs : The same reason as the previous patch.
1080         * XmlSchemaComplexType.cs : Now it handles ContentTypeParticle and 
1081           ContentType much more presise than before.
1082         * XmlSchemaElement.cs :
1083           Simplified property handling for reference element.
1084
1085 2004-01-13  Atsushi Enomoto <atsushi@ximian.com>
1086
1087         * XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs :
1088           Invalid attribute should raise an error, not a warning.
1089
1090 2004-01-13  Atsushi Enomoto <atsushi@ximian.com>
1091
1092         * XmlSchemaObject.cs : Fixed error() not to set severity as Warning.
1093         * ValidationHandler.cs,
1094           XmlSchemaSet.cs,
1095           XmlSchemaCollection.cs : Throw exception only in case of errors.
1096         * XmlSchemaCollection.cs : Remove schema from schemaset if exist.
1097           (It might not be good to use schemaset, but keep for a while)
1098         * XmlSchemaContent.cs,
1099           XmlSchemaComplexContentExtension.cs,
1100           XmlSchemaComplexContentRestriction.cs,
1101           XmlSchemaSimpleContentExtension.cs,
1102           XmlSchemaSimpleContentRestriction.cs,
1103           : added GetBaseTypeName() and GetParticle() (not used yet).
1104
1105 2004-01-11  Atsushi Enomoto  <atsushi@ximian.com>
1106
1107         * BuiltInDatatype.cs : internal type should not appear in protected
1108           members' signature.
1109
1110 2004-01-11  David Sheldon <dave-mono@earth.li>
1111
1112   * BuiltInDatatype.cs : Added XsdOrdering enum, and Compare methods
1113    to the data-types. Changed AllowedFacets to be a bitfield.
1114   
1115   * XmlSchemaFacet.cs : Added Facet enumeration to represent bitfield.
1116
1117   * XmlSchemaEnumerationFacet.cs,
1118     XmlSchemaFractionDigitsFacet.cs,
1119     XmlSchemaLengthFacet.cs,
1120     XmlSchemaMaxExclusiveFacet.cs,
1121     XmlSchemaMaxInclusiveFacet.cs,
1122     XmlSchemaMaxLengthFacet.cs,
1123     XmlSchemaMinExclusiveFacet.cs,
1124     XmlSchemaMinInclusiveFacet.cs,
1125     XmlSchemaMinLengthFacet.cs,
1126     XmlSchemaNumericFacet.cs,
1127     XmlSchemaPatternFacet.cs,
1128     XmlSchemaTotalDigitsFacet.cs,
1129     XmlSchemaWhiteSpaceFacet.cs : Added ThisFacet Property to return facet type
1130
1131
1132   * XmlSchemaSimpleTypeRestriction.cs: Inherited facets from base types,
1133     checked which which were allowed on different types. Validated fixed
1134     facets, duplicated facets and derivation by restriction. Added checking 
1135     for min/max Inclusive/Exclusive, totalDigits and fractionDigits facets in 
1136     validation.
1137
1138 2004-01-09  Atsushi Enomoto  <atsushi@ximian.com>
1139
1140         * XmlSchemaSet.cs : implemented some members.
1141         * XmlSchemaCollection.cs : modified to use internal schema set (This
1142           class provides more precise schema validation feature and will be
1143           commonly used for XPathNavigator2).
1144           Added .NET 1.1 .ctor() which takes XmlResolver.
1145         * XmlSchema.cs : fix related to above changes.
1146           Use validation event handler on Read() at all required places.
1147           Added .NET 1.1 .ctor() which takes XmlResolver.
1148         * XmlSchemaComplexType.cs : content type comparison was incorrect.
1149           Renamed confusing method.
1150         * XmlSchemaElement.cs : don't use ContentTypeParticle in 
1151           CheckRecursion(), where that property might not be determined yet.
1152         * XmlSchemaGroupBase.cs : Modified ValidateRecurse() a bit (currently
1153           no effect)
1154         * XmlSchemaGroupBase.cs,
1155           XmlSchemaChoice.cs,
1156           XmlSchemaAll.cs,
1157           XmlSchemaSequence.cs : moved CheckRecursion to XmlSchemaGroupBase.
1158         * XmlSchemaObjectTable.cs : Fixed missing error info.
1159         * BUGS-MS.txt : Added info a bit.
1160
1161 2004-01-08  Atsushi Enomoto  <atsushi@ximian.com>
1162
1163         * BUGS-MS.txt : added list derivation and facet case.
1164         * XmlSchemaComplexType.cs :
1165           Added some description.  Avoided null reference exception in 
1166           some places.  
1167           Fixed incorrect 3.4.6 Derivation Valid (Extension) 1.4.1.2.2 and
1168           3.9.6 Particle Valid (Extension) 2.
1169         * XmlSchemaGroupBase.cs : Fixed ParticleEquals() which didn't work
1170           properly against sequence and all.
1171
1172 2004-01-08  Atsushi Enomoto  <atsushi@ximian.com>
1173
1174         * XmlSchemaObjectTable.cs : Modified enumerator's Current to return
1175           DictionaryEntry.
1176         * XmlSchemaComplexType.cs, XmlSchemaUtil.cs :
1177           In reflection to object table enumerator change.
1178
1179 2004-01-08  Atsushi Enomoto  <atsushi@ximian.com>
1180
1181         * XmlSchemaElement.cs : Fixed incorrect unique particle attribution
1182           check on ##other and target namespace element.
1183
1184 2004-01-08  Nick Drochak <ndrochak@ieee.org>
1185
1186         * XmlSchemaSimpleType.cs: Needed a 'new' on the property
1187         * XmlSchemaXPath.cs: Removed unreachable code.
1188         
1189 2004-01-03  Atsushi Enomoto  <atsushi@ximian.com>
1190
1191         * XmlSchemaDatatype.cs : trivial allocation fix.
1192
1193 2003-12-17  David Sheldon  <dave-mono@earth.li>
1194
1195   * BuiltInDatatype.cs : Added whitespace=collapse to data types 
1196     such as date, dateTime, .... gDay. I think I have them all now.
1197
1198 2003-12-15  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1199
1200         * BuiltInDatatype.cs : anySimpleType should allow facets.
1201
1202 2003-12-14  David Sheldon <dave-mono@earth.li>
1203   
1204   * BuiltInDatatype.cs : Added code to tell which facets were valid on
1205     types derived from each basetype.
1206
1207   * XmlSchemaSimpleTypeRestriction.cs : Complain if an invalid facet
1208     has been added to a restriction.
1209
1210
1211 2003-12-14  David Sheldon <dave-mono@earth.li>
1212
1213   * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths 
1214     specified are integers. Also made some error messages more useful.
1215
1216 2003-12-08  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1217
1218         * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
1219           if max/min length range is valid.
1220
1221 2003-12-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1222
1223         * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace
1224           facet as collapse (patch by David Sheldon).
1225         * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-)
1226         * XmlSchemaSequence.cs : MapAndSum implementation.
1227
1228 2003-11-17  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1229
1230         * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
1231           (for convenience of ObjectSpaces stubbing).
1232
1233 2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1234
1235         * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while
1236           the correct binding is sbyte.
1237         * XmlSchemaAll.cs,
1238           XmlSchemaChoice.cs,
1239           XmlSchemaSequence.cs,
1240           XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness
1241           described in WXS structures 3.9.6.
1242           Added ValidateRecurse() to support 'Recurse' validation.
1243         * XmlSchemaComplexType.cs : Removed incorrect content type conformity
1244           check.
1245         * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation
1246           described in WXS structures 3.9.6.  Fixed type derivation check to
1247           do only if the base type is not anyType.
1248         * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex() 
1249           construction exception. ValidateList... and ValidateNonList... was
1250           in reverse.
1251         * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken().
1252
1253 2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1254
1255         * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time.
1256           Fixed most of date-time related types' ParseValue().
1257           Applied Normalize() before parsing values in some ParseValue().
1258
1259 2003-10-23  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1260
1261         * XmlSchemaAll.cs,
1262           XmlSchemaChoice.cs,
1263           XmlSchemaGroupBase.cs,
1264           XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase.
1265         * XmlSchemaAny.cs,
1266           XmlSchemaElement.cs,
1267           XmlSchemaGroupBase.cs,
1268           XmlSchemaGroupRef.cs,
1269           XmlSchemaParticle.cs,
1270           XmlSchemaSequence.cs : Added ParticleEquals() method to compare 
1271           whether the particles are equal in the context of WXS part 1 - 3.9.6.
1272         * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction().
1273         * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my
1274           responsibility on this class.
1275           Added ValidateWildcardAllowsNamespaceName().
1276         * XmlSchemaAttribute.cs : Added ValidatedUse which holds post-
1277           compilation value of "Use".
1278         * XmlSchemaAttributeGroup.cs,
1279           XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other
1280           classes) since there is no more errors on attribute stuff ;-)
1281         * XmlSchemaComplexType.cs : complex content extension must block 
1282           derivation from any built-in primitive types.
1283           Fixed wildcard derivation by restriction.
1284           ValidateDerivationByRestriction() now checks attribute related
1285           validity of DBR (derivation by restriction).
1286           Now uses ParticleEquals() for particle DBR check.
1287         * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items.
1288
1289 2003-10-21  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1290
1291         * XmlSchema.cs,
1292           XmlSchemaUtil.cs : Reduced warning message.
1293         * XmlSchemaAttribute.cs : NotImplementedException should no more exist.
1294           (All things are going to be implemented.)
1295         * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal.
1296         * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented
1297           list type derivation validation. Added Normalize().
1298         * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType
1299           with anySimpleType.
1300         * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation,
1301           such as pattern, enumeration, and length etc.
1302
1303 2003-10-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1304
1305         * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse().
1306         * XmlSchemaCollection.cs : Implemented CopyTo().
1307         * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling.
1308           Added support for anySimpleType.
1309         * XmlSchemaSimpleType.cs : Type specification named as anyType should
1310           be mapped to anySimpleType.
1311         * BUGS-MS.txt : Added more case note.
1312
1313 2003-10-13  Lluis Sanchez Gual <lluis@ximian.com>
1314
1315         * XmlSchema.cs: If the schema element is an empty element, skip it after
1316           reading the attributes.
1317
1318 2003-10-09  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1319
1320         * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.
1321
1322 2003-10-01  Lluis Sanchez Gual <lluis@ximian.com>
1323
1324         * XmlSchemaUtil.cs: arrayType attribute needs special handling.
1325
1326 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1327
1328         * XmlSchema.cs : Forgot to update with previous files.
1329
1330 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1331
1332         * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs,
1333           XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs,
1334           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs,
1335           XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
1336           Fixed missing sub components check. It should fix soap stuff.
1337         * XmlSchemaAny.cs, XmlSchemaAttribute.cs,
1338           XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs :
1339           Added my responsibility on them ;-)
1340
1341 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1342
1343         * XmlSchema.cs : Read() should keep current position of XmlReader if
1344           it was already positioned to 'schema' element.
1345
1346 2003-09-30  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1347
1348         * Forgot to append 8/24/2003 ChangeLog.
1349         * BUGS.txt, BUGS-MS.txt : Appended additional bug info.
1350         * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs, 
1351           XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs,
1352           XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs,
1353           XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs,
1354           XmlSchemaChoice.cs, XmlSchemaCollection.cs,
1355           XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
1356           XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
1357           XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs,
1358           XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs,
1359           XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs,
1360           XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs,
1361           XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs,
1362           XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
1363           XmlSchemaSimpleContentExtension.cs,
1364           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
1365           XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs,
1366           XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs,
1367           XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs,
1368           XmlSchemaXPath.cs :
1369
1370           - Almost all classes are changed to implement schema component
1371             constraints, and schema validation using XsdValidatingReader.
1372           - better exception messages.
1373           - More datatype support.
1374           and so on.
1375
1376 2003-09-14  Lluis Sanchez Gual <lluis@ximian.com>
1377
1378         * XmlSchema.cs: Do not add schema namespace declaration if it is already
1379           declared.
1380
1381 2003-08-28  Lluis Sanchez Gual <lluis@ximian.com>
1382
1383         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.
1384
1385 2003-08-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1386
1387         * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None.
1388         * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema.
1389           Add() should compile specified schema.
1390
1391 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
1392
1393         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
1394           XsdDateTime, XsdDate, XsdTime.
1395
1396 2003-08-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1397
1398         * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken.
1399           Tokenized type of nmtokens and entities is string [].
1400         * XmlSchema.cs : Changed IsCompile implementation a bit.
1401           Compile() should reset compiled contents.
1402         * XmlSchemaDatatype.cs : Fixed collapsing Normalize().
1403         * XmlSchemaObject.cs : added CompilationId initialization.
1404
1405 2003-08-05  Lluis Sanchez Gual <lluis@ximian.com>
1406
1407         * XmlSchema.cs: Set IsCompiled to true after compiling.
1408           In Compile(): ignore included schemas that do not have a value
1409           in SchemaLocation. It means that FindElement can return null
1410           if the referred schema was ignored. Added check for that case.
1411           Compile schema after reading it.
1412         * XmlSchemaCollection.cs: The targetNamespace of a schema may
1413           be null. Make XmlSchemaCollection work for this case.
1414         * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive
1415           types: float, base64Binary, boolean.
1416
1417 2003-08-02  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1418
1419         * XmlSchema.cs :
1420           - Changed missingElementTypeRefs from Hashtable to ArrayList.
1421           - Added internal XmlSchemas for keeping imported schemas.
1422           - Added private Compile() that takes the original rootSchema and
1423             schema location stack for nested inclusion check.
1424           - Added basic xs:import and xs:include support.
1425           - Compile() is now aware of included XmlSchemaObject items.
1426           - Changed Compile() to fill missing elements' types and that of
1427             referencing elements.
1428           - Read() now adds SourceUri property (although only to itself).
1429         * XmlSchemaCollection.cs : Implemented Add().
1430         * XmlSchemaCollectionEnumerator.cs :
1431           Changed .ctor() to use schema collection as its argument.
1432           Fixed Current to return hashtable's Value, instead of Current 
1433           (which returns DictionaryEntry).
1434         * XmlSchemaComplexType.cs :
1435           Added internal static AnyType.
1436           Compile() is now searches for its base type into other schemas.
1437         * XmlSchemaElement.cs : anyType is supported.
1438           It now searches for type information after Compile().
1439           SetReferedElementInfo() is now changed to SetSchemaType().
1440         * XmlSchemaObjectTable.cs :
1441           It had problems similar to schema collection. Now it uses internal
1442           class XmlSchemaObjectTableEnumerator to support GetEnumerator().
1443         * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty
1444           and internal static Empty.
1445
1446 2003-07-26  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1447
1448         * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
1449         * XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
1450           should be internal.
1451
1452 2003-07-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1453
1454         * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().
1455
1456 2003-07-21  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1457
1458         * XmlSchema.cs, XmlSchemaElement.cs :
1459           added internal MissingElementTypeRefs and support for refering 
1460           element's elementType.
1461
1462 2003-07-20  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1463
1464         * XmlSchema.cs : added support for collecting missing type references
1465           at compilation-time.
1466         * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs:
1467           - Renamed qName to QNameInternal.
1468           - Added BaseSchemaType and ContentTypeParticle support.
1469
1470 2003-07-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1471
1472         * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs,
1473           XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs,
1474           XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs,
1475           XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs,
1476           XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
1477           XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
1478           XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs,
1479           XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs,
1480           XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs,
1481           XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs,
1482           XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
1483           XmlSchemaSimpleContentExtension.cs,
1484           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
1485           XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs,
1486           XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs,
1487           XmlSchemaXPath.cs, 
1488           As to Compile() and Validate(),
1489           - Added CompilationId and check it while compiling schema components.
1490           - Code refactory. Replaced literal xmlns with XmlSchema.Namespace
1491           - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema
1492             also has PSVI components inside it, so passing itself seems enough).
1493           - Related to above change, IDCollection was moved to XmlSchema, and
1494             blockDefault/finalDefault/blockResolved/finalResolved resolution
1495             was changed to reference only to schema.BlockDefault/FinalDefault.
1496           - The similar change has done against XmlSchemaForm related stuff.
1497           - Changed compilation order of schema type definitions (it is
1498             workaround). First it compiles types, and then it compiles others.
1499         * XmlSchemaElement.cs : added ElementType PSVI contribution support.
1500
1501 2003-07-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1502
1503         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
1504           Added decimal and its derived datatypes.
1505           Added abstract XsdAnySimpleType.
1506
1507 2003-07-15  Lluis Sanchez Gual <lluis@ximian.com>
1508
1509         * BuiltInDatatype.cs,
1510           XmlSchemaDatatype.cs : added unsignedByte type support.
1511
1512 2003-07-14  Lluis Sanchez Gual <lluis@ximian.com>
1513
1514         * XmlSchemaDatatype.cs: Fixed compiler warning.
1515
1516 2003-07-12  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1517
1518         * BuiltInDatatype.cs,
1519           XmlSchemaDatatype.cs : added NOTATION type support.
1520
1521 2003-07-06  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1522
1523         * added BuiltInDatatype.cs.
1524         * XmlSchemaDatatype.cs : [GetType()] added support for some 
1525           built-in datatypes.
1526
1527 2003-05-05  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1528
1529         * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().
1530
1531 2003-02-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
1532
1533         * XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
1534                 and <documentation> elements. (patch by Peter Pentchev)
1535         * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject 
1536                 instead of XmlSchema. (patch by Peter Pentchev)
1537
1538 2002-07-23  Duncan Mak  <duncan@ximian.com>
1539
1540         * XmlSchemaException.cs: Partiall implement the ISerializable
1541         methods. It's not clear now SourceSchemaObject should be deserialized.
1542
1543 2002-07-22  Tim Coleman  <tim@timcoleman.com>
1544         * XmlSchema.cs: Removed isCompiled which is defined as internal
1545                 in XmlSchemaObject.
1546
1547 2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1548         
1549         * XmlSchema: Started work on Validate methods
1550
1551 2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1552         * XmlSchema: The Read and Write methods are no more [MonoTODO] :)
1553         
1554         * XmlSchemaAppInfo: Xml Markup is now being read.
1555         
1556         * XmlSchemaDocumentation: Xml Markup is now being read.
1557
1558         * All: Unhandled attributes are being handled properly.
1559                
1560         * All: Reordered the properties in all cs files to match with MS
1561                Implementation. This was required since the order is importatnt
1562                for the XmlSerializer.
1563         
1564 2002-06-14  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1565         * General: Fixed a few more Bugs
1566
1567 2002-06-10  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1568         * XmlSchemaReader: A Wrapper class around XmlReader with customized
1569           methods to suit reading a schema.
1570         * General: Implemented Read() method for the schema. There are only
1571           a few minor bugs remaining.
1572
1573 2002-05-25  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1574         * BUGS.txt: New file to keep track of bugs
1575
1576         * ALL: All classes are initialized exactly as in .NET except
1577                1. inclusion of language attribute in schema
1578                2. ComplexContent's Particle is initialized to null whereas .NET 
1579                   to some internal implementation. IMO Null is more appropriate
1580
1581         * ALL: Changed the Compile methods to return the count of errors.
1582
1583         * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests.
1584                This number should shoot up if we write a parser to read the
1585                Schema instead of using reflection (which is slower too)
1586
1587 2002-05-04  Dwivedi, Ajay kumar <adwiv@yahoo.com>
1588         * XmlSchemaUtil.cs: New file added. 
1589         
1590         * Parser.cs: New file Added. Unused at the moment.
1591
1592         * XmlSchemaObjectCollection: Fixed GetEnumerator
1593         
1594         * General: Preprocessing for Attributes and SimpleTypes completed.
1595
1596 2002-04-26  Duncan Mak  <duncan@ximian.com>
1597
1598         * ValidationHandler.cs: New file.
1599
1600         * XmlSchemaInfo.cs: New file.
1601
1602         * *.cs: More updates from Ajay.
1603
1604 2002-03-27  Duncan Mak  <duncan@ximian.com>
1605
1606         * *.cs: Updates from Ajay Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>.