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