ChangeLog 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868
  1. 2004-06-10 Atsushi Enomoto <[email protected]>
  2. * XmlSchemaFacet.cs : Fixed internal protected --> internal.
  3. 2004-06-06 Atsushi Enomoto <[email protected]>
  4. * XmlSchema.cs : Make sure to close url-based XmlTextReader.
  5. 2004-06-03 Atsushi Enomoto <[email protected]>
  6. * BuiltInDatatype.cs,
  7. XmlSchemaFacet.cs,
  8. XmlSchemaSimpleTypeRestriction.cs,
  9. XmlSchemaXPath.cs : modified some enum const to static readonly
  10. (.NET 1.0 does not allow it). Use safe overload of LookupNamespace().
  11. 2004-05-22 Atsushi Enomoto <[email protected]>
  12. * XmlSchemaDatatypeVariety.cs,
  13. XmlSchemaValidity.cs : they are NET_2_0 enums.
  14. 2004-05-22 Atsushi Enomoto <[email protected]>
  15. * XmlValueConverter.cs : missed NET_2_0.
  16. 2004-05-22 Atsushi Enomoto <[email protected]>
  17. * IXmlSchemaInfo.cs,
  18. IXmlType.cs,
  19. XmlSchemaDatatypeVariety.cs,
  20. XmlSchemaValidity.cs,
  21. XmlTypeCode.cs,
  22. XmlValueConverter.cs : added.
  23. * XmlSchemaInfo.cs : removed (.NET 1.2).
  24. * XmlSchemaBuiltInType.cs,
  25. XmlSchemaSet.cs : updated.
  26. 2004-05-19 Atsushi Enomoto <[email protected]>
  27. * CustomSerializer.cs : Added custom serializer for XmlSchema, that is
  28. generated by SerializationCodeGenerator and edited a bit.
  29. * XmlSchema.cs : Use XmlSchemaSerializationWriter.
  30. 2004-05-13 Atsushi Enomoto <[email protected]>
  31. * XmlSchema.cs : Removed FIXME. No PSVI required.
  32. * XmlSchemaAll.cs : Removed FIXME. It was not done.
  33. * XmlSchemaAttributeGroupRef.cs : Removed FIXME. It can be annotated.
  34. * XmlSchemaChoice.cs : not FIXME but LAMESPEC.
  35. * XmlSchemaSimpleTypeRestriction.cs : Added check for non
  36. XmlSchemaFacet items on Compile(). Thus removed FIXME.
  37. * XmlSchemaUtil.cs : Fixed SplitList to handle sequential spaces.
  38. Thus removed FIXME.
  39. * XmlSchemaObjectTable. cs: modified to use HybridDictionary (mostly
  40. for avoiding iterator order difference).
  41. 2004-05-13 Atsushi Enomoto <[email protected]>
  42. * XmlSchemaSimpleTypeRestriction.cs : Removed MonoTODO. done.
  43. 2004-05-12 Atsushi Enomoto <[email protected]>
  44. * BuiltInDatatype.cs : made classes/enums internal.
  45. 2004-05-05 Atsushi Enomoto <[email protected]>
  46. * BuiltInDatatype.cs : trivia fix
  47. 2004-05-05 Atsushi Enomoto <[email protected]>
  48. * BuiltInDatatype.cs : added BUGGY_MS_COMPLIANT condition and that
  49. handles ms-compatible properties.
  50. * XmlSchemaComplexType.cs : ditto for ContentTypeParticle of xs:anyType.
  51. Make sure ContentType for xs:anyType is Mixed.
  52. * XmlSchemaUtil.cs : ditto for <xs:attribute use="prohibited" ..>
  53. 2004-05-05 Atsushi Enomoto <[email protected]>
  54. * XmlSchema.cs : Write() handles schema namespace for xmlserializer
  55. (it does not look to be handled inside xmlserializer).
  56. 2004-04-27 Atsushi Enomoto <[email protected]>
  57. * XmlSchemaComplexType.cs : Set basetype as ur-type for such complex
  58. type that has an immediate Particle (W3C specified as restriction
  59. of ur-type).
  60. 2004-04-27 Atsushi Enomoto <[email protected]>
  61. * XmlSchemaAttribute.cs : When type was inline simple type, it is not
  62. validated correctly.
  63. * XmlSchemaSimpleType.cs : When Content was restriction, DataType was
  64. not indicating base type's Datatype correctly.
  65. 2004-04-06 Atsushi Enomoto <[email protected]>
  66. * XmlSchemaDatatype.cs : optimized Normalize() not to create
  67. extraneous string objects.
  68. 2004-03-15 Atsushi Enomoto <[email protected]>
  69. * reverted the latest XmlSchemaUnique.cs change (MS.NET looks fine to
  70. reject incorrect schemas ;-)
  71. 2004-03-04 Alon Gazit <[email protected]>
  72. * XmlSchemaUnique.cs : Changed Read implementation.
  73. Currently can read "field" element before "selector" element (like MS).
  74. 2004-02-26 Atsushi Enomoto <[email protected]>
  75. * XmlSchemaCollection.cs : Implemented SyncRoot and IsSynchronized
  76. (as always synchronized).
  77. 2004-02-16 Atsushi Enomoto <[email protected]>
  78. * XmlSchema.cs,
  79. XmlSchemaAttribute.cs
  80. XmlSchemaAttributeGroup.cs,
  81. XmlSchemaComplexContent.cs,
  82. XmlSchemaComplexType.cs,
  83. XmlSchemaContent.cs,
  84. XmlSchemaDatatype.cs,
  85. XmlSchemaNotation.cs,
  86. XmlSchemaObject.cs,
  87. XmlSchemaParticle.cs : extra TODO removal. foreach elimination.
  88. Moved attribute group recursion check field from XmlSchemaObject
  89. to XmlSchemaAttributeGroup.
  90. Fixed XmlSchemaParticle.EmptyParticle class access modifier.
  91. * XmlSchemaSimpleType.cs,
  92. XmlSchemaSimpleTypeContent.cs,
  93. XmlSchemaSimpleTypeList.cs,
  94. XmlSchemaSimpleTypeRestriction.cs,
  95. XmlSchemaSimpleTypeUnion.cs : Removed "actualBaseSchemaType" field
  96. and the owner simpleType should hold the corresponding type info.
  97. Collect base type info in prior to validation.
  98. 2004-02-05 Atsushi Enomoto <[email protected]>
  99. * BUGS-MS.txt : fixed incorrect thought on case 008. Added case 014.
  100. * BUGS.txt : FYI.
  101. 2004-02-03 Atsushi Enomoto <[email protected]>
  102. * BuiltInDatatype.cs : Fixed some Parse() for token based datatypes.
  103. * XmlSchemaAny.cs : set properties for cloned particle. This will fix
  104. bugzilla #53668.
  105. * XmlSchemaParticle.cs : copy occurence string after computation of
  106. validated min/max occurence. This will fix bug #53667.
  107. 2004-01-26 Atsushi Enomoto <[email protected]>
  108. * XmlSchema.cs : Raise warning event when external schema could not
  109. be resolved.
  110. * XmlSchemaAll.cs : Fixed incorrect IsEmptiable computation.
  111. * XmlSchemaAny.cs : Fixed incorrect occurence computation.
  112. * XmlSchemaChoice.cs : compiledItems were incorrectly appended.
  113. * XmlSchemaComplexType.cs : Now validatableParticle became extraneous.
  114. * XmlSchemaGroupBase.cs : Here we should not get optimized particle
  115. because it might cause infinite loop.
  116. * XmlSchemaGroupRef.cs : Fixed Validate() to avoid null reference
  117. exception (only occur with ValidationEventHandler). Fixed Occurence
  118. embedding logic that was useless because of particle optimization.
  119. 2004-01-22 Atsushi Enomoto <[email protected]>
  120. * BuiltInDatatype.cs : On parsing QName, we don't have to spend costs
  121. on Add()ing parsed name to name table.
  122. * XmlSchemaUtil.cs : Added IsBuiltInDatatypeName().
  123. * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs,
  124. XmlSchemaElement.cs, XmlSchemaSimpleContentExtension.cs,
  125. XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeList.cs :
  126. Use the method above instead of Namespace string comparison.
  127. (it will be required to validate schema for schemas.)
  128. * XmlSchemaComplexType.cs : Type Derivation OK (3.4.6) should also
  129. treat null base type as anyType. Derivation Valid Restriction
  130. (3.4.6) should allow base type wildcard absense in case of anyType.
  131. 2004-01-22 Atsushi Enomoto <[email protected]>
  132. * XmlSchema.cs : When we have schema A which includes schema B which
  133. includes schema C (i.e. A->B->C), C components should be compiled.
  134. Here, same URL inclusions are ignored.
  135. * XmlSchemaElement.cs : Hack for missing substitution-group fix.
  136. * XmlSchemaSimpleTypeContent.cs : make actualBaseSchemaType private
  137. and initialize. This fixes bug #53178.
  138. * XmlSchemaSimpleTypeUnion.cs : Forgot to commit ;)
  139. 2004-01-22 Atsushi Enomoto <[email protected]>
  140. * XmlSchemaSimpleTypeRestriction.cs : regexp improvements. Modify
  141. pattern string as "^str$" and convert WXS specific char classes into
  142. .NET regexp patterns.
  143. 2004-01-21 Atsushi Enomoto <[email protected]>
  144. * XmlSchema.cs :
  145. - Removed extra property Language. Fill substitution-group info
  146. before ContentTypeParticle is computed.
  147. * XmlSchemaComplexType.cs : ContentType and ContentTypeParticle are
  148. now computer before Validate() (to exclude 3.4.2 from 3.4.6
  149. component constraint check).
  150. * XmlSchemaObject.cs, XmlSchemaParticle.cs :
  151. Added CopyInfo() for cloning objects.
  152. * XmlSchemaObjectTable.cs :
  153. Add() doesn't have to reject same named items.
  154. * XmlSchemaParticle.cs :
  155. - Renamed internal class XmlSchemaParticleEmpty to EmptyParticle
  156. (for ease of post compilation infoset comparison).
  157. - GetMinEffectiveTotalRange() should return max occurs for element and
  158. any.
  159. * XmlSchemaParticle.cs,
  160. XmlSchemaAll.cs,
  161. XmlSchemaAny.cs,
  162. XmlSchemaChoice.cs,
  163. XmlSchemaElement.cs,
  164. XmlSchemaGroupBase.cs,
  165. XmlSchemaGroupRef.cs,
  166. XmlSchemaSequence.cs :
  167. - Removed ActualParticle property.
  168. - Added GetOptimizedParticle() to get ContentTypeParticle.
  169. - ContentTypeParticle is now created as different object from
  170. user-specified "Particle" property.
  171. - Return Empty particle when model groups contains no Items.
  172. - When Items contains exactly 1 item, return the item (unless it is
  173. top level choice model group - it causes DBR problem).
  174. - ValidateDerivationValidRestriction() and related WXS 3.9.6 DBR
  175. check methods such as ValidateNSRecurseCheckCardinality() now
  176. returns a bool value and avoids exceptions on each failure time.
  177. - ValidateRecurse() now doesn't progress base particle incorrectly.
  178. (it caused incorrect order-preserving-mapping error.)
  179. - 3.9.6 Recurse, RecurseLax, MapAndSum are now treated as different.
  180. * XmlSchemaAll.cs : occurence validation shoud be done against values
  181. after computation (ValidatedMaxOccurs).
  182. * XmlSchemaChoice.cs : When Items is empty, then invoke warning event.
  183. * XmlSchemaElement.cs :
  184. - Consider referencedElement also for SubstitutionGroupElement.
  185. - Removed SubstitutingChoice which is not in use.
  186. - when it was targeted as substitution group by other elements, its
  187. ContentTypeParticle should be substitution choice (see 3.9.6
  188. Particle Valid (Restriction) term 2.1).
  189. - Added FillsubstitutionElementInfo() (see XmlSchema.cs above).
  190. * XmlSchemaGroup.cs : Removed extra check on model group (because it
  191. is impossible to specify non-model-group particle).
  192. * XmlSchemaIdentityConstraint.cs,
  193. XmlSchemaKey.cs,
  194. XmlSchemaKeyRef.cs,
  195. XmlSchemaUnique.cs : Removed extraneous MonoTODO.
  196. * XmlSchemaSimpleContent.cs : Made actualSchemaType as internal.
  197. * XmlSchemaSimpleType.cs : Removed extraneous new Datatype property.
  198. * XmlSchemaSimpleTypeRestriction.cs : Renamed actualBaseSchemaType to
  199. ActualBaseSchemaType.
  200. * XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
  201. Removed unused actualBaseSchemaType code.
  202. * XmlSchemaType.cs : use recently introduced BaseXmlSchemaType.
  203. * XmlSchemaUtil.cs : Removed unused CheckLanguage().
  204. 2004-01-21 Atsushi Enomoto <[email protected]>
  205. * XmlSchemaXPath.cs : wildcard with prefix (e.g. @foo:*) was
  206. incorrectly treated.
  207. 2004-01-20 Atsushi Enomoto <[email protected]>
  208. * SchemaDataValueType.cs : UriValueType.ToString() should return
  209. actual URI string (as MS's XmlSchemaUri class does).
  210. * XmlSchemaReader.cs : Make it internal.
  211. 2004-01-16 David Sheldon <[email protected]>
  212. * BuiltInDatatype.cs: added guard to stop index out of range error for
  213. invalid Base64 characters.
  214. 2004-01-15 Jackson Harper <[email protected]>
  215. * XmlSchemaContent.cs: Make actualBaseSchemaType protected (fixes
  216. build).
  217. 2004-01-15 Atsushi Enomoto <[email protected]>
  218. * XmlSchemaComplexContentExtension.cs,
  219. XmlSchemaSimpleContentExtension.cs,
  220. XmlSchemaSimpleContentExtension.cs,
  221. XmlSchemaSimpleContentRestriction.cs,
  222. XmlSchemaContent.cs : Added IsExtension. GetXXX() became nonvirtual.
  223. * XmlSchemaType.cs :
  224. - Added NET_2_0 BaseXmlSchemaType (other members are commented out).
  225. - Now BaseSchemaType redirects to new property BaseXmlSchemaType.
  226. * XmlSchemaComplexType.cs :
  227. - Now it fully uses BaseXmlSchemaType above.
  228. - Since ValidateXXX() became too huge, I divided them into
  229. CollectXXX() [spec 3.4.1] and ValidateXXX() [spec 3.4.3 / 3.4.6].
  230. Schema Components are contributed before constraint check.
  231. - Now ContentTypeParticle is distinguished from validating particle
  232. which is newly introduced as "ValidatableParticle" (only used in
  233. XsdValidatingReader).
  234. * XmlSchemaSimpleType.cs : Now it uses BaseXmlSchemaType.
  235. capitalized internal members a bit.
  236. 2004-01-14 David Sheldon <[email protected]>
  237. * XmlSchemaSimpleTypeRestriction: Convert pattern facets to be ORed,
  238. as per: http://www.w3.org/TR/xmlschema-2/#src-multiple-patterns
  239. Fixes bug 52841
  240. 2004-01-14 David Sheldon <[email protected]>
  241. * BuiltInDatatype.cs:
  242. XsdAnySimpleType - Added Length that returns the string length.
  243. XsdBase64Binary - Added Length, and used more direct, less fussy,
  244. Base64 decoder.
  245. XsdHexBinary - Added Length method
  246. * XmlSchemaSimpleTypeRestriction: use DataType Length method to
  247. determine length to compare against. Stop testing Lenght facets on
  248. QName and Notation types (as per errata)
  249. 2004-01-14 Atsushi Enomoto <[email protected]>
  250. * XmlSchemaComplexType.cs : forgot to commit ;)
  251. * XmlSchemaUtil.cs : Fixed IsSchemaDatatypeEquals() to return false
  252. for comparison between ID and IDREF.
  253. 2004-01-14 Atsushi Enomoto <[email protected]>
  254. * Added SchemaDataValueType.cs.
  255. * BuiltInDatatype.cs, XmlSchemaDatatype.cs : Adde ParseValueType() on
  256. all derived datatype classes.
  257. * XmlSchemaComplexType.cs : Fixed ContentType value for simple types.
  258. Errata-considered simple content derivation check and simple content
  259. restriction should check this too.
  260. 2004-01-13 Jackson Harper <[email protected]>
  261. * XmlSchemaComplexType.cs: Comment out line that was breaking the build.
  262. 2004-01-13 Atsushi Enomoto <[email protected]>
  263. * XmlSchemaSimpleTypeUnion.cs : The same reason as the previous patch.
  264. * XmlSchemaComplexType.cs : Now it handles ContentTypeParticle and
  265. ContentType much more presise than before.
  266. * XmlSchemaElement.cs :
  267. Simplified property handling for reference element.
  268. 2004-01-13 Atsushi Enomoto <[email protected]>
  269. * XmlSchema.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs :
  270. Invalid attribute should raise an error, not a warning.
  271. 2004-01-13 Atsushi Enomoto <[email protected]>
  272. * XmlSchemaObject.cs : Fixed error() not to set severity as Warning.
  273. * ValidationHandler.cs,
  274. XmlSchemaSet.cs,
  275. XmlSchemaCollection.cs : Throw exception only in case of errors.
  276. * XmlSchemaCollection.cs : Remove schema from schemaset if exist.
  277. (It might not be good to use schemaset, but keep for a while)
  278. * XmlSchemaContent.cs,
  279. XmlSchemaComplexContentExtension.cs,
  280. XmlSchemaComplexContentRestriction.cs,
  281. XmlSchemaSimpleContentExtension.cs,
  282. XmlSchemaSimpleContentRestriction.cs,
  283. : added GetBaseTypeName() and GetParticle() (not used yet).
  284. 2004-01-11 Atsushi Enomoto <[email protected]>
  285. * BuiltInDatatype.cs : internal type should not appear in protected
  286. members' signature.
  287. 2004-01-11 David Sheldon <[email protected]>
  288. * BuiltInDatatype.cs : Added XsdOrdering enum, and Compare methods
  289. to the data-types. Changed AllowedFacets to be a bitfield.
  290. * XmlSchemaFacet.cs : Added Facet enumeration to represent bitfield.
  291. * XmlSchemaEnumerationFacet.cs,
  292. XmlSchemaFractionDigitsFacet.cs,
  293. XmlSchemaLengthFacet.cs,
  294. XmlSchemaMaxExclusiveFacet.cs,
  295. XmlSchemaMaxInclusiveFacet.cs,
  296. XmlSchemaMaxLengthFacet.cs,
  297. XmlSchemaMinExclusiveFacet.cs,
  298. XmlSchemaMinInclusiveFacet.cs,
  299. XmlSchemaMinLengthFacet.cs,
  300. XmlSchemaNumericFacet.cs,
  301. XmlSchemaPatternFacet.cs,
  302. XmlSchemaTotalDigitsFacet.cs,
  303. XmlSchemaWhiteSpaceFacet.cs : Added ThisFacet Property to return facet type
  304. * XmlSchemaSimpleTypeRestriction.cs: Inherited facets from base types,
  305. checked which which were allowed on different types. Validated fixed
  306. facets, duplicated facets and derivation by restriction. Added checking
  307. for min/max Inclusive/Exclusive, totalDigits and fractionDigits facets in
  308. validation.
  309. 2004-01-09 Atsushi Enomoto <[email protected]>
  310. * XmlSchemaSet.cs : implemented some members.
  311. * XmlSchemaCollection.cs : modified to use internal schema set (This
  312. class provides more precise schema validation feature and will be
  313. commonly used for XPathNavigator2).
  314. Added .NET 1.1 .ctor() which takes XmlResolver.
  315. * XmlSchema.cs : fix related to above changes.
  316. Use validation event handler on Read() at all required places.
  317. Added .NET 1.1 .ctor() which takes XmlResolver.
  318. * XmlSchemaComplexType.cs : content type comparison was incorrect.
  319. Renamed confusing method.
  320. * XmlSchemaElement.cs : don't use ContentTypeParticle in
  321. CheckRecursion(), where that property might not be determined yet.
  322. * XmlSchemaGroupBase.cs : Modified ValidateRecurse() a bit (currently
  323. no effect)
  324. * XmlSchemaGroupBase.cs,
  325. XmlSchemaChoice.cs,
  326. XmlSchemaAll.cs,
  327. XmlSchemaSequence.cs : moved CheckRecursion to XmlSchemaGroupBase.
  328. * XmlSchemaObjectTable.cs : Fixed missing error info.
  329. * BUGS-MS.txt : Added info a bit.
  330. 2004-01-08 Atsushi Enomoto <[email protected]>
  331. * BUGS-MS.txt : added list derivation and facet case.
  332. * XmlSchemaComplexType.cs :
  333. Added some description. Avoided null reference exception in
  334. some places.
  335. Fixed incorrect 3.4.6 Derivation Valid (Extension) 1.4.1.2.2 and
  336. 3.9.6 Particle Valid (Extension) 2.
  337. * XmlSchemaGroupBase.cs : Fixed ParticleEquals() which didn't work
  338. properly against sequence and all.
  339. 2004-01-08 Atsushi Enomoto <[email protected]>
  340. * XmlSchemaObjectTable.cs : Modified enumerator's Current to return
  341. DictionaryEntry.
  342. * XmlSchemaComplexType.cs, XmlSchemaUtil.cs :
  343. In reflection to object table enumerator change.
  344. 2004-01-08 Atsushi Enomoto <[email protected]>
  345. * XmlSchemaElement.cs : Fixed incorrect unique particle attribution
  346. check on ##other and target namespace element.
  347. 2004-01-08 Nick Drochak <[email protected]>
  348. * XmlSchemaSimpleType.cs: Needed a 'new' on the property
  349. * XmlSchemaXPath.cs: Removed unreachable code.
  350. 2004-01-03 Atsushi Enomoto <[email protected]>
  351. * XmlSchemaDatatype.cs : trivial allocation fix.
  352. 2003-12-17 David Sheldon <[email protected]>
  353. * BuiltInDatatype.cs : Added whitespace=collapse to data types
  354. such as date, dateTime, .... gDay. I think I have them all now.
  355. 2003-12-15 Atsushi Enomoto <[email protected]>
  356. * BuiltInDatatype.cs : anySimpleType should allow facets.
  357. 2003-12-14 David Sheldon <[email protected]>
  358. * BuiltInDatatype.cs : Added code to tell which facets were valid on
  359. types derived from each basetype.
  360. * XmlSchemaSimpleTypeRestriction.cs : Complain if an invalid facet
  361. has been added to a restriction.
  362. 2003-12-14 David Sheldon <[email protected]>
  363. * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths
  364. specified are integers. Also made some error messages more useful.
  365. 2003-12-08 Atsushi Enomoto <[email protected]>
  366. * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
  367. if max/min length range is valid.
  368. 2003-12-07 Atsushi Enomoto <[email protected]>
  369. * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace
  370. facet as collapse (patch by David Sheldon).
  371. * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-)
  372. * XmlSchemaSequence.cs : MapAndSum implementation.
  373. 2003-11-17 Atsushi Enomoto <[email protected]>
  374. * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
  375. (for convenience of ObjectSpaces stubbing).
  376. 2003-10-25 Atsushi Enomoto <[email protected]>
  377. * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while
  378. the correct binding is sbyte.
  379. * XmlSchemaAll.cs,
  380. XmlSchemaChoice.cs,
  381. XmlSchemaSequence.cs,
  382. XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness
  383. described in WXS structures 3.9.6.
  384. Added ValidateRecurse() to support 'Recurse' validation.
  385. * XmlSchemaComplexType.cs : Removed incorrect content type conformity
  386. check.
  387. * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation
  388. described in WXS structures 3.9.6. Fixed type derivation check to
  389. do only if the base type is not anyType.
  390. * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex()
  391. construction exception. ValidateList... and ValidateNonList... was
  392. in reverse.
  393. * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken().
  394. 2003-10-25 Atsushi Enomoto <[email protected]>
  395. * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time.
  396. Fixed most of date-time related types' ParseValue().
  397. Applied Normalize() before parsing values in some ParseValue().
  398. 2003-10-23 Atsushi Enomoto <[email protected]>
  399. * XmlSchemaAll.cs,
  400. XmlSchemaChoice.cs,
  401. XmlSchemaGroupBase.cs,
  402. XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase.
  403. * XmlSchemaAny.cs,
  404. XmlSchemaElement.cs,
  405. XmlSchemaGroupBase.cs,
  406. XmlSchemaGroupRef.cs,
  407. XmlSchemaParticle.cs,
  408. XmlSchemaSequence.cs : Added ParticleEquals() method to compare
  409. whether the particles are equal in the context of WXS part 1 - 3.9.6.
  410. * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction().
  411. * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my
  412. responsibility on this class.
  413. Added ValidateWildcardAllowsNamespaceName().
  414. * XmlSchemaAttribute.cs : Added ValidatedUse which holds post-
  415. compilation value of "Use".
  416. * XmlSchemaAttributeGroup.cs,
  417. XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other
  418. classes) since there is no more errors on attribute stuff ;-)
  419. * XmlSchemaComplexType.cs : complex content extension must block
  420. derivation from any built-in primitive types.
  421. Fixed wildcard derivation by restriction.
  422. ValidateDerivationByRestriction() now checks attribute related
  423. validity of DBR (derivation by restriction).
  424. Now uses ParticleEquals() for particle DBR check.
  425. * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items.
  426. 2003-10-21 Atsushi Enomoto <[email protected]>
  427. * XmlSchema.cs,
  428. XmlSchemaUtil.cs : Reduced warning message.
  429. * XmlSchemaAttribute.cs : NotImplementedException should no more exist.
  430. (All things are going to be implemented.)
  431. * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal.
  432. * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented
  433. list type derivation validation. Added Normalize().
  434. * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType
  435. with anySimpleType.
  436. * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation,
  437. such as pattern, enumeration, and length etc.
  438. 2003-10-19 Atsushi Enomoto <[email protected]>
  439. * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse().
  440. * XmlSchemaCollection.cs : Implemented CopyTo().
  441. * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling.
  442. Added support for anySimpleType.
  443. * XmlSchemaSimpleType.cs : Type specification named as anyType should
  444. be mapped to anySimpleType.
  445. * BUGS-MS.txt : Added more case note.
  446. 2003-10-13 Lluis Sanchez Gual <[email protected]>
  447. * XmlSchema.cs: If the schema element is an empty element, skip it after
  448. reading the attributes.
  449. 2003-10-09 Atsushi Enomoto <[email protected]>
  450. * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.
  451. 2003-10-01 Lluis Sanchez Gual <[email protected]>
  452. * XmlSchemaUtil.cs: arrayType attribute needs special handling.
  453. 2003-10-01 Atsushi Enomoto <[email protected]>
  454. * XmlSchema.cs : Forgot to update with previous files.
  455. 2003-10-01 Atsushi Enomoto <[email protected]>
  456. * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs,
  457. XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs,
  458. XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs,
  459. XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
  460. Fixed missing sub components check. It should fix soap stuff.
  461. * XmlSchemaAny.cs, XmlSchemaAttribute.cs,
  462. XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs :
  463. Added my responsibility on them ;-)
  464. 2003-10-01 Atsushi Enomoto <[email protected]>
  465. * XmlSchema.cs : Read() should keep current position of XmlReader if
  466. it was already positioned to 'schema' element.
  467. 2003-09-30 Atsushi Enomoto <[email protected]>
  468. * Forgot to append 8/24/2003 ChangeLog.
  469. * BUGS.txt, BUGS-MS.txt : Appended additional bug info.
  470. * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs,
  471. XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs,
  472. XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs,
  473. XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs,
  474. XmlSchemaChoice.cs, XmlSchemaCollection.cs,
  475. XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
  476. XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
  477. XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs,
  478. XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs,
  479. XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs,
  480. XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs,
  481. XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs,
  482. XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
  483. XmlSchemaSimpleContentExtension.cs,
  484. XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
  485. XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs,
  486. XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs,
  487. XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs,
  488. XmlSchemaXPath.cs :
  489. - Almost all classes are changed to implement schema component
  490. constraints, and schema validation using XsdValidatingReader.
  491. - better exception messages.
  492. - More datatype support.
  493. and so on.
  494. 2003-09-14 Lluis Sanchez Gual <[email protected]>
  495. * XmlSchema.cs: Do not add schema namespace declaration if it is already
  496. declared.
  497. 2003-08-28 Lluis Sanchez Gual <[email protected]>
  498. * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.
  499. 2003-08-24 Atsushi Enomoto <[email protected]>
  500. * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None.
  501. * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema.
  502. Add() should compile specified schema.
  503. 2003-08-08 Lluis Sanchez Gual <[email protected]>
  504. * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
  505. XsdDateTime, XsdDate, XsdTime.
  506. 2003-08-07 Atsushi Enomoto <[email protected]>
  507. * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken.
  508. Tokenized type of nmtokens and entities is string [].
  509. * XmlSchema.cs : Changed IsCompile implementation a bit.
  510. Compile() should reset compiled contents.
  511. * XmlSchemaDatatype.cs : Fixed collapsing Normalize().
  512. * XmlSchemaObject.cs : added CompilationId initialization.
  513. 2003-08-05 Lluis Sanchez Gual <[email protected]>
  514. * XmlSchema.cs: Set IsCompiled to true after compiling.
  515. In Compile(): ignore included schemas that do not have a value
  516. in SchemaLocation. It means that FindElement can return null
  517. if the referred schema was ignored. Added check for that case.
  518. Compile schema after reading it.
  519. * XmlSchemaCollection.cs: The targetNamespace of a schema may
  520. be null. Make XmlSchemaCollection work for this case.
  521. * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive
  522. types: float, base64Binary, boolean.
  523. 2003-08-02 Atsushi Enomoto <[email protected]>
  524. * XmlSchema.cs :
  525. - Changed missingElementTypeRefs from Hashtable to ArrayList.
  526. - Added internal XmlSchemas for keeping imported schemas.
  527. - Added private Compile() that takes the original rootSchema and
  528. schema location stack for nested inclusion check.
  529. - Added basic xs:import and xs:include support.
  530. - Compile() is now aware of included XmlSchemaObject items.
  531. - Changed Compile() to fill missing elements' types and that of
  532. referencing elements.
  533. - Read() now adds SourceUri property (although only to itself).
  534. * XmlSchemaCollection.cs : Implemented Add().
  535. * XmlSchemaCollectionEnumerator.cs :
  536. Changed .ctor() to use schema collection as its argument.
  537. Fixed Current to return hashtable's Value, instead of Current
  538. (which returns DictionaryEntry).
  539. * XmlSchemaComplexType.cs :
  540. Added internal static AnyType.
  541. Compile() is now searches for its base type into other schemas.
  542. * XmlSchemaElement.cs : anyType is supported.
  543. It now searches for type information after Compile().
  544. SetReferedElementInfo() is now changed to SetSchemaType().
  545. * XmlSchemaObjectTable.cs :
  546. It had problems similar to schema collection. Now it uses internal
  547. class XmlSchemaObjectTableEnumerator to support GetEnumerator().
  548. * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty
  549. and internal static Empty.
  550. 2003-07-26 Atsushi Enomoto <[email protected]>
  551. * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
  552. * XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
  553. should be internal.
  554. 2003-07-24 Atsushi Enomoto <[email protected]>
  555. * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().
  556. 2003-07-21 Atsushi Enomoto <[email protected]>
  557. * XmlSchema.cs, XmlSchemaElement.cs :
  558. added internal MissingElementTypeRefs and support for refering
  559. element's elementType.
  560. 2003-07-20 Atsushi Enomoto <[email protected]>
  561. * XmlSchema.cs : added support for collecting missing type references
  562. at compilation-time.
  563. * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs:
  564. - Renamed qName to QNameInternal.
  565. - Added BaseSchemaType and ContentTypeParticle support.
  566. 2003-07-19 Atsushi Enomoto <[email protected]>
  567. * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs,
  568. XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs,
  569. XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs,
  570. XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs,
  571. XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
  572. XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
  573. XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs,
  574. XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs,
  575. XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs,
  576. XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs,
  577. XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
  578. XmlSchemaSimpleContentExtension.cs,
  579. XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
  580. XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs,
  581. XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs,
  582. XmlSchemaXPath.cs,
  583. As to Compile() and Validate(),
  584. - Added CompilationId and check it while compiling schema components.
  585. - Code refactory. Replaced literal xmlns with XmlSchema.Namespace
  586. - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema
  587. also has PSVI components inside it, so passing itself seems enough).
  588. - Related to above change, IDCollection was moved to XmlSchema, and
  589. blockDefault/finalDefault/blockResolved/finalResolved resolution
  590. was changed to reference only to schema.BlockDefault/FinalDefault.
  591. - The similar change has done against XmlSchemaForm related stuff.
  592. - Changed compilation order of schema type definitions (it is
  593. workaround). First it compiles types, and then it compiles others.
  594. * XmlSchemaElement.cs : added ElementType PSVI contribution support.
  595. 2003-07-19 Atsushi Enomoto <[email protected]>
  596. * BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
  597. Added decimal and its derived datatypes.
  598. Added abstract XsdAnySimpleType.
  599. 2003-07-15 Lluis Sanchez Gual <[email protected]>
  600. * BuiltInDatatype.cs,
  601. XmlSchemaDatatype.cs : added unsignedByte type support.
  602. 2003-07-14 Lluis Sanchez Gual <[email protected]>
  603. * XmlSchemaDatatype.cs: Fixed compiler warning.
  604. 2003-07-12 Atsushi Enomoto <[email protected]>
  605. * BuiltInDatatype.cs,
  606. XmlSchemaDatatype.cs : added NOTATION type support.
  607. 2003-07-06 Atsushi Enomoto <[email protected]>
  608. * added BuiltInDatatype.cs.
  609. * XmlSchemaDatatype.cs : [GetType()] added support for some
  610. built-in datatypes.
  611. 2003-05-05 Atsushi Enomoto <[email protected]>
  612. * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().
  613. 2003-02-19 Atsushi Enomoto <[email protected]>
  614. * XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
  615. and <documentation> elements. (patch by Peter Pentchev)
  616. * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject
  617. instead of XmlSchema. (patch by Peter Pentchev)
  618. 2002-07-23 Duncan Mak <[email protected]>
  619. * XmlSchemaException.cs: Partiall implement the ISerializable
  620. methods. It's not clear now SourceSchemaObject should be deserialized.
  621. 2002-07-22 Tim Coleman <[email protected]>
  622. * XmlSchema.cs: Removed isCompiled which is defined as internal
  623. in XmlSchemaObject.
  624. 2002-06-18 Dwivedi, Ajay kumar <[email protected]>
  625. * XmlSchema: Started work on Validate methods
  626. 2002-06-18 Dwivedi, Ajay kumar <[email protected]>
  627. * XmlSchema: The Read and Write methods are no more [MonoTODO] :)
  628. * XmlSchemaAppInfo: Xml Markup is now being read.
  629. * XmlSchemaDocumentation: Xml Markup is now being read.
  630. * All: Unhandled attributes are being handled properly.
  631. * All: Reordered the properties in all cs files to match with MS
  632. Implementation. This was required since the order is importatnt
  633. for the XmlSerializer.
  634. 2002-06-14 Dwivedi, Ajay kumar <[email protected]>
  635. * General: Fixed a few more Bugs
  636. 2002-06-10 Dwivedi, Ajay kumar <[email protected]>
  637. * XmlSchemaReader: A Wrapper class around XmlReader with customized
  638. methods to suit reading a schema.
  639. * General: Implemented Read() method for the schema. There are only
  640. a few minor bugs remaining.
  641. 2002-05-25 Dwivedi, Ajay kumar <[email protected]>
  642. * BUGS.txt: New file to keep track of bugs
  643. * ALL: All classes are initialized exactly as in .NET except
  644. 1. inclusion of language attribute in schema
  645. 2. ComplexContent's Particle is initialized to null whereas .NET
  646. to some internal implementation. IMO Null is more appropriate
  647. * ALL: Changed the Compile methods to return the count of errors.
  648. * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests.
  649. This number should shoot up if we write a parser to read the
  650. Schema instead of using reflection (which is slower too)
  651. 2002-05-04 Dwivedi, Ajay kumar <[email protected]>
  652. * XmlSchemaUtil.cs: New file added.
  653. * Parser.cs: New file Added. Unused at the moment.
  654. * XmlSchemaObjectCollection: Fixed GetEnumerator
  655. * General: Preprocessing for Attributes and SimpleTypes completed.
  656. 2002-04-26 Duncan Mak <[email protected]>
  657. * ValidationHandler.cs: New file.
  658. * XmlSchemaInfo.cs: New file.
  659. * *.cs: More updates from Ajay.
  660. 2002-03-27 Duncan Mak <[email protected]>
  661. * *.cs: Updates from Ajay Dwivedi <[email protected]>.