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