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