1 2004-07-13 Atsushi Enomoto <atsushi@ximian.com>
3 * XmlSchemaBuiltInType.cs, XmlSchemaValidity.cs, XmlTypeCode.cs
4 : fixed annoying enum errors.
5 * XmlSchemaCollection.cs : completely delegate to XmlSchemaSet.
6 * XmlSchemaSet.cs : sealed classes. Use ListDictionary (avoid annoying
7 order preservation matter). NameTable null check for .ctor().
8 Fill GlobalAttributes, GlobalElements, GlobalTypes correctly.
9 Add(string, XmlReader) checks namespace conflicts, while
10 Add(XmlSchema) does not. Fixed Schemas() return type.
12 2004-07-11 Atsushi Enomoto <atsushi@ximian.com>
14 * XmlSchemaDatatypeVariety.cs : Fixed class name typo.
15 * XmlValueConverter.cs : fixed return types.
17 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
19 * CustomSerializer.cs, XmlSchemaException.cs,
20 XmlSchemaParticle.cs, XmlSchemaSimpleTypeRestriction.cs
23 2004-06-10 Atsushi Enomoto <atsushi@ximian.com>
25 * XmlSchemaFacet.cs : Fixed internal protected --> internal.
27 2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
29 * XmlSchema.cs : Make sure to close url-based XmlTextReader.
31 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
35 XmlSchemaSimpleTypeRestriction.cs,
36 XmlSchemaXPath.cs : modified some enum const to static readonly
37 (.NET 1.0 does not allow it). Use safe overload of LookupNamespace().
39 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
41 * XmlSchemaDatatypeVariety.cs,
42 XmlSchemaValidity.cs : they are NET_2_0 enums.
44 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
46 * XmlValueConverter.cs : missed NET_2_0.
48 2004-05-22 Atsushi Enomoto <atsushi@ximian.com>
52 XmlSchemaDatatypeVariety.cs,
55 XmlValueConverter.cs : added.
57 * XmlSchemaInfo.cs : removed (.NET 1.2).
59 * XmlSchemaBuiltInType.cs,
60 XmlSchemaSet.cs : updated.
62 2004-05-19 Atsushi Enomoto <atsushi@ximian.com>
64 * CustomSerializer.cs : Added custom serializer for XmlSchema, that is
65 generated by SerializationCodeGenerator and edited a bit.
66 * XmlSchema.cs : Use XmlSchemaSerializationWriter.
68 2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
70 * XmlSchema.cs : Removed FIXME. No PSVI required.
71 * XmlSchemaAll.cs : Removed FIXME. It was not done.
72 * XmlSchemaAttributeGroupRef.cs : Removed FIXME. It can be annotated.
73 * XmlSchemaChoice.cs : not FIXME but LAMESPEC.
74 * XmlSchemaSimpleTypeRestriction.cs : Added check for non
75 XmlSchemaFacet items on Compile(). Thus removed FIXME.
76 * XmlSchemaUtil.cs : Fixed SplitList to handle sequential spaces.
78 * XmlSchemaObjectTable. cs: modified to use HybridDictionary (mostly
79 for avoiding iterator order difference).
81 2004-05-13 Atsushi Enomoto <atsushi@ximian.com>
83 * XmlSchemaSimpleTypeRestriction.cs : Removed MonoTODO. done.
85 2004-05-12 Atsushi Enomoto <atsushi@ximian.com>
87 * BuiltInDatatype.cs : made classes/enums internal.
89 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
91 * BuiltInDatatype.cs : trivia fix
93 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
95 * BuiltInDatatype.cs : added BUGGY_MS_COMPLIANT condition and that
96 handles ms-compatible properties.
97 * XmlSchemaComplexType.cs : ditto for ContentTypeParticle of xs:anyType.
98 Make sure ContentType for xs:anyType is Mixed.
99 * XmlSchemaUtil.cs : ditto for <xs:attribute use="prohibited" ..>
101 2004-05-05 Atsushi Enomoto <atsushi@ximian.com>
103 * XmlSchema.cs : Write() handles schema namespace for xmlserializer
104 (it does not look to be handled inside xmlserializer).
106 2004-04-27 Atsushi Enomoto <atsushi@ximian.com>
108 * XmlSchemaComplexType.cs : Set basetype as ur-type for such complex
109 type that has an immediate Particle (W3C specified as restriction
112 2004-04-27 Atsushi Enomoto <atsushi@ximian.com>
114 * XmlSchemaAttribute.cs : When type was inline simple type, it is not
116 * XmlSchemaSimpleType.cs : When Content was restriction, DataType was
117 not indicating base type's Datatype correctly.
119 2004-04-06 Atsushi Enomoto <atsushi@ximian.com>
121 * XmlSchemaDatatype.cs : optimized Normalize() not to create
122 extraneous string objects.
124 2004-03-15 Atsushi Enomoto <atsushi@ximian.com>
126 * reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to
127 reject incorrect schemas ;-)
129 2004-03-04 Alon Gazit <along@mainsoft.com>
131 * XmlSchemaUnique.cs : Changed Read implementation.
132 Currently can read "field" element before "selector" element (like MS).
134 2004-02-26 Atsushi Enomoto <atsushi@ximian.com>
136 * XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized
137 (as always synchronized).
139 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
142 XmlSchemaAttribute.cs
143 XmlSchemaAttributeGroup.cs,
144 XmlSchemaComplexContent.cs,
145 XmlSchemaComplexType.cs,
147 XmlSchemaDatatype.cs,
148 XmlSchemaNotation.cs,
150 XmlSchemaParticle.cs : extra TODO removal. foreach elimination.
151 Moved attribute group recursion check field from XmlSchemaObject
152 to XmlSchemaAttributeGroup.
153 Fixed XmlSchemaParticle.EmptyParticle class access modifier.
154 * XmlSchemaSimpleType.cs,
155 XmlSchemaSimpleTypeContent.cs,
156 XmlSchemaSimpleTypeList.cs,
157 XmlSchemaSimpleTypeRestriction.cs,
158 XmlSchemaSimpleTypeUnion.cs : Removed "actualBaseSchemaType" field
159 and the owner simpleType should hold the corresponding type info.
160 Collect base type info in prior to validation.
162 2004-02-05 Atsushi Enomoto <atsushi@ximian.com>
164 * BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014.
167 2004-02-03 Atsushi Enomoto <atsushi@ximian.com>
169 * BuiltInDatatype.cs : Fixed some Parse() for token based datatypes.
170 * XmlSchemaAny.cs : set properties for cloned particle. This will fix
172 * XmlSchemaParticle.cs : copy occurence string after computation of
173 validated min/max occurence. This will fix bug #53667.
175 2004-01-26 Atsushi Enomoto <atsushi@ximian.com>
177 * XmlSchema.cs : Raise warning event when external schema could not
179 * XmlSchemaAll.cs : Fixed incorrect IsEmptiable computation.
180 * XmlSchemaAny.cs : Fixed incorrect occurence computation.
181 * XmlSchemaChoice.cs : compiledItems were incorrectly appended.
182 * XmlSchemaComplexType.cs : Now validatableParticle became extraneous.
183 * XmlSchemaGroupBase.cs : Here we should not get optimized particle
184 because it might cause infinite loop.
185 * XmlSchemaGroupRef.cs : Fixed Validate() to avoid null reference
186 exception (only occur with ValidationEventHandler). Fixed Occurence
187 embedding logic that was useless because of particle optimization.
189 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
191 * BuiltInDatatype.cs : On parsing QName, we don't have to spend costs
192 on Add()ing parsed name to name table.
193 * XmlSchemaUtil.cs : Added IsBuiltInDatatypeName().
194 * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs,
195 XmlSchemaElement.cs, XmlSchemaSimpleContentExtension.cs,
196 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeList.cs :
197 Use the method above instead of Namespace string comparison.
198 (it will be required to validate schema for schemas.)
199 * XmlSchemaComplexType.cs : Type Derivation OK (3.4.6) should also
200 treat null base type as anyType. Derivation Valid Restriction
201 (3.4.6) should allow base type wildcard absense in case of anyType.
203 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
205 * XmlSchema.cs : When we have schema A which includes schema B which
206 includes schema C (i.e. A->B->C), C components should be compiled.
207 Here, same URL inclusions are ignored.
208 * XmlSchemaElement.cs : Hack for missing substitution-group fix.
209 * XmlSchemaSimpleTypeContent.cs : make actualBaseSchemaType private
210 and initialize. This fixes bug #53178.
211 * XmlSchemaSimpleTypeUnion.cs : Forgot to commit ;)
213 2004-01-22 Atsushi Enomoto <atsushi@ximian.com>
215 * XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify
216 pattern string as "^str$" and convert WXS specific char classes into
217 .NET regexp patterns.
219 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
222 - Removed extra property Language. Fill substitution-group info
223 before ContentTypeParticle is computed.
224 * XmlSchemaComplexType.cs : ContentType and ContentTypeParticle are
225 now computer before Validate() (to exclude 3.4.2 from 3.4.6
226 component constraint check).
227 * XmlSchemaObject.cs, XmlSchemaParticle.cs :
228 Added CopyInfo() for cloning objects.
229 * XmlSchemaObjectTable.cs :
230 Add() doesn't have to reject same named items.
231 * XmlSchemaParticle.cs :
232 - Renamed internal class XmlSchemaParticleEmpty to EmptyParticle
233 (for ease of post compilation infoset comparison).
234 - GetMinEffectiveTotalRange() should return max occurs for element and
236 * XmlSchemaParticle.cs,
241 XmlSchemaGroupBase.cs,
242 XmlSchemaGroupRef.cs,
243 XmlSchemaSequence.cs :
244 - Removed ActualParticle property.
245 - Added GetOptimizedParticle() to get ContentTypeParticle.
246 - ContentTypeParticle is now created as different object from
247 user-specified "Particle" property.
248 - Return Empty particle when model groups contains no Items.
249 - When Items contains exactly 1 item, return the item (unless it is
250 top level choice model group - it causes DBR problem).
251 - ValidateDerivationValidRestriction() and related WXS 3.9.6 DBR
252 check methods such as ValidateNSRecurseCheckCardinality() now
253 returns a bool value and avoids exceptions on each failure time.
254 - ValidateRecurse() now doesn't progress base particle incorrectly.
255 (it caused incorrect order-preserving-mapping error.)
256 - 3.9.6 Recurse, RecurseLax, MapAndSum are now treated as different.
257 * XmlSchemaAll.cs : occurence validation shoud be done against values
258 after computation (ValidatedMaxOccurs).
259 * XmlSchemaChoice.cs : When Items is empty, then invoke warning event.
260 * XmlSchemaElement.cs :
261 - Consider referencedElement also for SubstitutionGroupElement.
262 - Removed SubstitutingChoice which is not in use.
263 - when it was targeted as substitution group by other elements, its
264 ContentTypeParticle should be substitution choice (see 3.9.6
265 Particle Valid (Restriction) term 2.1).
266 - Added FillsubstitutionElementInfo() (see XmlSchema.cs above).
267 * XmlSchemaGroup.cs : Removed extra check on model group (because it
268 is impossible to specify non-model-group particle).
269 * XmlSchemaIdentityConstraint.cs,
272 XmlSchemaUnique.cs : Removed extraneous MonoTODO.
273 * XmlSchemaSimpleContent.cs : Made actualSchemaType as internal.
274 * XmlSchemaSimpleType.cs : Removed extraneous new Datatype property.
275 * XmlSchemaSimpleTypeRestriction.cs : Renamed actualBaseSchemaType to
276 ActualBaseSchemaType.
277 * XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
278 Removed unused actualBaseSchemaType code.
279 * XmlSchemaType.cs : use recently introduced BaseXmlSchemaType.
280 * XmlSchemaUtil.cs : Removed unused CheckLanguage().
282 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
284 * XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was
287 2004-01-20 Atsushi Enomoto <atsushi@ximian.com>
289 * SchemaDataValueType.cs : UriValueType.ToString() should return
290 actual URI string (as MS's XmlSchemaUri class does).
291 * XmlSchemaReader.cs : Make it internal.
293 2004-01-16 David Sheldon <dave-mono@earth.li>
295 * BuiltInDatatype.cs: added guard to stop index out of range error for
296 invalid Base64 characters.
298 2004-01-15 Jackson Harper <jackson@ximian.com>
300 * XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes
303 2004-01-15 Atsushi Enomoto <atsushi@ximian.com>
305 * XmlSchemaComplexContentExtension.cs,
306 XmlSchemaSimpleContentExtension.cs,
307 XmlSchemaSimpleContentExtension.cs,
308 XmlSchemaSimpleContentRestriction.cs,
309 XmlSchemaContent.cs : Added IsExtension. GetXXX() became nonvirtual.
311 - Added NET_2_0 BaseXmlSchemaType (other members are commented out).
312 - Now BaseSchemaType redirects to new property BaseXmlSchemaType.
313 * XmlSchemaComplexType.cs :
314 - Now it fully uses BaseXmlSchemaType above.
315 - Since ValidateXXX() became too huge, I divided them into
316 CollectXXX() [spec 3.4.1] and ValidateXXX() [spec 3.4.3 / 3.4.6].
317 Schema Components are contributed before constraint check.
318 - Now ContentTypeParticle is distinguished from validating particle
319 which is newly introduced as "ValidatableParticle" (only used in
320 XsdValidatingReader).
321 * XmlSchemaSimpleType.cs : Now it uses BaseXmlSchemaType.
322 capitalized internal members a bit.
324 2004-01-14 David Sheldon <dave-mono@earth.li>
326 * XmlSchemaSimpleTypeRestriction: Convert pattern facets to be ORed,
327 as per: http://www.w3.org/TR/xmlschema-2/#src-multiple-patterns
330 2004-01-14 David Sheldon <dave-mono@earth.li>
332 * BuiltInDatatype.cs:
333 XsdAnySimpleType - Added Length that returns the string length.
334 XsdBase64Binary - Added Length, and used more direct, less fussy,
336 XsdHexBinary - Added Length method
338 * XmlSchemaSimpleTypeRestriction: use DataType Length method to
339 determine length to compare against. Stop testing Lenght facets on
340 QName and Notation types (as per errata)
342 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
344 * XmlSchemaComplexType.cs : forgot to commit ;)
345 * XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false
346 for comparison between ID and IDREF.
348 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
350 * Added SchemaDataValueType.cs.
351 * BuiltInDatatype.cs, XmlSchemaDatatype.cs : Adde ParseValueType() on
352 all derived datatype classes.
353 * XmlSchemaComplexType.cs : Fixed ContentType value for simple types.
354 Errata-considered simple content derivation check and simple content
355 restriction should check this too.
357 2004-01-13 Jackson Harper <jackson@ximian.com>
359 * XmlSchemaComplexType.cs: Comment out line that was breaking the build.
361 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
363 * XmlSchemaSimpleTypeUnion.cs : The same reason as the previous patch.
364 * XmlSchemaComplexType.cs : Now it handles ContentTypeParticle and
365 ContentType much more presise than before.
366 * XmlSchemaElement.cs :
367 Simplified property handling for reference element.
369 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
371 * XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs :
372 Invalid attribute should raise an error, not a warning.
374 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
376 * XmlSchemaObject.cs : Fixed error() not to set severity as Warning.
377 * ValidationHandler.cs,
379 XmlSchemaCollection.cs : Throw exception only in case of errors.
380 * XmlSchemaCollection.cs : Remove schema from schemaset if exist.
381 (It might not be good to use schemaset, but keep for a while)
382 * XmlSchemaContent.cs,
383 XmlSchemaComplexContentExtension.cs,
384 XmlSchemaComplexContentRestriction.cs,
385 XmlSchemaSimpleContentExtension.cs,
386 XmlSchemaSimpleContentRestriction.cs,
387 : added GetBaseTypeName() and GetParticle() (not used yet).
389 2004-01-11 Atsushi Enomoto <atsushi@ximian.com>
391 * BuiltInDatatype.cs : internal type should not appear in protected
394 2004-01-11 David Sheldon <dave-mono@earth.li>
396 * BuiltInDatatype.cs : Added XsdOrdering enum, and Compare methods
397 to the data-types. Changed AllowedFacets to be a bitfield.
399 * XmlSchemaFacet.cs : Added Facet enumeration to represent bitfield.
401 * XmlSchemaEnumerationFacet.cs,
402 XmlSchemaFractionDigitsFacet.cs,
403 XmlSchemaLengthFacet.cs,
404 XmlSchemaMaxExclusiveFacet.cs,
405 XmlSchemaMaxInclusiveFacet.cs,
406 XmlSchemaMaxLengthFacet.cs,
407 XmlSchemaMinExclusiveFacet.cs,
408 XmlSchemaMinInclusiveFacet.cs,
409 XmlSchemaMinLengthFacet.cs,
410 XmlSchemaNumericFacet.cs,
411 XmlSchemaPatternFacet.cs,
412 XmlSchemaTotalDigitsFacet.cs,
413 XmlSchemaWhiteSpaceFacet.cs : Added ThisFacet Property to return facet type
416 * XmlSchemaSimpleTypeRestriction.cs: Inherited facets from base types,
417 checked which which were allowed on different types. Validated fixed
418 facets, duplicated facets and derivation by restriction. Added checking
419 for min/max Inclusive/Exclusive, totalDigits and fractionDigits facets in
422 2004-01-09 Atsushi Enomoto <atsushi@ximian.com>
424 * XmlSchemaSet.cs : implemented some members.
425 * XmlSchemaCollection.cs : modified to use internal schema set (This
426 class provides more precise schema validation feature and will be
427 commonly used for XPathNavigator2).
428 Added .NET 1.1 .ctor() which takes XmlResolver.
429 * XmlSchema.cs : fix related to above changes.
430 Use validation event handler on Read() at all required places.
431 Added .NET 1.1 .ctor() which takes XmlResolver.
432 * XmlSchemaComplexType.cs : content type comparison was incorrect.
433 Renamed confusing method.
434 * XmlSchemaElement.cs : don't use ContentTypeParticle in
435 CheckRecursion(), where that property might not be determined yet.
436 * XmlSchemaGroupBase.cs : Modified ValidateRecurse() a bit (currently
438 * XmlSchemaGroupBase.cs,
441 XmlSchemaSequence.cs : moved CheckRecursion to XmlSchemaGroupBase.
442 * XmlSchemaObjectTable.cs : Fixed missing error info.
443 * BUGS-MS.txt : Added info a bit.
445 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
447 * BUGS-MS.txt : added list derivation and facet case.
448 * XmlSchemaComplexType.cs :
449 Added some description. Avoided null reference exception in
451 Fixed incorrect 3.4.6 Derivation Valid (Extension) 1.4.1.2.2 and
452 3.9.6 Particle Valid (Extension) 2.
453 * XmlSchemaGroupBase.cs : Fixed ParticleEquals() which didn't work
454 properly against sequence and all.
456 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
458 * XmlSchemaObjectTable.cs : Modified enumerator's Current to return
460 * XmlSchemaComplexType.cs, XmlSchemaUtil.cs :
461 In reflection to object table enumerator change.
463 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
465 * XmlSchemaElement.cs : Fixed incorrect unique particle attribution
466 check on ##other and target namespace element.
468 2004-01-08 Nick Drochak <ndrochak@ieee.org>
470 * XmlSchemaSimpleType.cs: Needed a 'new' on the property
471 * XmlSchemaXPath.cs: Removed unreachable code.
473 2004-01-03 Atsushi Enomoto <atsushi@ximian.com>
475 * XmlSchemaDatatype.cs : trivial allocation fix.
477 2003-12-17 David Sheldon <dave-mono@earth.li>
479 * BuiltInDatatype.cs : Added whitespace=collapse to data types
480 such as date, dateTime, .... gDay. I think I have them all now.
482 2003-12-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
484 * BuiltInDatatype.cs : anySimpleType should allow facets.
486 2003-12-14 David Sheldon <dave-mono@earth.li>
488 * BuiltInDatatype.cs : Added code to tell which facets were valid on
489 types derived from each basetype.
491 * XmlSchemaSimpleTypeRestriction.cs : Complain if an invalid facet
492 has been added to a restriction.
495 2003-12-14 David Sheldon <dave-mono@earth.li>
497 * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths
498 specified are integers. Also made some error messages more useful.
500 2003-12-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
502 * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
503 if max/min length range is valid.
505 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
507 * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace
508 facet as collapse (patch by David Sheldon).
509 * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-)
510 * XmlSchemaSequence.cs : MapAndSum implementation.
512 2003-11-17 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
514 * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
515 (for convenience of ObjectSpaces stubbing).
517 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
519 * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while
520 the correct binding is sbyte.
523 XmlSchemaSequence.cs,
524 XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness
525 described in WXS structures 3.9.6.
526 Added ValidateRecurse() to support 'Recurse' validation.
527 * XmlSchemaComplexType.cs : Removed incorrect content type conformity
529 * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation
530 described in WXS structures 3.9.6. Fixed type derivation check to
531 do only if the base type is not anyType.
532 * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex()
533 construction exception. ValidateList... and ValidateNonList... was
535 * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken().
537 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
539 * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time.
540 Fixed most of date-time related types' ParseValue().
541 Applied Normalize() before parsing values in some ParseValue().
543 2003-10-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
547 XmlSchemaGroupBase.cs,
548 XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase.
551 XmlSchemaGroupBase.cs,
552 XmlSchemaGroupRef.cs,
553 XmlSchemaParticle.cs,
554 XmlSchemaSequence.cs : Added ParticleEquals() method to compare
555 whether the particles are equal in the context of WXS part 1 - 3.9.6.
556 * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction().
557 * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my
558 responsibility on this class.
559 Added ValidateWildcardAllowsNamespaceName().
560 * XmlSchemaAttribute.cs : Added ValidatedUse which holds post-
561 compilation value of "Use".
562 * XmlSchemaAttributeGroup.cs,
563 XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other
564 classes) since there is no more errors on attribute stuff ;-)
565 * XmlSchemaComplexType.cs : complex content extension must block
566 derivation from any built-in primitive types.
567 Fixed wildcard derivation by restriction.
568 ValidateDerivationByRestriction() now checks attribute related
569 validity of DBR (derivation by restriction).
570 Now uses ParticleEquals() for particle DBR check.
571 * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items.
573 2003-10-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
576 XmlSchemaUtil.cs : Reduced warning message.
577 * XmlSchemaAttribute.cs : NotImplementedException should no more exist.
578 (All things are going to be implemented.)
579 * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal.
580 * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented
581 list type derivation validation. Added Normalize().
582 * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType
584 * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation,
585 such as pattern, enumeration, and length etc.
587 2003-10-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
589 * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse().
590 * XmlSchemaCollection.cs : Implemented CopyTo().
591 * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling.
592 Added support for anySimpleType.
593 * XmlSchemaSimpleType.cs : Type specification named as anyType should
594 be mapped to anySimpleType.
595 * BUGS-MS.txt : Added more case note.
597 2003-10-13 Lluis Sanchez Gual <lluis@ximian.com>
599 * XmlSchema.cs: If the schema element is an empty element, skip it after
600 reading the attributes.
602 2003-10-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
604 * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.
606 2003-10-01 Lluis Sanchez Gual <lluis@ximian.com>
608 * XmlSchemaUtil.cs: arrayType attribute needs special handling.
610 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
612 * XmlSchema.cs : Forgot to update with previous files.
614 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
616 * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs,
617 XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs,
618 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs,
619 XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
620 Fixed missing sub components check. It should fix soap stuff.
621 * XmlSchemaAny.cs, XmlSchemaAttribute.cs,
622 XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs :
623 Added my responsibility on them ;-)
625 2003-10-01 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
627 * XmlSchema.cs : Read() should keep current position of XmlReader if
628 it was already positioned to 'schema' element.
630 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
632 * Forgot to append 8/24/2003 ChangeLog.
633 * BUGS.txt, BUGS-MS.txt : Appended additional bug info.
634 * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs,
635 XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs,
636 XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs,
637 XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs,
638 XmlSchemaChoice.cs, XmlSchemaCollection.cs,
639 XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
640 XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
641 XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs,
642 XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs,
643 XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs,
644 XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs,
645 XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs,
646 XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
647 XmlSchemaSimpleContentExtension.cs,
648 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
649 XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs,
650 XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs,
651 XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs,
654 - Almost all classes are changed to implement schema component
655 constraints, and schema validation using XsdValidatingReader.
656 - better exception messages.
657 - More datatype support.
660 2003-09-14 Lluis Sanchez Gual <lluis@ximian.com>
662 * XmlSchema.cs: Do not add schema namespace declaration if it is already
665 2003-08-28 Lluis Sanchez Gual <lluis@ximian.com>
667 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.
669 2003-08-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
671 * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None.
672 * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema.
673 Add() should compile specified schema.
675 2003-08-08 Lluis Sanchez Gual <lluis@ximian.com>
677 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
678 XsdDateTime, XsdDate, XsdTime.
680 2003-08-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
682 * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken.
683 Tokenized type of nmtokens and entities is string [].
684 * XmlSchema.cs : Changed IsCompile implementation a bit.
685 Compile() should reset compiled contents.
686 * XmlSchemaDatatype.cs : Fixed collapsing Normalize().
687 * XmlSchemaObject.cs : added CompilationId initialization.
689 2003-08-05 Lluis Sanchez Gual <lluis@ximian.com>
691 * XmlSchema.cs: Set IsCompiled to true after compiling.
692 In Compile(): ignore included schemas that do not have a value
693 in SchemaLocation. It means that FindElement can return null
694 if the referred schema was ignored. Added check for that case.
695 Compile schema after reading it.
696 * XmlSchemaCollection.cs: The targetNamespace of a schema may
697 be null. Make XmlSchemaCollection work for this case.
698 * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive
699 types: float, base64Binary, boolean.
701 2003-08-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
704 - Changed missingElementTypeRefs from Hashtable to ArrayList.
705 - Added internal XmlSchemas for keeping imported schemas.
706 - Added private Compile() that takes the original rootSchema and
707 schema location stack for nested inclusion check.
708 - Added basic xs:import and xs:include support.
709 - Compile() is now aware of included XmlSchemaObject items.
710 - Changed Compile() to fill missing elements' types and that of
711 referencing elements.
712 - Read() now adds SourceUri property (although only to itself).
713 * XmlSchemaCollection.cs : Implemented Add().
714 * XmlSchemaCollectionEnumerator.cs :
715 Changed .ctor() to use schema collection as its argument.
716 Fixed Current to return hashtable's Value, instead of Current
717 (which returns DictionaryEntry).
718 * XmlSchemaComplexType.cs :
719 Added internal static AnyType.
720 Compile() is now searches for its base type into other schemas.
721 * XmlSchemaElement.cs : anyType is supported.
722 It now searches for type information after Compile().
723 SetReferedElementInfo() is now changed to SetSchemaType().
724 * XmlSchemaObjectTable.cs :
725 It had problems similar to schema collection. Now it uses internal
726 class XmlSchemaObjectTableEnumerator to support GetEnumerator().
727 * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty
728 and internal static Empty.
730 2003-07-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
732 * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
733 * XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
736 2003-07-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
738 * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().
740 2003-07-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
742 * XmlSchema.cs, XmlSchemaElement.cs :
743 added internal MissingElementTypeRefs and support for refering
744 element's elementType.
746 2003-07-20 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
748 * XmlSchema.cs : added support for collecting missing type references
750 * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs:
751 - Renamed qName to QNameInternal.
752 - Added BaseSchemaType and ContentTypeParticle support.
754 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
756 * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs,
757 XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs,
758 XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs,
759 XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs,
760 XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
761 XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
762 XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs,
763 XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs,
764 XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs,
765 XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs,
766 XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
767 XmlSchemaSimpleContentExtension.cs,
768 XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
769 XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs,
770 XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs,
772 As to Compile() and Validate(),
773 - Added CompilationId and check it while compiling schema components.
774 - Code refactory. Replaced literal xmlns with XmlSchema.Namespace
775 - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema
776 also has PSVI components inside it, so passing itself seems enough).
777 - Related to above change, IDCollection was moved to XmlSchema, and
778 blockDefault/finalDefault/blockResolved/finalResolved resolution
779 was changed to reference only to schema.BlockDefault/FinalDefault.
780 - The similar change has done against XmlSchemaForm related stuff.
781 - Changed compilation order of schema type definitions (it is
782 workaround). First it compiles types, and then it compiles others.
783 * XmlSchemaElement.cs : added ElementType PSVI contribution support.
785 2003-07-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
787 * BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
788 Added decimal and its derived datatypes.
789 Added abstract XsdAnySimpleType.
791 2003-07-15 Lluis Sanchez Gual <lluis@ximian.com>
793 * BuiltInDatatype.cs,
794 XmlSchemaDatatype.cs : added unsignedByte type support.
796 2003-07-14 Lluis Sanchez Gual <lluis@ximian.com>
798 * XmlSchemaDatatype.cs: Fixed compiler warning.
800 2003-07-12 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
802 * BuiltInDatatype.cs,
803 XmlSchemaDatatype.cs : added NOTATION type support.
805 2003-07-06 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
807 * added BuiltInDatatype.cs.
808 * XmlSchemaDatatype.cs : [GetType()] added support for some
811 2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
813 * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().
815 2003-02-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
817 * XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
818 and <documentation> elements. (patch by Peter Pentchev)
819 * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject
820 instead of XmlSchema. (patch by Peter Pentchev)
822 2002-07-23 Duncan Mak <duncan@ximian.com>
824 * XmlSchemaException.cs: Partiall implement the ISerializable
825 methods. It's not clear now SourceSchemaObject should be deserialized.
827 2002-07-22 Tim Coleman <tim@timcoleman.com>
828 * XmlSchema.cs: Removed isCompiled which is defined as internal
831 2002-06-18 Dwivedi, Ajay kumar <adwiv@yahoo.com>
833 * XmlSchema: Started work on Validate methods
835 2002-06-18 Dwivedi, Ajay kumar <adwiv@yahoo.com>
836 * XmlSchema: The Read and Write methods are no more [MonoTODO] :)
838 * XmlSchemaAppInfo: Xml Markup is now being read.
840 * XmlSchemaDocumentation: Xml Markup is now being read.
842 * All: Unhandled attributes are being handled properly.
844 * All: Reordered the properties in all cs files to match with MS
845 Implementation. This was required since the order is importatnt
846 for the XmlSerializer.
848 2002-06-14 Dwivedi, Ajay kumar <adwiv@yahoo.com>
849 * General: Fixed a few more Bugs
851 2002-06-10 Dwivedi, Ajay kumar <adwiv@yahoo.com>
852 * XmlSchemaReader: A Wrapper class around XmlReader with customized
853 methods to suit reading a schema.
854 * General: Implemented Read() method for the schema. There are only
855 a few minor bugs remaining.
857 2002-05-25 Dwivedi, Ajay kumar <adwiv@yahoo.com>
858 * BUGS.txt: New file to keep track of bugs
860 * ALL: All classes are initialized exactly as in .NET except
861 1. inclusion of language attribute in schema
862 2. ComplexContent's Particle is initialized to null whereas .NET
863 to some internal implementation. IMO Null is more appropriate
865 * ALL: Changed the Compile methods to return the count of errors.
867 * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests.
868 This number should shoot up if we write a parser to read the
869 Schema instead of using reflection (which is slower too)
871 2002-05-04 Dwivedi, Ajay kumar <adwiv@yahoo.com>
872 * XmlSchemaUtil.cs: New file added.
874 * Parser.cs: New file Added. Unused at the moment.
876 * XmlSchemaObjectCollection: Fixed GetEnumerator
878 * General: Preprocessing for Attributes and SimpleTypes completed.
880 2002-04-26 Duncan Mak <duncan@ximian.com>
882 * ValidationHandler.cs: New file.
884 * XmlSchemaInfo.cs: New file.
886 * *.cs: More updates from Ajay.
888 2002-03-27 Duncan Mak <duncan@ximian.com>
890 * *.cs: Updates from Ajay Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>.