1 2009-01-30 Atsushi Enomoto <atsushi@ximian.com>
3 * XmlSchemaElement.cs : to reference elementFormDefault, use its
4 ancestor, not the schema island root.
6 2008-12-15 Atsushi Enomoto <atsushi@ximian.com>
8 * XmlSchema.cs, XmlSchemaSet.cs : move substitutionGroup processing
9 from validation phase to post-subset-collection phase. It caused
10 inconsistent substitutionGroup processing among import and
11 schemaSet.Schemas(). Fixed possible XBRL schema processing.
13 2008-12-09 Atsushi Enomoto <atsushi@ximian.com>
15 * XmlSchemaValidator.cs : skip text validation under xs:any.
17 2008-10-28 Atsushi Enomoto <atsushi@ximian.com>
19 * XmlSchemaValidator.cs : add internal attribute datatype
20 information before calling getter() so that
21 XmlSchemaValidatingReader can retrieve it. It is due to LAMESPEC.
23 2008-10-28 Atsushi Enomoto <atsushi@ximian.com>
25 * XmlSchemaValidator.cs : SchemaInfo is only for output, not for
26 reference. Fixed bug #433374.
27 * XmlSchemaUtil.cs, XmlSchemaSimpleTypeRestriction.cs : I don't like
30 2008-09-09 Atsushi Enomoto <atsushi@ximian.com>
32 * XmlSchemaValidator.cs : do not try to validate CloseStartElement
33 when it should be skipped. Fixed bug #422581.
35 2008-08-19 Jb Evain <jbevain@novell.com>
38 * XmlSchemaObject_2_1.cs
39 * XmlSchemaSet_2_1.cs: add new specific files for the net_2_1 profile.
41 2008-06-13 Atsushi Enomoto <atsushi@ximian.com>
43 * XmlSchema.cs : fixed couple of olive regressions caused by
44 previous ProcessExternal() patches.
46 2008-06-06 Atsushi Enomoto <atsushi@ximian.com>
48 * XmlSchema.cs : indent (I slightly modified the previous patch
49 to expose the actual changes).
51 2008-06-06 Atsushi Enomoto <atsushi@ximian.com>
53 * XmlSchema.cs : fixed bug #397612, patch by James Fitzsimons.
54 in ProcessExternal(), Make xs:import without schemaLocation work
55 fine as if it were with schemaLocation.
57 2008-06-06 James Fitzsimons <james.fitzsimons@gmail.com>
59 * XmlSchema.cs : Changed GetResolvedUri to return Uri in correct case
60 to make compatible with the Microsoft.NET framework.
62 2008-02-19 Atsushi Enomoto <atsushi@ximian.com>
64 * XmlSchema.cs : Do recursively process xs:include inside included
65 schemas. Fixed bug #361818.
67 2008-02-19 Atsushi Enomoto <atsushi@ximian.com>
69 * XmlSchemaAny.cs : block extra compilation in anyTypeContent.
71 2008-02-04 Atsushi Enomoto <atsushi@ximian.com>
73 * XmlSchemaValidator.cs : added couple of null argument check.
74 Do not depend on XmlSchemaInfo to retrieve attribute value (it
76 Do not practically validate attribute when it is not in validating
77 state (i.e. inside xs:any). Fixed bug #358408.
79 2008-01-12 Sebastien Pouliot <sebastien@ximian.com>
81 * XmlSchemaInference.cs: Fix infinite recursion in TypeInference
82 property getter. Found by Gendarme.
84 2007-11-12 Atsushi Enomoto <atsushi@ximian.com>
86 * XmlSchemaValidator.cs : XmlValueGetter actually needs string value
87 to validate against a restricted simple type (beyond ParseValue()).
90 2007-11-05 Atsushi Enomoto <atsushi@ximian.com>
92 * XmlSchemaSimpleTypeRestriction.cs : implemented value-space
93 comparison for enumerations. Actually it is hybrid (it also
94 tries literal-space comparison first). Fixed bug #322457 and
97 When there is a literal-space match, sometimes you cannot try to
98 get TypedValue even if it is valid due to double.Parse() overflow.
100 2007-09-27 Atsushi Enomoto <atsushi@ximian.com>
102 * XmlAtomicValue.cs :
103 Added ToString(). Public API metadata completion.
105 2007-08-02 Atsushi Enomoto <atsushi@ximian.com>
107 * XmlSchemaComplexType.cs,
108 XmlSchemaComplexContentRestriction.cs :
109 in Validate(), every descendant item in complexType must be first
110 validated before getting GetOptimizedParticle(), or it could result
111 in wrong content particle. Fixed bug #82010.
113 2007-08-02 Atsushi Enomoto <atsushi@ximian.com>
115 * XmlSchemaValidator.cs : another extra whitespace rejection.
116 Fixed another issue reported on bug #82183.
118 2007-07-25 Atsushi Enomoto <atsushi@ximian.com>
120 * XmlSchemaValidator.cs : do not reject whitespaces in elementOnly
121 content model. Fixed bug #82183.
123 2007-07-17 Atsushi Enomoto <atsushi@ximian.com>
125 * XmlSchemaValidator.cs : dependent changes to
126 XsdParticleValidationState. Changed ValidateWhitespace() to do
127 the same as we do in XsdValidatingReader.
129 2007-04-24 Atsushi Enomoto <atsushi@ximian.com>
131 * XmlSchema.cs XmlSchemaGroup.cs XmlSchemaAny.cs XmlSchemaElement.cs
132 XmlSchemaNotation.cs XmlSchemaComplexType.cs
133 XmlSchemaAttributeGroup.cs XmlSchemaSimpleType.cs
134 XmlSchemaIdentityConstraint.cs XmlSchemaAnyAttribute.cs
135 XmlSchemaRedefine.cs XmlSchemaAttribute.cs :
136 avoid incorrect compilation of included schemas, fixed bug #81360.
137 more fix for wrong targetNamespace propagation within current
138 processing model. Replaced ParentIsSchema field with a property.
140 2007-04-24 Atsushi Enomoto <atsushi@ximian.com>
142 * XmlSchema.cs XmlSchemaSimpleTypeList.cs
143 XmlSchemaComplexContentRestriction.cs XmlSchemaGroup.cs
144 XmlSchemaComplexContentExtension.cs XmlSchemaSequence.cs
145 XmlSchemaSimpleContentRestriction.cs
146 XmlSchemaSimpleContentExtension.cs
147 XmlSchemaElement.cs XmlSchemaAll.cs XmlSchemaComplexType.cs
148 XmlSchemaAttributeGroup.cs XmlSchemaSimpleTypeRestriction.cs
149 XmlSchemaSimpleContent.cs XmlSchemaChoice.cs
150 XmlSchemaSimpleType.cs XmlSchemaIdentityConstraint.cs
151 XmlSchemaSimpleTypeUnion.cs XmlSchemaRedefine.cs
152 XmlSchemaComplexContent.cs XmlSchemaAttribute.cs
153 XmlSchemaObject.cs : set parent component in prior to compilation,
154 bringing Parent to 1.x as internal. Moving toward fixing #81360.
156 2006-12-11 Atsushi Enomoto <atsushi@ximian.com>
158 * XmlSchemaIdentityConstraint.cs : give conflicting component in
160 * XmlSchemaElement.cs : When resolving "ref" and "substitutionGroup",
161 It should use XmlSchema.FindElement() instead of XmlSchema.Elements
162 so that it does not miss external components.
163 * XmlSchemaSet.cs, XmlSchema.cs : now in one XmlSchemaSet
164 compilation, make sure to not handle the same schema twice even
167 2006-10-27 Atsushi Enomoto <atsushi@ximian.com>
169 * XmlSchemaValidator.cs : it must also be fixed for method signature
171 * XmlSchemaSimpleTypeRestriction.cs : on .NET 2.0, use
172 IXmlNamespaceResolver for XmlSchemaValidator.
174 2006-10-27 Atsushi Enomoto <atsushi@ximian.com>
176 * XmlSchemaSimpleTypeRestriction.cs : for facet validation, it should
177 use namespacemanager. Though the change is not perfect, thus I
178 disable this change for now.
180 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
182 * XmlSchema.cs, XmlSchemaSimpleTypeList.cs,
183 XmlSchemaSimpleContentRestriction.cs, XmlSchemaUtil.cs,
184 XmlSchemaSimpleContentExtension.cs, XmlSchemaElement.cs,
185 XmlSchemaComplexType.cs, XmlSchemaSimpleTypeRestriction.cs,
186 XmlSchemaSimpleTypeUnion.cs, XmlSchemaAttribute.cs :
187 Finally fixed bugs around cross-referencing importing schema
188 components (namely, #77489 and #78220) by resolving referenced
189 components via new internal Find[Element|Attribute|AttributeGroup|
190 SchemaType] methods in XmlSchema.
192 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
194 * XmlSchema.cs : set ValidationEventHandler to XmlSchemaSet only
195 when the argument event handler is not null.
196 Validate() is internal to open it to XmlSchemaSet.
197 * XmlSchemaSet.cs : removed extraneous "handler" field and method
198 "OnValidationError". Now ValidationEventHandler just works since
199 we don't have to care about XmlSchemaCollection's event (it just
200 reuses XmlSchemaSet's event now).
201 Split Compile() process to collect components first, and to
204 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
206 * XmlSchema.cs : compiling and validating external components in
207 prior to direct components in a schema does block my refactoring.
208 Removed extraneous call to XmlSchemaSet.Add().
210 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
212 * XmlSchema.cs, XmlSchemaSet.cs : some minor refactoring to make
213 Compile() simple two phase (i.e. CompileSubset() and Validate()).
215 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
217 * XmlSchemaException.cs : oops, .ctor(string) was only for 2.0.
219 2006-07-27 Atsushi Enomoto <atsushi@ximian.com>
221 * XmlSchemaCollection.cs :
222 eliminated call to XmlSchema.CompileSubset(). Now XmlSchemaSet is
223 the only starter of the compilation.
224 * XmlSchemaSet.cs : added targetNamespace check.
226 2006-07-26 Atsushi Enomoto <atsushi@ximian.com>
228 Refactoring compilation to make Compile() portable to
229 XmlSchemaSet.Compile() and fix multi-schema bugs (not done yet)
232 Removed "root schema" concept from Compile().
233 Since nested inclusion does not result in an error, the role of
234 schemaLocationStack is identical to handledUris, thus removed it.
235 The handledUris does not have to be a field.
236 Moved NamedIdentities and IDCollections to XmlSchemaSet.
237 Renamed a Compile() which is called from XmlSchemaCollection and
238 XmlSchemaSet as CompileSubset(). Renamed private Compile() as
240 public Compile() now internally creates a new XmlSchemaSet and
242 * XmlSchemaCollection.cs : now it hooks its schemaSet's validation
243 event handler and thus XmlSchemaSet does not need to check this
244 collection's event handler by itself.
245 XmlSchema.Compile() -> XmlSchema.CompileSubset().
247 Removed SchemaCollection which became unneccessary.
248 Added NamedIdentities and IDCollection.
249 XmlSchema.Compile() -> XmlSchema.CompileSubset().
250 * XmlSchemaAttributeGroupRef.cs, XmlSchemaXPath.cs
251 XmlSchemaSimpleTypeList.cs, XmlSchemaComplexContentRestriction.cs,
252 XmlSchemaGroup.cs, XmlSchemaComplexContentExtension.cs,
253 XmlSchemaSequence.cs, XmlSchemaSimpleContentRestriction.cs,
254 XmlSchemaSimpleContentExtension.cs, XmlSchemaAny.cs,
255 XmlSchemaElement.cs, XmlSchemaNotation.cs, XmlSchemaAll.cs,
256 XmlSchemaComplexType.cs, XmlSchemaAnnotation.cs,
257 XmlSchemaAttributeGroup.cs, XmlSchemaSimpleTypeRestriction.cs,
258 XmlSchemaSimpleContent.cs, XmlSchemaGroupRef.cs,
259 XmlSchemaChoice.cs, XmlSchemaSimpleType.cs,
260 XmlSchemaIdentityConstraint.cs, XmlSchemaSimpleTypeUnion.cs,
261 XmlSchemaAnyAttribute.cs, XmlSchemaComplexContent.cs,
262 XmlSchemaAttribute.cs, XmlSchemaObject.cs :
263 removed XmlSchemaObject.IsCompiled(). Check compilation state by
264 comparing compilation ID directly.
266 2006-07-25 Atsushi Enomoto <atsushi@ximian.com>
268 * XmlSchema.cs : mutual schema import was failing because the
269 compiling schema's SourceUri was not enlisted for nest check.
271 2006-03-02 Atsushi Enomoto <atsushi@ximian.com>
273 * XmlSchema.cs : seems like there is XmlSchemaExternal.Schema property
274 that is filled after Compile(). Fixed bug #77687.
276 2006-03-01 Atsushi Enomoto <atsushi@ximian.com>
278 * XmlSchemaAppInfo.cs, XmlSchemaDocumentation.cs : seems like MS
279 implementation fills empty node set for empty xs:appinfo and
280 xs:documentation and waste memory. Fixed bug #77685.
282 2006-02-28 Gert Driesen <drieseng@users.sourceforge.net>
284 * XmlSchema.cs: Do not define namespace for zero-length TargetNamespace
285 and report XmlSchemaException when compiling XmlSchema with
286 zero-length TargetNamespace.
288 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
290 * BuiltInDatatype.cs : anyURI could be such relative path that
291 contains ':' in the middle. It also affects on relaxng validation.
293 2006-01-25 Atsushi Enomoto <atsushi@ximian.com>
295 * XmlSchemaValidationException.cs : fixed .ctor() signatures.
297 2006-01-11 Atsushi Enomoto <atsushi@ximian.com>
299 * XmlSchemaAttribute.cs, XmlSchemaElement.cs : AttributeSchemaType
300 and ElementSchemaType were not working fine for anySimpleType.
301 * XmlSchemaValidator.cs : When actual schema type was complex,
302 schema types was not filled correctly. Modified some extra comments.
303 * XmlSchemaSet.cs, XmlSchemaType.cs : removed extra MonoTODOs.
305 2006-01-10 Atsushi Enomoto <atsushi@ximian.com>
307 * XmlAtomicValue.cs : it won't be implemented since there is no way
308 to test it inside sys.xml. Thus remarked MonoTODO.
309 * XmlSchemaDatatype.cs : implemented IsDerivedFrom(), which is however
312 2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
314 * XmlSchemaSet.cs : Add() rollbacks IsCompiled to false.
315 Global components are not added when Add() is called.
317 2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
319 * XmlSchemaSet.cs : reverted previous fix; it broke inclusions.
321 2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
323 * XmlSchemaSet.cs : Add() needs (consistent) namespace duplicate check.
325 2006-01-06 Atsushi Enomoto <atsushi@ximian.com>
327 * XmlSchemaSimpleTypeRestriction.cs : maxLength and minLength were
328 likely to be ignored in ValidateNonListValueWithFacets().
329 * XmlSchemaValidator.cs : Don't use normalized string value as the
330 input to AssessStringValid().
332 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
335 Turned out that it also has set_CompilationSettings.
336 * XmlSchemaComplexType. : thus CompilationSettings is nullable, we
337 have to check its existence.
339 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
341 * XmlSchema.cs : Compile() are obsoleted in 2.0.
343 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
345 * XmlSchemaDatatype.cs : TypeCode is virtual in 2.0 RTM.
347 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
349 * XmlSchemaValidationException.cs :
350 oops, there is SourceObject other than SourceSchemaObject.
351 * XmlSchemaCompilationSettings.cs : oops, actually XmlSchemaSet is
352 also used in 1.x profile (internally)
353 * XmlSchemaSimpleTypeList.cs : added set_BaseItemType bogus (just to
354 fill API compatibility).
356 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
358 * XmlSchemaCompilationSettings.cs : new file.
359 * XmlSchemaSet.cs : added CompilationSettings property.
360 * XmlSchemaComplexType.cs : support for EnableUpaCheck.
362 2005-12-08 Atsushi Enomoto <atsushi@ximian.com>
364 * XmlSchemaValidationException.cs : added SetSourceObject() which
365 is just for API compat (it does nothing on MS.NET).
366 Removed #if NET_2_0 inside #if NET_2_0.
368 2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
370 * XmlSchemaSequence.cs : when a subcomponent is not optional
371 (minOccurs!=0) then it should clean previous components up.
372 Really fixed bug #76865.
374 2005-12-01 Atsushi Enomoto <atsushi@ximian.com>
376 * XmlSchemaElement.cs : Fixed ambiguity detection logic so that
377 chameleon ##other (xs:any) does not block other "absent"
378 (empty targetNamespace) element. Fixed bug #76865.
380 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
382 * XmlSchemaValidator.cs : added missing ValidateWhitespace and
383 ValidateText, though the latter I think is LAMESPEC.
385 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
387 * XmlSchemaValidationFlags.cs : updated to match 2.0 RTM.
388 * XmlSchemaValidator.cs : related fix.
390 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
392 * XmlValueGetter.cs, XmlSchemaValidator.cs, XmlSchemaException.cs,
393 XmlSchemaAttribute.cs : Updated API to match 2.0 RTM. Most of the
394 changes are related to XmlValueGetter change.
396 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
398 * XmlSchemaValidator.cs : sealed.
399 * ValidationEventArgs.cs : not sealed in 2.0.
400 * XmlSchemaCollection.cs : added private ICollection.Count (to erase
401 IsVirtual difference).
403 2005-10-17 Lluis Sanchez Gual <lluis@novell.com>
405 * XmlSchemaSerializer.cs: Arrays of XmlNode don't
406 need to be all XmlElments. Fix by Atsushi for bug #76288.
408 2005-09-30 Atsushi Enomoto <atsushi@ximian.com>
410 * XmlSchemaUtil.cs: (GetParserContext) if reader is not internal
411 IHasXmlParserContext, silently return null. This is for NVDL xsd
414 2005-09-30 Atsushi Enomoto <atsushi@ximian.com>
416 * XmlSchema.cs : XmlReader position after Read() is the end of the
419 2005-09-25 Atsushi Enomoto <atsushi@ximian.com>
421 * XmlSchemaBuiltInType.cs : removed obsolete beta file.
423 2005-09-25 Atsushi Enomoto <atsushi@ximian.com>
425 * XmlSchemaValidationFlags.cs, XmlSchemaValidator.cs :
428 2005-08-31 Sebastien Pouliot <sebastien@ximian.com>
430 * XmlSchemaException.cs: Added a Demand for SerializationFormatter
431 on GetObjectData method.
433 2005-08-25 Atsushi Enomoto <atsushi@ximian.com>
435 * XmlSchemaSimpleTypeRestriction.cs : normalize EOL.
436 Remove non-ASCII letters.
438 2005-08-08 Atsushi Enomoto <atsushi@ximian.com>
440 * XmlSchemaComplexType.cs : Fixed ValidateTypeDerivationOK (complex)
441 that missed primitive simple types as base types (BaseXmlSchemaType
442 is not working fine; it is the actual culprit to be fixed).
444 XmlSchemaAttributeGroup.cs,
445 XmlSchemaComplexType.cs :
446 fixed XmlSchemaUtil.ValidateAttributesResolved(). If there is a
447 corresponding attribute definition in the derived extension type,
448 then it should be allowed.
450 2005-08-06 Gert Driesen <drieseng@users.souceforge.net>
452 * XmlSchema.cs: XmlElementAttribute, XmlAttributeAttribute and
453 DefaultValueAttribute corrections to match MS.NET.
455 * XmlSchemaAnnotated.cs:
456 * XmlSchemaAnnotation.cs:
457 * XmlSchemaAppInfo.cs:
458 * XmlSchemaAttribute.cs:
459 * XmlSchemaAttributeGroup.cs:
460 * XmlSchemaChoice.cs:
461 * XmlSchemaComplexContent.cs:
462 * XmlSchemaComplexContentExtension.cs:
463 * XmlSchemaComplexContentRestriction.cs:
464 * XmlSchemaComplexType.cs:
465 * XmlSchemaDocumentation.cs:
466 * XmlSchemaElement.cs:
467 * XmlSchemaExternal.cs:
469 * XmlSchemaIdentityConstraint.cs:
470 * XmlSchemaImport.cs:
471 * XmlSchemaInclude.cs:
472 * XmlSchemaRedefine.cs:
473 * XmlSchemaSequence.cs:
474 * XmlSchemaSimpleContent.cs:
475 * XmlSchemaSimpleContentExtension.cs:
476 * XmlSchemaSimpleContentRestriction.cs:
477 * XmlSchemaSimpleType.cs:
478 * XmlSchemaSimpleTypeList.cs:
479 * XmlSchemaSimpleTypeRestriction.cs:
480 * XmlSchemaSimpleTypeUnion.cs:
483 2005-08-03 Gert Driesen <drieseng@users.sourceforge.net>
485 * XmlSchemaInference.cs: Is sealed in Beta 2.
486 * XmlSchemaInfo.cs: Added ContentType property.
487 * XmlSchemaObjectEnumerator.cs: No longer sealed in Beta 2.
488 * XmlSchemaSet.cs: No longer sealed in Beta 2. XmlResolver property
491 2005-07-04 Atsushi Enomoto <atsushi@ximian.com>
493 * XmlSchemaDatatype.cs, XmlSchemaParticle.cs, XmlSchemaContent.cs,
494 XmlSchemaFacet.cs : eliminated internal abstract members.
496 2005-06-11 Atsushi Enomoto <atsushi@ximian.com>
498 * XmlSchemaCollection.cs, XmlSchemaCollectionEnumerator.cs :
499 GetEnumerator() was not in sync with the internal change to
500 XmlSchemaSet. Fixed bug #75126. Patch by Crestez Leonard.
502 2005-06-07 Atsushi Enomoto <atsushi@ximian.com>
504 * XmlSchemaValidationFlags.cs : it is NET_2_0.
506 2005-05-23 Atsushi Enomoto <atsushi@ximian.com>
508 * XmlSchemaInference.cs : For each resulting schema, it has to emit
509 xs:import when it has a reference to external schema components.
511 2005-05-22 Atsushi Enomoto <atsushi@ximian.com>
513 * XmlSchemaInference.cs : When doing lax inference, set minOccurs="0"
514 of those elements in a sequence. Fixed misspellings.
516 2005-05-05 Atsushi Enomoto <atsushi@ximian.com>
518 * XmlAtomicValue.cs : moved from XPathAtomicValue, removed some stuff.
520 2005-05-05 Atsushi Enomoto <atsushi@ximian.com>
522 * XmlSchemaType.cs, XmlSchemaSimpleType.cs : removed ValueConverter.
523 * XmlSchemaDatatype.cs,
524 XmlSchemaComplexType.cs : removed removed member in .net 2.0 beta2.
526 2005-04-12 Lluis Sanchez Gual <lluis@novell.com>
528 * XmlSchemaParticle.cs: Set MaxOccurs to unbounded when set to
531 2005-03-22 Atsushi Enomoto <atsushi@ximian.com>
533 * XmlSchemaChoice.cs : commented out warned code.
534 * XmlSchemaCollection.cs : removed warned code (now it all depends on
537 2005-01-25 Martin Baulig <martin@ximian.com>
539 * XmlSchemaSet.cs (XmlSchemaSet.XmlResolver): Mark this as
540 not CLS-compliant to avoid a CS3025.
542 * XmlSchemaType.cs (XmlSchemaType.ValueConverter): Mark this as
543 not CLS-compliant to avoid a CS3025.
545 2005-01-17 Atsushi Enomoto <atsushi@ximian.com>
547 * XmlSchema.cs : XmlSchema.Write() should not write duplicating
548 top-level entry in XmlSerializerNamespaces and XmlNamespaceManager.
549 This fixes some DataSet bugs.
551 2005-01-17 Atsushi Enomoto <atsushi@ximian.com>
553 * XmlSchemaValidator.cs : in case of open start tag,
554 ValidateEndElement() calls ValidateEndOfAttributes().
556 2005-01-17 Atsushi Enomoto <atsushi@ximian.com>
558 * xmlschemagen.config,
559 XmlSchemaSerializer.cs : replacement of CustomSerializer.cs which was
560 based on genxs but manually modified.
561 * CustomSerializer.cs : removed.
563 2005-01-11 Atsushi Enomoto <atsushi@ximian.com>
565 * XmlSchema.cs : Write() should handle carefully output
566 namespace/prefix mapping.
568 2004-12-26 Atsushi Enomoto <atsushi@ximian.com>
570 * XmlSchemaSet.cs : added Remove(), RemoveRecursive(), Reprocess().
571 * XmlValueConverter.cs : implemented almost all the feature.
572 * XmlSchemaSimpleType.cs : fixed some built-in types.
573 * XmlSchemaType.cs : added ValueConverter property.
575 2004-12-22 Atsushi Enomoto <atsushi@ximian.com>
577 * XmlSchema.cs : XmlResolver.ResolveUri() may return null.
579 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
581 * XmlSchemaValidator.cs : ValidateElement() was not LAMESPEC. Added
582 some comments on ValidateEndElement().
584 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
586 * XmlSchemaValidator.cs : fill schemaInfo as long as possible right now.
588 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
590 * XmlSchemaInfo.cs : added internal copy constructor.
592 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
594 * XmlSchemaValidator.cs : implemented GetExpectedParticles() and
597 2004-12-15 Atsushi Enomoto <atsushi@ximian.com>
599 * XmlSchemaSet.cs : set default resolver. Clear components before
601 * XmlSchemaValidator.cs :
602 SourceUri is System.Uri.
603 GetUnspecifiedDefaultAttributes() is allowed only when it is inside
606 Added duplicate attribute check.
607 Added ValidateElement() that takes xsi:* parameters.
608 (http://lab.msdn.microsoft.com/productfeedback/viewfeedback.aspx?feedbackId=7fc38ea1-c306-4fb7-8631-0e174b0ff3c6)
609 HandleXsiNil() now just takes string parameter.
611 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
613 * XmlSchemaValidator.cs : implemented basic validation feature.
615 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
617 * XmlSchemaUtil.cs : added FindAttributeDeclaration() and
618 AttributeWildcardItemValid().
620 2004-12-11 Atsushi Enomoto <atsushi@ximian.com>
622 * XmlSchemaUtil.cs : added static ReadTypedValie().
623 * XmlSchemaInference.cs : compile at the end of inference.
625 2004-12-08 Atsushi Enomoto <atsushi@ximian.com>
628 XmlSchemaValidationFlags.cs,
629 XmlSchemaValidator.cs : added.
630 * XmlSchemaSet.cs : XmlResolver is now internally gettable.
632 2004-12-04 Atsushi Enomoto <atsushi@ximian.com>
634 * XmlSchemaObject.cs : added Parent.
637 XmlSchemaAttribute.cs,
638 XmlSchemaAttributeGroup.cs,
640 XmlSchemaComplexType.cs,
641 XmlSchemaSequence.cs,
644 XmlSchemaIdentityConstraint.cs,
645 XmlSchemaComplexContent.cs,
646 XmlSchemaSimpleContent.cs,
647 XmlSchemaSimpleContentExtension.cs,
648 XmlSchemaSimpleContentRestriction.cs,
649 XmlSchemaComplexContentExtension.cs,
650 XmlSchemaComplexContentRestriction.cs,
651 XmlSchemaSimpleType.cs,
652 XmlSchemaSimpleTypeRestriction.cs,
653 XmlSchemaSimpleTypeList.cs,
654 XmlSchemaSimpleTypeUnion.cs : Fill Parent on Compilation.
656 * XmlSchemaException.cs,
657 XmlSchemaInferenceException.cs,
658 XmlSchemaValidationException.cs : added SecurityPermissionAttribute.
660 2004-12-04 Atsushi Enomoto <atsushi@ximian.com>
662 * XmlSchemaComplexType.cs : simplify Compile().
664 2004-11-25 Atsushi Enomoto <atsushi@ximian.com>
666 * XmlSchemaElement.cs,
667 XmlSchemaComplexType.cs,
670 XmlSchemaSimpleType.cs,
671 XmlSchemaObjectTable.cs,
672 XmlSchemaObjectCollection.cs,
673 XmlSchemaCollection.cs,
674 : All changes are just for warning removal.
676 2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
678 * XmlSchemaDatatype.cs : added ParseValue() override.
679 * XmlSchemaSimpleTypeList.cs,
680 XmlSchemaSimpleTypeUnion.cs : #if NET_2_0 some private fields,
681 just for eliminating warnings :(
682 * XmlSchemaSet.cs : commented some fields currently not in use.
683 It is for eliminating warnings.
684 * XmlSchemaSimpleTypeRestriction.cs : removed exception field name
685 to eliminate warning.
686 * XmlSchemaException.cs : hasLineInfo is also runtime serialized now.
688 2004-11-22 Atsushi Enomoto <atsushi@ximian.com>
690 * XmlSchemaException.cs : Message is only 1.x (not 2.0).
691 * XmlSchemaInference.cs : use more static readonly QName fields.
692 Type merge inference now traverses every base types.
693 * XmlSchemaInfo.cs : added new file.
695 2004-11-18 Atsushi Enomoto <atsushi@ximian.com>
697 * XmlSchemaException.cs : added .ctor(string).
698 * XmlSchemaInferenceException.cs : use base.ctor(string).
699 * XmlSchemaValidationException.cs : It is 2.0 class. Added some .ctor()
701 2004-11-18 Atsushi Enomoto <atsushi@ximian.com>
703 * XmlSchemaCollection.cs : obsolete.
704 * XmlSchemaInference.cs :
705 Fixed typo in enum. It is still MonoTODO. Reformatted code a bit.
707 2004-11-17 Atsushi Enomoto <atsushi@ximian.com>
709 * XmlSchemaSet.cs : don't set TargetNamespace = "".
711 2004-11-17 Atsushi Enomoto <atsushi@ximian.com>
713 * XmlSchemaInferenceDesign.txt : added (incomplete though.)
715 2004-11-17 Atsushi Enomoto <atsushi@ximian.com>
717 * XmlSchemaValidationException.cs : added.
719 2004-11-17 Atsushi Enomoto <atsushi@ximian.com>
721 * XmlSchemaInference.cs,
722 XmlSchemaInferenceException.cs : added.
724 2004-11-17 Atsushi Enomoto <atsushi@ximian.com>
726 * XmlSchemaException.cs : removed get_Message in 2.0 profile (all done
729 2004-11-08 Atsushi Enomoto <atsushi@ximian.com>
731 * XmlSchemaSet.cs : use NameTable when creating XmlTextReader.
733 2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
735 * XmlSchemaSet.cs : reduced extraneous XmlSchemaObjectTable creation.
737 2004-11-05 Atsushi Enomoto <atsushi@ximian.com>
739 * XmlSchemaSimpleTypeList.cs,
740 XmlSchemaSimpleTypeUnion.cs : XmlIgnore.
742 2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
744 * XmlSchemaAttribute.cs : AttributeSchemaType could be determined on
745 compilation time. AttributeType is obsolete.
746 * XmlSchemaElement.cs : ditto for ElementSchemaType and ElementType.
748 2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
750 * XmlSchemaComplexType.cs : added LocalElements, with the description
751 why it can never be correct implementation.
752 * XmlSchemaUtil.cs : use IHasXmlParserContext.
754 2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
756 * XmlSchemaSimpleTypeUnion.cs : Added 2.0 BaseMemberTypes property
757 (this property name is also ambiguous and should be changed too.)
759 2004-10-29 Atsushi Enomoto <atsushi@ximian.com>
761 * XmlSchemaSimpleTypeList.cs : Added 2.0 BaseItemType property (BTW
762 this property name is really ambiguous and should be changed.)
764 2004-10-28 Atsushi Enomoto <atsushi@ximian.com>
766 * XmlSchemaAttributeGroup.cs, XmlSchemaGroup.cs :
767 in 2.0, QualifiedName properties are public.
768 * XmlSchemaType.cs : TypeCode is [XmlIgnore] (anyways ignored though).
770 2004-10-22 Atsushi Enomoto <atsushi@ximian.com>
772 * XmlSchemaType.cs : Implemented GetBuiltInComplexType(XmlTypeCode).
774 2004-09-22 Atsushi Enomoto <atsushi@ximian.com>
776 * XmlSchemaDatatype.cs : handle xdt:* types in FromName().
778 2004-09-16 Atsushi Enomoto <atsushi@ximian.com>
780 * BuiltInDatatype.cs, SchemaDataValueType.cs :
781 ParseValue() for xs:AnyURI should return System.Uri. MS.NET returns
782 XmlSchemaUri, but it is derived from System.Uri, while ours was not.
784 2004-09-07 Atsushi Enomoto <atsushi@ximian.com>
786 * IXmlType.cs : deprecated in .NET 2.0.
788 2004-09-03 Atsushi Enomoto <atsushi@ximian.com>
790 * XmlSchema.cs : When schema inclusion results in a recursion, just
791 skip recursed schema.
792 * BUGS-MS.txt : added another entry. Reflected response from Microsoft.
794 2004-08-30 Atsushi Enomoto <atsushi@ximian.com>
796 * XmlSchemaType.cs : quick build fix.
798 2004-08-30 Atsushi Enomoto <atsushi@ximian.com>
800 * XmlSchemaDatatype.cs : Removed FromName(localName) that cannot
802 * XmlSchemaType.cs : added internal GetBuiltInType() methods that
803 mix GetBuiltInSimpleType() and GetBuiltInComplexType().
805 2004-08-25 Atsushi Enomoto <atsushi@ximian.com>
807 * XmlSchemaSimpleType.cs : Fill list types such as xs:IDREFS.
809 Fixed TypeCode more (broken on predefined list types and xs:anyType).
811 2004-08-25 Atsushi Enomoto <atsushi@ximian.com>
814 anyType was anonymous, thus GetBuiltInComplexType() didn't work.
816 2004-08-24 Atsushi Enomoto <atsushi@ximian.com>
818 * XmlSchemaType.cs : return XmlTypeCode.AnyAtomicType for
819 anySimpleType's TypeCode property.
821 2004-08-10 Atsushi Enomoto <atsushi@ximian.com>
823 * XmlSchema.cs : Replace XmlSchemaCollection with XmlSchemaSet that
824 used to maintain compiled schema state.
825 Simplified code a bit (Include processing).
826 Set IsCompiled = true only when successfully compiled.
827 * XmlSchemaCollection.cs : Now it totally delegates its processing
828 to XmlSchemaSet. Removed unused methods.
829 * XmlSchemaElement.cs : Added post-compiled information initializer
830 method, and call it before (re)Compile().
832 - Replaced internal store from Dictionary to List, since schema
833 resources for one target namespace can be more than one (that's why
834 - Schemas(string targetNamespace) returns ICollection).
835 - Now global schemaset members are added per schema addition (it is
836 more MS compatible than before).
837 - Use GetSafeNs() to do targetNamespace comparison correctly.
839 XmlSchemaSet looks still unstable, so it will be changed again.
841 * XmlSchemaSimpleTypeRestriction.cs,
842 XmlSchemaSimpleTypeUnion.cs,
843 * XmlSchemaUtil.cs : Consider xdt namespace.
845 2004-08-10 Atsushi Enomoto <atsushi@ximian.com>
847 * XmlSchemaCollection.cs : replaced CRLF to LF (they were mixed).
849 2004-08-10 Atsushi Enomoto <atsushi@ximian.com>
851 * XmlSchema.cs : code reformatting. convert CRLF to LF.
852 Use String.Format() instead of +. Removed commented code.
854 2004-07-28 Atsushi Enomoto <atsushi@ximian.com>
856 * BuiltInDatatype.cs : use XmlQualifiedName.Parse().
858 2004-07-23 Atsushi Enomoto <atsushi@ximian.com>
860 * XmlSchema.cs : Added internal XdtNamespace constant. don't fill
861 schemaset compoenents here.
862 * XmlSchemaAttribute.cs : Implemented AttributeSchemaType.
863 * XmlSchemaElement.cs : Implemented ElementSchemaType.
864 * XmlSchemaSimpleType.cs : Added predefined simple types
865 * XmlSchemaType.cs : Implemented GetBuiltInSimpleType().
866 * XmlSchemaDatatype.cs : Allow Xdt namespaces too (not completed;
867 quick fix for GetBuiltInSimpleType()).
869 2004-07-21 Atsushi Enomoto <atsushi@ximian.com>
871 * BUGS-MS.txt : updated including answer excerpts from MS team.
872 * BUGS.txt : it turned out that some bugs I wrote as "MS bugs" are
873 actually my bug. Noted them.
874 * BuiltInDatatype.cs :
875 Commented out extraneous [CLSCompliant].
876 Switch ParseValue() argument as IXmlNamespaceResolver for 2.0, and
877 XmlNamespaceManager for 1.x.
878 Added TypeCode overrides.
879 * XmlSchemaDatatype.cs : Added 2.0 members.
880 Switch IXmlNamespaceResolver and XmlNamespaceManager.
881 * XmlSchemaType.cs : Added some NET_2_0 members. removed old 1.2 stuff.
883 2004-07-13 Atsushi Enomoto <atsushi@ximian.com>
885 * XmlSchemaBuiltInType.cs, XmlSchemaValidity.cs, XmlTypeCode.cs
886 : fixed annoying enum errors.
887 * XmlSchemaCollection.cs : completely delegate to XmlSchemaSet.
888 * XmlSchemaSet.cs : sealed classes. Use ListDictionary (avoid annoying
889 order preservation matter). NameTable null check for .ctor().
890 Fill GlobalAttributes, GlobalElements, GlobalTypes correctly.
891 Add(string, XmlReader) checks namespace conflicts, while
892 Add(XmlSchema) does not. Fixed Schemas() return type.
894 2004-07-11 Atsushi Enomoto <atsushi@ximian.com>
896 * XmlSchemaDatatypeVariety.cs : Fixed class name typo.
897 * XmlValueConverter.cs : fixed return types.
899 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
901 * CustomSerializer.cs, XmlSchemaException.cs,
902 XmlSchemaParticle.cs, XmlSchemaSimpleTypeRestriction.cs
905 2004-06-10 Atsushi Enomoto <atsushi@ximian.com>
907 * XmlSchemaFacet.cs : Fixed internal protected --> internal.
909 2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
911 * XmlSchema.cs : Make sure to close url-based XmlTextReader.
913 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
915 * BuiltInDatatype.cs,
917 XmlSchemaSimpleTypeRestriction.cs,
918 XmlSchemaXPath.cs : modified some enum const to static readonly
919 (.NET 1.0 does not allow it). Use safe overload of LookupNamespace().
921 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
923 * XmlSchemaDatatypeVariety.cs,
924 XmlSchemaValidity.cs : they are NET_2_0 enums.
926 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
928 * XmlValueConverter.cs : missed NET_2_0.
930 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
934 XmlSchemaDatatypeVariety.cs,
935 XmlSchemaValidity.cs,
937 XmlValueConverter.cs : added.
939 * XmlSchemaInfo.cs : removed (.NET 1.2).
941 * XmlSchemaBuiltInType.cs,
942 XmlSchemaSet.cs : updated.
944 2004-05-19 Atsushi Enomoto <atsushi@ximian.com>
946 * CustomSerializer.cs : Added custom serializer for XmlSchema, that is
947 generated by SerializationCodeGenerator and edited a bit.
948 * XmlSchema.cs : Use XmlSchemaSerializationWriter.
950 2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
952 * XmlSchema.cs : Removed FIXME. No PSVI required.
953 * XmlSchemaAll.cs : Removed FIXME. It was not done.
954 * XmlSchemaAttributeGroupRef.cs : Removed FIXME. It can be annotated.
955 * XmlSchemaChoice.cs : not FIXME but LAMESPEC.
956 * XmlSchemaSimpleTypeRestriction.cs : Added check for non
957 XmlSchemaFacet items on Compile(). Thus removed FIXME.
958 * XmlSchemaUtil.cs : Fixed SplitList to handle sequential spaces.
960 * XmlSchemaObjectTable. cs: modified to use HybridDictionary (mostly
961 for avoiding iterator order difference).
963 2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
965 * XmlSchemaSimpleTypeRestriction.cs : Removed MonoTODO. done.
967 2004-05-12 Atsushi Enomoto <atsushi@ximian.com>
969 * BuiltInDatatype.cs : made classes/enums internal.
971 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
973 * BuiltInDatatype.cs : trivia fix
975 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
977 * BuiltInDatatype.cs : added BUGGY_MS_COMPLIANT condition and that
978 handles ms-compatible properties.
979 * XmlSchemaComplexType.cs : ditto for ContentTypeParticle of xs:anyType.
980 Make sure ContentType for xs:anyType is Mixed.
981 * XmlSchemaUtil.cs : ditto for <xs:attribute use="prohibited" ..>
983 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
985 * XmlSchema.cs : Write() handles schema namespace for xmlserializer
986 (it does not look to be handled inside xmlserializer).
988 2004-04-27 Atsushi Enomoto <atsushi@ximian.com>
990 * XmlSchemaComplexType.cs : Set basetype as ur-type for such complex
991 type that has an immediate Particle (W3C specified as restriction
994 2004-04-27 Atsushi Enomoto <atsushi@ximian.com>
996 * XmlSchemaAttribute.cs : When type was inline simple type, it is not
998 * XmlSchemaSimpleType.cs : When Content was restriction, DataType was
999 not indicating base type's Datatype correctly.
1001 2004-04-06 Atsushi Enomoto <atsushi@ximian.com>
1003 * XmlSchemaDatatype.cs : optimized Normalize() not to create
1004 extraneous string objects.
1006 2004-03-15 Atsushi Enomoto <atsushi@ximian.com>
1008 * reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to
1009 reject incorrect schemas ;-)
1011 2004-03-04 Alon Gazit <along@mainsoft.com>
1013 * XmlSchemaUnique.cs : Changed Read implementation.
1014 Currently can read "field" element before "selector" element (like MS).
1016 2004-02-26 Atsushi Enomoto <atsushi@ximian.com>
1018 * XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized
1019 (as always synchronized).
1021 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
1024 XmlSchemaAttribute.cs
1025 XmlSchemaAttributeGroup.cs,
1026 XmlSchemaComplexContent.cs,
1027 XmlSchemaComplexType.cs,
1028 XmlSchemaContent.cs,
1029 XmlSchemaDatatype.cs,
1030 XmlSchemaNotation.cs,
1032 XmlSchemaParticle.cs : extra TODO removal. foreach elimination.
1033 Moved attribute group recursion check field from XmlSchemaObject
1034 to XmlSchemaAttributeGroup.
1035 Fixed XmlSchemaParticle.EmptyParticle class access modifier.
1036 * XmlSchemaSimpleType.cs,
1037 XmlSchemaSimpleTypeContent.cs,
1038 XmlSchemaSimpleTypeList.cs,
1039 XmlSchemaSimpleTypeRestriction.cs,
1040 XmlSchemaSimpleTypeUnion.cs : Removed "actualBaseSchemaType" field
1041 and the owner simpleType should hold the corresponding type info.
1042 Collect base type info in prior to validation.
1044 2004-02-05 Atsushi Enomoto <atsushi@ximian.com>
1046 * BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014.
1049 2004-02-03 Atsushi Enomoto <atsushi@ximian.com>
1051 * BuiltInDatatype.cs : Fixed some Parse() for token based datatypes.
1052 * XmlSchemaAny.cs : set properties for cloned particle. This will fix
1054 * XmlSchemaParticle.cs : copy occurence string after computation of
1055 validated min/max occurence. This will fix bug #53667.
1057 2004-01-26 Atsushi Enomoto <atsushi@ximian.com>
1059 * XmlSchema.cs : Raise warning event when external schema could not
1061 * XmlSchemaAll.cs : Fixed incorrect IsEmptiable computation.
1062 * XmlSchemaAny.cs : Fixed incorrect occurence computation.
1063 * XmlSchemaChoice.cs : compiledItems were incorrectly appended.
1064 * XmlSchemaComplexType.cs : Now validatableParticle became extraneous.
1065 * XmlSchemaGroupBase.cs : Here we should not get optimized particle
1066 because it might cause infinite loop.
1067 * XmlSchemaGroupRef.cs : Fixed Validate() to avoid null reference
1068 exception (only occur with ValidationEventHandler). Fixed Occurence
1069 embedding logic that was useless because of particle optimization.
1071 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
1073 * BuiltInDatatype.cs : On parsing QName, we don't have to spend costs
1074 on Add()ing parsed name to name table.
1075 * XmlSchemaUtil.cs : Added IsBuiltInDatatypeName().
1076 * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs,
1077 XmlSchemaElement.cs, XmlSchemaSimpleContentExtension.cs,
1078 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeList.cs :
1079 Use the method above instead of Namespace string comparison.
1080 (it will be required to validate schema for schemas.)
1081 * XmlSchemaComplexType.cs : Type Derivation OK (3.4.6) should also
1082 treat null base type as anyType. Derivation Valid Restriction
1083 (3.4.6) should allow base type wildcard absense in case of anyType.
1085 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
1087 * XmlSchema.cs : When we have schema A which includes schema B which
1088 includes schema C (i.e. A->B->C), C components should be compiled.
1089 Here, same URL inclusions are ignored.
1090 * XmlSchemaElement.cs : Hack for missing substitution-group fix.
1091 * XmlSchemaSimpleTypeContent.cs : make actualBaseSchemaType private
1092 and initialize. This fixes bug #53178.
1093 * XmlSchemaSimpleTypeUnion.cs : Forgot to commit ;)
1095 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
1097 * XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify
1098 pattern string as "^str$" and convert WXS specific char classes into
1099 .NET regexp patterns.
1101 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
1104 - Removed extra property Language. Fill substitution-group info
1105 before ContentTypeParticle is computed.
1106 * XmlSchemaComplexType.cs : ContentType and ContentTypeParticle are
1107 now computer before Validate() (to exclude 3.4.2 from 3.4.6
1108 component constraint check).
1109 * XmlSchemaObject.cs, XmlSchemaParticle.cs :
1110 Added CopyInfo() for cloning objects.
1111 * XmlSchemaObjectTable.cs :
1112 Add() doesn't have to reject same named items.
1113 * XmlSchemaParticle.cs :
1114 - Renamed internal class XmlSchemaParticleEmpty to EmptyParticle
1115 (for ease of post compilation infoset comparison).
1116 - GetMinEffectiveTotalRange() should return max occurs for element and
1118 * XmlSchemaParticle.cs,
1122 XmlSchemaElement.cs,
1123 XmlSchemaGroupBase.cs,
1124 XmlSchemaGroupRef.cs,
1125 XmlSchemaSequence.cs :
1126 - Removed ActualParticle property.
1127 - Added GetOptimizedParticle() to get ContentTypeParticle.
1128 - ContentTypeParticle is now created as different object from
1129 user-specified "Particle" property.
1130 - Return Empty particle when model groups contains no Items.
1131 - When Items contains exactly 1 item, return the item (unless it is
1132 top level choice model group - it causes DBR problem).
1133 - ValidateDerivationValidRestriction() and related WXS 3.9.6 DBR
1134 check methods such as ValidateNSRecurseCheckCardinality() now
1135 returns a bool value and avoids exceptions on each failure time.
1136 - ValidateRecurse() now doesn't progress base particle incorrectly.
1137 (it caused incorrect order-preserving-mapping error.)
1138 - 3.9.6 Recurse, RecurseLax, MapAndSum are now treated as different.
1139 * XmlSchemaAll.cs : occurence validation shoud be done against values
1140 after computation (ValidatedMaxOccurs).
1141 * XmlSchemaChoice.cs : When Items is empty, then invoke warning event.
1142 * XmlSchemaElement.cs :
1143 - Consider referencedElement also for SubstitutionGroupElement.
1144 - Removed SubstitutingChoice which is not in use.
1145 - when it was targeted as substitution group by other elements, its
1146 ContentTypeParticle should be substitution choice (see 3.9.6
1147 Particle Valid (Restriction) term 2.1).
1148 - Added FillsubstitutionElementInfo() (see XmlSchema.cs above).
1149 * XmlSchemaGroup.cs : Removed extra check on model group (because it
1150 is impossible to specify non-model-group particle).
1151 * XmlSchemaIdentityConstraint.cs,
1154 XmlSchemaUnique.cs : Removed extraneous MonoTODO.
1155 * XmlSchemaSimpleContent.cs : Made actualSchemaType as internal.
1156 * XmlSchemaSimpleType.cs : Removed extraneous new Datatype property.
1157 * XmlSchemaSimpleTypeRestriction.cs : Renamed actualBaseSchemaType to
1158 ActualBaseSchemaType.
1159 * XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
1160 Removed unused actualBaseSchemaType code.
1161 * XmlSchemaType.cs : use recently introduced BaseXmlSchemaType.
1162 * XmlSchemaUtil.cs : Removed unused CheckLanguage().
1164 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
1166 * XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was
1167 incorrectly treated.
1169 2004-01-20 Atsushi Enomoto <atsushi@ximian.com>
1171 * SchemaDataValueType.cs : UriValueType.ToString() should return
1172 actual URI string (as MS's XmlSchemaUri class does).
1173 * XmlSchemaReader.cs : Make it internal.
1175 2004-01-16 David Sheldon <dave-mono@earth.li>
1177 * BuiltInDatatype.cs: added guard to stop index out of range error for
1178 invalid Base64 characters.
1180 2004-01-15 Jackson Harper <jackson@ximian.com>
1182 * XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes
1185 2004-01-15 Atsushi Enomoto <atsushi@ximian.com>
1187 * XmlSchemaComplexContentExtension.cs,
1188 XmlSchemaSimpleContentExtension.cs,
1189 XmlSchemaSimpleContentExtension.cs,
1190 XmlSchemaSimpleContentRestriction.cs,
1191 XmlSchemaContent.cs : Added IsExtension. GetXXX() became nonvirtual.
1192 * XmlSchemaType.cs :
1193 - Added NET_2_0 BaseXmlSchemaType (other members are commented out).
1194 - Now BaseSchemaType redirects to new property BaseXmlSchemaType.
1195 * XmlSchemaComplexType.cs :
1196 - Now it fully uses BaseXmlSchemaType above.
1197 - Since ValidateXXX() became too huge, I divided them into
1198 CollectXXX() [spec 3.4.1] and ValidateXXX() [spec 3.4.3 / 3.4.6].
1199 Schema Components are contributed before constraint check.
1200 - Now ContentTypeParticle is distinguished from validating particle
1201 which is newly introduced as "ValidatableParticle" (only used in
1202 XsdValidatingReader).
1203 * XmlSchemaSimpleType.cs : Now it uses BaseXmlSchemaType.
1204 capitalized internal members a bit.
1206 2004-01-14 David Sheldon <dave-mono@earth.li>
1208 * XmlSchemaSimpleTypeRestriction: Convert pattern facets to be ORed,
1209 as per: http://www.w3.org/TR/xmlschema-2/#src-multiple-patterns
1212 2004-01-14 David Sheldon <dave-mono@earth.li>
1214 * BuiltInDatatype.cs:
1215 XsdAnySimpleType - Added Length that returns the string length.
1216 XsdBase64Binary - Added Length, and used more direct, less fussy,
1218 XsdHexBinary - Added Length method
1220 * XmlSchemaSimpleTypeRestriction: use DataType Length method to
1221 determine length to compare against. Stop testing Lenght facets on
1222 QName and Notation types (as per errata)
1224 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
1226 * XmlSchemaComplexType.cs : forgot to commit ;)
1227 * XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false
1228 for comparison between ID and IDREF.
1230 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
1232 * Added SchemaDataValueType.cs.
1233 * BuiltInDatatype.cs, XmlSchemaDatatype.cs : Adde ParseValueType() on
1234 all derived datatype classes.
1235 * XmlSchemaComplexType.cs : Fixed ContentType value for simple types.
1236 Errata-considered simple content derivation check and simple content
1237 restriction should check this too.
1239 2004-01-13 Jackson Harper <jackson@ximian.com>
1241 * XmlSchemaComplexType.cs: Comment out line that was breaking the build.
1243 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
1245 * XmlSchemaSimpleTypeUnion.cs : The same reason as the previous patch.
1246 * XmlSchemaComplexType.cs : Now it handles ContentTypeParticle and
1247 ContentType much more presise than before.
1248 * XmlSchemaElement.cs :
1249 Simplified property handling for reference element.
1251 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
1253 * XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs :
1254 Invalid attribute should raise an error, not a warning.
1256 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
1258 * XmlSchemaObject.cs : Fixed error() not to set severity as Warning.
1259 * ValidationHandler.cs,
1261 XmlSchemaCollection.cs : Throw exception only in case of errors.
1262 * XmlSchemaCollection.cs : Remove schema from schemaset if exist.
1263 (It might not be good to use schemaset, but keep for a while)
1264 * XmlSchemaContent.cs,
1265 XmlSchemaComplexContentExtension.cs,
1266 XmlSchemaComplexContentRestriction.cs,
1267 XmlSchemaSimpleContentExtension.cs,
1268 XmlSchemaSimpleContentRestriction.cs,
1269 : added GetBaseTypeName() and GetParticle() (not used yet).
1271 2004-01-11 Atsushi Enomoto <atsushi@ximian.com>
1273 * BuiltInDatatype.cs : internal type should not appear in protected
1276 2004-01-11 David Sheldon <dave-mono@earth.li>
1278 * BuiltInDatatype.cs : Added XsdOrdering enum, and Compare methods
1279 to the data-types. Changed AllowedFacets to be a bitfield.
1281 * XmlSchemaFacet.cs : Added Facet enumeration to represent bitfield.
1283 * XmlSchemaEnumerationFacet.cs,
1284 XmlSchemaFractionDigitsFacet.cs,
1285 XmlSchemaLengthFacet.cs,
1286 XmlSchemaMaxExclusiveFacet.cs,
1287 XmlSchemaMaxInclusiveFacet.cs,
1288 XmlSchemaMaxLengthFacet.cs,
1289 XmlSchemaMinExclusiveFacet.cs,
1290 XmlSchemaMinInclusiveFacet.cs,
1291 XmlSchemaMinLengthFacet.cs,
1292 XmlSchemaNumericFacet.cs,
1293 XmlSchemaPatternFacet.cs,
1294 XmlSchemaTotalDigitsFacet.cs,
1295 XmlSchemaWhiteSpaceFacet.cs : Added ThisFacet Property to return facet type
1298 * XmlSchemaSimpleTypeRestriction.cs: Inherited facets from base types,
1299 checked which which were allowed on different types. Validated fixed
1300 facets, duplicated facets and derivation by restriction. Added checking
1301 for min/max Inclusive/Exclusive, totalDigits and fractionDigits facets in
1304 2004-01-09 Atsushi Enomoto <atsushi@ximian.com>
1306 * XmlSchemaSet.cs : implemented some members.
1307 * XmlSchemaCollection.cs : modified to use internal schema set (This
1308 class provides more precise schema validation feature and will be
1309 commonly used for XPathNavigator2).
1310 Added .NET 1.1 .ctor() which takes XmlResolver.
1311 * XmlSchema.cs : fix related to above changes.
1312 Use validation event handler on Read() at all required places.
1313 Added .NET 1.1 .ctor() which takes XmlResolver.
1314 * XmlSchemaComplexType.cs : content type comparison was incorrect.
1315 Renamed confusing method.
1316 * XmlSchemaElement.cs : don't use ContentTypeParticle in
1317 CheckRecursion(), where that property might not be determined yet.
1318 * XmlSchemaGroupBase.cs : Modified ValidateRecurse() a bit (currently
1320 * XmlSchemaGroupBase.cs,
1323 XmlSchemaSequence.cs : moved CheckRecursion to XmlSchemaGroupBase.
1324 * XmlSchemaObjectTable.cs : Fixed missing error info.
1325 * BUGS-MS.txt : Added info a bit.
1327 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
1329 * BUGS-MS.txt : added list derivation and facet case.
1330 * XmlSchemaComplexType.cs :
1331 Added some description. Avoided null reference exception in
1333 Fixed incorrect 3.4.6 Derivation Valid (Extension) 1.4.1.2.2 and
1334 3.9.6 Particle Valid (Extension) 2.
1335 * XmlSchemaGroupBase.cs : Fixed ParticleEquals() which didn't work
1336 properly against sequence and all.
1338 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
1340 * XmlSchemaObjectTable.cs : Modified enumerator's Current to return
1342 * XmlSchemaComplexType.cs, XmlSchemaUtil.cs :
1343 In reflection to object table enumerator change.
1345 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
1347 * XmlSchemaElement.cs : Fixed incorrect unique particle attribution
1348 check on ##other and target namespace element.
1350 2004-01-08 Nick Drochak <ndrochak@ieee.org>
1352 * XmlSchemaSimpleType.cs: Needed a 'new' on the property
1353 * XmlSchemaXPath.cs: Removed unreachable code.
1355 2004-01-03 Atsushi Enomoto <atsushi@ximian.com>
1357 * XmlSchemaDatatype.cs : trivial allocation fix.
1359 2003-12-17 David Sheldon <dave-mono@earth.li>
1361 * BuiltInDatatype.cs : Added whitespace=collapse to data types
1362 such as date, dateTime, .... gDay. I think I have them all now.
1364 2003-12-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1366 * BuiltInDatatype.cs : anySimpleType should allow facets.
1368 2003-12-14 David Sheldon <dave-mono@earth.li>
1370 * BuiltInDatatype.cs : Added code to tell which facets were valid on
1371 types derived from each basetype.
1373 * XmlSchemaSimpleTypeRestriction.cs : Complain if an invalid facet
1374 has been added to a restriction.
1377 2003-12-14 David Sheldon <dave-mono@earth.li>
1379 * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths
1380 specified are integers. Also made some error messages more useful.
1382 2003-12-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1384 * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
1385 if max/min length range is valid.
1387 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1389 * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace
1390 facet as collapse (patch by David Sheldon).
1391 * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-)
1392 * XmlSchemaSequence.cs : MapAndSum implementation.
1394 2003-11-17 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1396 * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
1397 (for convenience of ObjectSpaces stubbing).
1399 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1401 * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while
1402 the correct binding is sbyte.
1405 XmlSchemaSequence.cs,
1406 XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness
1407 described in WXS structures 3.9.6.
1408 Added ValidateRecurse() to support 'Recurse' validation.
1409 * XmlSchemaComplexType.cs : Removed incorrect content type conformity
1411 * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation
1412 described in WXS structures 3.9.6. Fixed type derivation check to
1413 do only if the base type is not anyType.
1414 * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex()
1415 construction exception. ValidateList... and ValidateNonList... was
1417 * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken().
1419 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1421 * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time.
1422 Fixed most of date-time related types' ParseValue().
1423 Applied Normalize() before parsing values in some ParseValue().
1425 2003-10-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1429 XmlSchemaGroupBase.cs,
1430 XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase.
1432 XmlSchemaElement.cs,
1433 XmlSchemaGroupBase.cs,
1434 XmlSchemaGroupRef.cs,
1435 XmlSchemaParticle.cs,
1436 XmlSchemaSequence.cs : Added ParticleEquals() method to compare
1437 whether the particles are equal in the context of WXS part 1 - 3.9.6.
1438 * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction().
1439 * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my
1440 responsibility on this class.
1441 Added ValidateWildcardAllowsNamespaceName().
1442 * XmlSchemaAttribute.cs : Added ValidatedUse which holds post-
1443 compilation value of "Use".
1444 * XmlSchemaAttributeGroup.cs,
1445 XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other
1446 classes) since there is no more errors on attribute stuff ;-)
1447 * XmlSchemaComplexType.cs : complex content extension must block
1448 derivation from any built-in primitive types.
1449 Fixed wildcard derivation by restriction.
1450 ValidateDerivationByRestriction() now checks attribute related
1451 validity of DBR (derivation by restriction).
1452 Now uses ParticleEquals() for particle DBR check.
1453 * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items.
1455 2003-10-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1458 XmlSchemaUtil.cs : Reduced warning message.
1459 * XmlSchemaAttribute.cs : NotImplementedException should no more exist.
1460 (All things are going to be implemented.)
1461 * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal.
1462 * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented
1463 list type derivation validation. Added Normalize().
1464 * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType
1466 * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation,
1467 such as pattern, enumeration, and length etc.
1469 2003-10-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1471 * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse().
1472 * XmlSchemaCollection.cs : Implemented CopyTo().
1473 * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling.
1474 Added support for anySimpleType.
1475 * XmlSchemaSimpleType.cs : Type specification named as anyType should
1476 be mapped to anySimpleType.
1477 * BUGS-MS.txt : Added more case note.
1479 2003-10-13 Lluis Sanchez Gual <lluis@ximian.com>
1481 * XmlSchema.cs: If the schema element is an empty element, skip it after
1482 reading the attributes.
1484 2003-10-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1486 * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.
1488 2003-10-01 Lluis Sanchez Gual <lluis@ximian.com>
1490 * XmlSchemaUtil.cs: arrayType attribute needs special handling.
1492 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1494 * XmlSchema.cs : Forgot to update with previous files.
1496 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1498 * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs,
1499 XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs,
1500 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs,
1501 XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
1502 Fixed missing sub components check. It should fix soap stuff.
1503 * XmlSchemaAny.cs, XmlSchemaAttribute.cs,
1504 XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs :
1505 Added my responsibility on them ;-)
1507 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1509 * XmlSchema.cs : Read() should keep current position of XmlReader if
1510 it was already positioned to 'schema' element.
1512 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1514 * Forgot to append 8/24/2003 ChangeLog.
1515 * BUGS.txt, BUGS-MS.txt : Appended additional bug info.
1516 * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs,
1517 XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs,
1518 XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs,
1519 XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs,
1520 XmlSchemaChoice.cs, XmlSchemaCollection.cs,
1521 XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
1522 XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
1523 XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs,
1524 XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs,
1525 XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs,
1526 XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs,
1527 XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs,
1528 XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
1529 XmlSchemaSimpleContentExtension.cs,
1530 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
1531 XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs,
1532 XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs,
1533 XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs,
1536 - Almost all classes are changed to implement schema component
1537 constraints, and schema validation using XsdValidatingReader.
1538 - better exception messages.
1539 - More datatype support.
1542 2003-09-14 Lluis Sanchez Gual <lluis@ximian.com>
1544 * XmlSchema.cs: Do not add schema namespace declaration if it is already
1547 2003-08-28 Lluis Sanchez Gual <lluis@ximian.com>
1549 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.
1551 2003-08-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1553 * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None.
1554 * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema.
1555 Add() should compile specified schema.
1557 2003-08-08 Lluis Sanchez Gual <lluis@ximian.com>
1559 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
1560 XsdDateTime, XsdDate, XsdTime.
1562 2003-08-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1564 * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken.
1565 Tokenized type of nmtokens and entities is string [].
1566 * XmlSchema.cs : Changed IsCompile implementation a bit.
1567 Compile() should reset compiled contents.
1568 * XmlSchemaDatatype.cs : Fixed collapsing Normalize().
1569 * XmlSchemaObject.cs : added CompilationId initialization.
1571 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
1573 * XmlSchema.cs: Set IsCompiled to true after compiling.
1574 In Compile(): ignore included schemas that do not have a value
1575 in SchemaLocation. It means that FindElement can return null
1576 if the referred schema was ignored. Added check for that case.
1577 Compile schema after reading it.
1578 * XmlSchemaCollection.cs: The targetNamespace of a schema may
1579 be null. Make XmlSchemaCollection work for this case.
1580 * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive
1581 types: float, base64Binary, boolean.
1583 2003-08-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1586 - Changed missingElementTypeRefs from Hashtable to ArrayList.
1587 - Added internal XmlSchemas for keeping imported schemas.
1588 - Added private Compile() that takes the original rootSchema and
1589 schema location stack for nested inclusion check.
1590 - Added basic xs:import and xs:include support.
1591 - Compile() is now aware of included XmlSchemaObject items.
1592 - Changed Compile() to fill missing elements' types and that of
1593 referencing elements.
1594 - Read() now adds SourceUri property (although only to itself).
1595 * XmlSchemaCollection.cs : Implemented Add().
1596 * XmlSchemaCollectionEnumerator.cs :
1597 Changed .ctor() to use schema collection as its argument.
1598 Fixed Current to return hashtable's Value, instead of Current
1599 (which returns DictionaryEntry).
1600 * XmlSchemaComplexType.cs :
1601 Added internal static AnyType.
1602 Compile() is now searches for its base type into other schemas.
1603 * XmlSchemaElement.cs : anyType is supported.
1604 It now searches for type information after Compile().
1605 SetReferedElementInfo() is now changed to SetSchemaType().
1606 * XmlSchemaObjectTable.cs :
1607 It had problems similar to schema collection. Now it uses internal
1608 class XmlSchemaObjectTableEnumerator to support GetEnumerator().
1609 * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty
1610 and internal static Empty.
1612 2003-07-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1614 * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
1615 * XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
1618 2003-07-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1620 * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().
1622 2003-07-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1624 * XmlSchema.cs, XmlSchemaElement.cs :
1625 added internal MissingElementTypeRefs and support for refering
1626 element's elementType.
1628 2003-07-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1630 * XmlSchema.cs : added support for collecting missing type references
1631 at compilation-time.
1632 * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs:
1633 - Renamed qName to QNameInternal.
1634 - Added BaseSchemaType and ContentTypeParticle support.
1636 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1638 * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs,
1639 XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs,
1640 XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs,
1641 XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs,
1642 XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
1643 XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
1644 XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs,
1645 XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs,
1646 XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs,
1647 XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs,
1648 XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
1649 XmlSchemaSimpleContentExtension.cs,
1650 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
1651 XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs,
1652 XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs,
1654 As to Compile() and Validate(),
1655 - Added CompilationId and check it while compiling schema components.
1656 - Code refactory. Replaced literal xmlns with XmlSchema.Namespace
1657 - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema
1658 also has PSVI components inside it, so passing itself seems enough).
1659 - Related to above change, IDCollection was moved to XmlSchema, and
1660 blockDefault/finalDefault/blockResolved/finalResolved resolution
1661 was changed to reference only to schema.BlockDefault/FinalDefault.
1662 - The similar change has done against XmlSchemaForm related stuff.
1663 - Changed compilation order of schema type definitions (it is
1664 workaround). First it compiles types, and then it compiles others.
1665 * XmlSchemaElement.cs : added ElementType PSVI contribution support.
1667 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1669 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
1670 Added decimal and its derived datatypes.
1671 Added abstract XsdAnySimpleType.
1673 2003-07-15 Lluis Sanchez Gual <lluis@ximian.com>
1675 * BuiltInDatatype.cs,
1676 XmlSchemaDatatype.cs : added unsignedByte type support.
1678 2003-07-14 Lluis Sanchez Gual <lluis@ximian.com>
1680 * XmlSchemaDatatype.cs: Fixed compiler warning.
1682 2003-07-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1684 * BuiltInDatatype.cs,
1685 XmlSchemaDatatype.cs : added NOTATION type support.
1687 2003-07-06 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1689 * added BuiltInDatatype.cs.
1690 * XmlSchemaDatatype.cs : [GetType()] added support for some
1693 2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1695 * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().
1697 2003-02-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
1699 * XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
1700 and <documentation> elements. (patch by Peter Pentchev)
1701 * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject
1702 instead of XmlSchema. (patch by Peter Pentchev)
1704 2002-07-23 Duncan Mak <duncan@ximian.com>
1706 * XmlSchemaException.cs: Partiall implement the ISerializable
1707 methods. It's not clear now SourceSchemaObject should be deserialized.
1709 2002-07-22 Tim Coleman <tim@timcoleman.com>
1710 * XmlSchema.cs: Removed isCompiled which is defined as internal
1713 2002-06-18 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1715 * XmlSchema: Started work on Validate methods
1717 2002-06-18 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1718 * XmlSchema: The Read and Write methods are no more [MonoTODO] :)
1720 * XmlSchemaAppInfo: Xml Markup is now being read.
1722 * XmlSchemaDocumentation: Xml Markup is now being read.
1724 * All: Unhandled attributes are being handled properly.
1726 * All: Reordered the properties in all cs files to match with MS
1727 Implementation. This was required since the order is importatnt
1728 for the XmlSerializer.
1730 2002-06-14 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1731 * General: Fixed a few more Bugs
1733 2002-06-10 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1734 * XmlSchemaReader: A Wrapper class around XmlReader with customized
1735 methods to suit reading a schema.
1736 * General: Implemented Read() method for the schema. There are only
1737 a few minor bugs remaining.
1739 2002-05-25 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1740 * BUGS.txt: New file to keep track of bugs
1742 * ALL: All classes are initialized exactly as in .NET except
1743 1. inclusion of language attribute in schema
1744 2. ComplexContent's Particle is initialized to null whereas .NET
1745 to some internal implementation. IMO Null is more appropriate
1747 * ALL: Changed the Compile methods to return the count of errors.
1749 * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests.
1750 This number should shoot up if we write a parser to read the
1751 Schema instead of using reflection (which is slower too)
1753 2002-05-04 Dwivedi, Ajay kumar <adwiv@yahoo.com>
1754 * XmlSchemaUtil.cs: New file added.
1756 * Parser.cs: New file Added. Unused at the moment.
1758 * XmlSchemaObjectCollection: Fixed GetEnumerator
1760 * General: Preprocessing for Attributes and SimpleTypes completed.
1762 2002-04-26 Duncan Mak <duncan@ximian.com>
1764 * ValidationHandler.cs: New file.
1766 * XmlSchemaInfo.cs: New file.
1768 * *.cs: More updates from Ajay.
1770 2002-03-27 Duncan Mak <duncan@ximian.com>
1772 * *.cs: Updates from Ajay Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>.