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