2b0748473703ee0c9e9c2e3bf3d559a46ebdcee8
[mono.git] / mcs / class / System.XML / System.Xml.Schema / ChangeLog
1 2003-12-14  David Sheldon <dave-mono@earth.li>
2
3   * XmlSchemaSimpleTypeRestriction.cs : Check that min/max/lengths 
4     specified are integers. Also made some error messages more useful.
5
6 2003-12-08  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
7
8         * XmlSchemaSimpleTypeRestriction.cs : patch by David Sheldon. Check
9           if max/min length range is valid.
10
11 2003-12-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
12
13         * BuiltInDatatype.cs : XsdDecimal and XsdInteger defaults whitespace
14           facet as collapse (patch by David Sheldon).
15         * XmlSchemaAnnotations.cs, XmlSchemaAny.cs : No more MonoTODOs ;-)
16         * XmlSchemaSequence.cs : MapAndSum implementation.
17
18 2003-11-17  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
19
20         * XmlSchemaSet.cs, XmlSchemaBuiltInType.cs : Added .NET 1.2 classes
21           (for convenience of ObjectSpaces stubbing).
22
23 2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
24
25         * BuiltInDatatype.cs : XsdByte was incorrectly typed as byte, while
26           the correct binding is sbyte.
27         * XmlSchemaAll.cs,
28           XmlSchemaChoice.cs,
29           XmlSchemaSequence.cs,
30           XmlSchemaGroupBase.cs : ActualParticle now considers pointlessness
31           described in WXS structures 3.9.6.
32           Added ValidateRecurse() to support 'Recurse' validation.
33         * XmlSchemaComplexType.cs : Removed incorrect content type conformity
34           check.
35         * XmlSchemaElement.cs : Implemented 'RecurseAsIfGroup' validation
36           described in WXS structures 3.9.6.  Fixed type derivation check to
37           do only if the base type is not anyType.
38         * XmlSchemaSimpleTypeRestriction.cs : Should catch Regex() 
39           construction exception. ValidateList... and ValidateNonList... was
40           in reverse.
41         * XmlSchemaUtil.cs : Removed extra MonoTODO. Removed CheckToken().
42
43 2003-10-25  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
44
45         * BuiltInDatatype.cs : Fixed incorrect inheritance of date and time.
46           Fixed most of date-time related types' ParseValue().
47           Applied Normalize() before parsing values in some ParseValue().
48
49 2003-10-23  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
50
51         * XmlSchemaAll.cs,
52           XmlSchemaChoice.cs,
53           XmlSchemaGroupBase.cs,
54           XmlSchemaSequence.cs : Now CompiledItems went to XmlSchemaGroupBase.
55         * XmlSchemaAny.cs,
56           XmlSchemaElement.cs,
57           XmlSchemaGroupBase.cs,
58           XmlSchemaGroupRef.cs,
59           XmlSchemaParticle.cs,
60           XmlSchemaSequence.cs : Added ParticleEquals() method to compare 
61           whether the particles are equal in the context of WXS part 1 - 3.9.6.
62         * XmlSchemaAny.cs : Implemented ValidateDerivationByRestriction().
63         * XmlSchemaAnyAttribute.cs : Removed extraneous lines and added my
64           responsibility on this class.
65           Added ValidateWildcardAllowsNamespaceName().
66         * XmlSchemaAttribute.cs : Added ValidatedUse which holds post-
67           compilation value of "Use".
68         * XmlSchemaAttributeGroup.cs,
69           XmlSchemaAttributeGroupRef.cs : Removed MonoTODO (same as some other
70           classes) since there is no more errors on attribute stuff ;-)
71         * XmlSchemaComplexType.cs : complex content extension must block 
72           derivation from any built-in primitive types.
73           Fixed wildcard derivation by restriction.
74           ValidateDerivationByRestriction() now checks attribute related
75           validity of DBR (derivation by restriction).
76           Now uses ParticleEquals() for particle DBR check.
77         * XmlSchemaSequence.cs : Fixed to use CompiledItems instead of Items.
78
79 2003-10-21  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
80
81         * XmlSchema.cs,
82           XmlSchemaUtil.cs : Reduced warning message.
83         * XmlSchemaAttribute.cs : NotImplementedException should no more exist.
84           (All things are going to be implemented.)
85         * BuiltInDatatype.cs : XsdInteger should not allow non-integer decimal.
86         * XmlSchemaSimpleType.cs : Added internal Datatype property. Implemented
87           list type derivation validation. Added Normalize().
88         * XmlSchemaSimpleTypeContent.cs : Added Normalize(). Replaced anyType
89           with anySimpleType.
90         * XmlSchemaSimpleTypeRestriction.cs : Implemented some facet validation,
91           such as pattern, enumeration, and length etc.
92
93 2003-10-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
94
95         * BuiltInDatatype.cs : Implemented XsdHexBinary.Parse().
96         * XmlSchemaCollection.cs : Implemented CopyTo().
97         * XmlSchemaDatatype.cs : Added Normalize() with whitespace handling.
98           Added support for anySimpleType.
99         * XmlSchemaSimpleType.cs : Type specification named as anyType should
100           be mapped to anySimpleType.
101         * BUGS-MS.txt : Added more case note.
102
103 2003-10-13  Lluis Sanchez Gual <lluis@ximian.com>
104
105         * XmlSchema.cs: If the schema element is an empty element, skip it after
106           reading the attributes.
107
108 2003-10-09  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
109
110         * BuiltInDatatype.cs : Added CLSCompliant attributes to some classes.
111
112 2003-10-01  Lluis Sanchez Gual <lluis@ximian.com>
113
114         * XmlSchemaUtil.cs: arrayType attribute needs special handling.
115
116 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
117
118         * XmlSchema.cs : Forgot to update with previous files.
119
120 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
121
122         * XmlSchemaAttribute.cs, XmlSchemaComplexType.cs, XmlSchemaElement.cs,
123           XmlSchemaGroupRef.cs, XmlSchemaSimpleContentExtension.cs,
124           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleTypeContent.cs,
125           XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeUnion.cs :
126           Fixed missing sub components check. It should fix soap stuff.
127         * XmlSchemaAny.cs, XmlSchemaAttribute.cs,
128           XmlSchemaAttributeGroupRef.cs, XmlSchemaContent.cs :
129           Added my responsibility on them ;-)
130
131 2003-10-01  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
132
133         * XmlSchema.cs : Read() should keep current position of XmlReader if
134           it was already positioned to 'schema' element.
135
136 2003-09-30  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
137
138         * Forgot to append 8/24/2003 ChangeLog.
139         * BUGS.txt, BUGS-MS.txt : Appended additional bug info.
140         * BuiltInDatatype.cs, ValidationHandler.cs, XmlSchema.cs, 
141           XmlSchemaAll.cs, XmlSchemaAnnotation.cs. XmlSchemaAny.cs,
142           XmlSchemaAnyAttribute.cs, XmlSchemaAttribute.cs,
143           XmlSchemaAttributeGroup.cs, XmlSchemaAttributeGroupRef.cs,
144           XmlSchemaChoice.cs, XmlSchemaCollection.cs,
145           XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
146           XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
147           XmlSchemaContent.cs, XmlSchemaDatatype.cs, XmlSchemaElement.cs,
148           XmlSchemaException.cs, XmlSchemaGroup.cs, XmlSchemaGroupBase.cs,
149           XmlSchemaGroupRef.cs, XmlSchemaIdentityConstraint.cs,
150           XmlSchemaKey.cs, XmlSchemaKeyref.cs, XmlSchemaNotation.cs,
151           XmlSchemaObject.cs, XmlSchemaObjectTable.cs, XmlSchemaParticle.cs,
152           XmlSchemaReader.cs, XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
153           XmlSchemaSimpleContentExtension.cs,
154           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
155           XmlSchemaSimpleTypeContent.cs, XmlSchemaSimpleTypeList.cs,
156           XmlSchemaSimpleTypeRestriction.cs, XmlSchemaSimpleTypeUnion.cs,
157           XmlSchemaType.cs, XmlSchemaUnique.cs, XmlSchemaUtil.cs,
158           XmlSchemaXPath.cs :
159
160           - Almost all classes are changed to implement schema component
161             constraints, and schema validation using XsdValidatingReader.
162           - better exception messages.
163           - More datatype support.
164           and so on.
165
166 2003-09-14  Lluis Sanchez Gual <lluis@ximian.com>
167
168         * XmlSchema.cs: Do not add schema namespace declaration if it is already
169           declared.
170
171 2003-08-28  Lluis Sanchez Gual <lluis@ximian.com>
172
173         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added double type.
174
175 2003-08-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
176
177         * BuiltInDatatype.cs : XsdDecimal.TokenizedType should be None.
178         * XmlSchemaCollection.cs : Add(uri) should not reject chameleon schema.
179           Add() should compile specified schema.
180
181 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
182
183         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs: Added XsdAnyURI,
184           XsdDateTime, XsdDate, XsdTime.
185
186 2003-08-07  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
187
188         * BuiltInDatatypes.cs : Fixed whitespace facet in XsdToken.
189           Tokenized type of nmtokens and entities is string [].
190         * XmlSchema.cs : Changed IsCompile implementation a bit.
191           Compile() should reset compiled contents.
192         * XmlSchemaDatatype.cs : Fixed collapsing Normalize().
193         * XmlSchemaObject.cs : added CompilationId initialization.
194
195 2003-08-05  Lluis Sanchez Gual <lluis@ximian.com>
196
197         * XmlSchema.cs: Set IsCompiled to true after compiling.
198           In Compile(): ignore included schemas that do not have a value
199           in SchemaLocation. It means that FindElement can return null
200           if the referred schema was ignored. Added check for that case.
201           Compile schema after reading it.
202         * XmlSchemaCollection.cs: The targetNamespace of a schema may
203           be null. Make XmlSchemaCollection work for this case.
204         * BuiltInDataType.cs, XmlSchemaDataType.cs: added new primitive
205           types: float, base64Binary, boolean.
206
207 2003-08-02  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
208
209         * XmlSchema.cs :
210           - Changed missingElementTypeRefs from Hashtable to ArrayList.
211           - Added internal XmlSchemas for keeping imported schemas.
212           - Added private Compile() that takes the original rootSchema and
213             schema location stack for nested inclusion check.
214           - Added basic xs:import and xs:include support.
215           - Compile() is now aware of included XmlSchemaObject items.
216           - Changed Compile() to fill missing elements' types and that of
217             referencing elements.
218           - Read() now adds SourceUri property (although only to itself).
219         * XmlSchemaCollection.cs : Implemented Add().
220         * XmlSchemaCollectionEnumerator.cs :
221           Changed .ctor() to use schema collection as its argument.
222           Fixed Current to return hashtable's Value, instead of Current 
223           (which returns DictionaryEntry).
224         * XmlSchemaComplexType.cs :
225           Added internal static AnyType.
226           Compile() is now searches for its base type into other schemas.
227         * XmlSchemaElement.cs : anyType is supported.
228           It now searches for type information after Compile().
229           SetReferedElementInfo() is now changed to SetSchemaType().
230         * XmlSchemaObjectTable.cs :
231           It had problems similar to schema collection. Now it uses internal
232           class XmlSchemaObjectTableEnumerator to support GetEnumerator().
233         * XmlSchemaParticle.cs : added internal class XmlSchemaParticleEmpty
234           and internal static Empty.
235
236 2003-07-26  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
237
238         * BuiltInDatatype.cs : XsdIDRefs.ParseValue () should be implemented.
239         * XmlSchemaDatatype.cs : public Whitespace and protected Normalize()
240           should be internal.
241
242 2003-07-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
243
244         * XmlSchema.cs : Read() now uses XmlSerializer.Deserialize().
245
246 2003-07-21  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
247
248         * XmlSchema.cs, XmlSchemaElement.cs :
249           added internal MissingElementTypeRefs and support for refering 
250           element's elementType.
251
252 2003-07-20  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
253
254         * XmlSchema.cs : added support for collecting missing type references
255           at compilation-time.
256         * XmlSchemaType.cs, XmlSchemaComplexType.cs, XmlSchemaSimpleType.cs:
257           - Renamed qName to QNameInternal.
258           - Added BaseSchemaType and ContentTypeParticle support.
259
260 2003-07-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
261
262         * XmlSchema.cs, XmlSchemaAll.cs, XmlSchemaAnnotated.cs,
263           XmlSchemaAnnotation.cs, XmlSchemaAny.cs, XmlSchemaAnyAttribute.cs,
264           XmlSchemaAttribute.cs, XmlSchemaAttributeGroup.cs,
265           XmlSchemaAttributeGroupRef.cs, XmlSchemaChoice.cs,
266           XmlSchemaComplexContent.cs, XmlSchemaComplexContentExtension.cs,
267           XmlSchemaComplexContentRestriction.cs, XmlSchemaComplexType.cs,
268           XmlSchemaElement.cs, XmlSchemaGroup.cs, XmlSchemaGroupRef.cs,
269           XmlSchemaIdentityConstraint.cs, XmlSchemaImport.cs,
270           XmlSchemaInclude.cs, XmlSchemaKey.cs, XmlSchemaKeyref.cs,
271           XmlSchemaNotation.cs, XmlSchemaObject.cs, XmlSchemaRedefine.cs,
272           XmlSchemaSequence.cs, XmlSchemaSimpleContent.cs,
273           XmlSchemaSimpleContentExtension.cs,
274           XmlSchemaSimpleContentRestriction.cs, XmlSchemaSimpleType.cs,
275           XmlSchemaSimpleTypeList.cs, XmlSchemaSimpleTypeRestriction.cs,
276           XmlSchemaSimpleTypeUnion.cs, XmlSchemaUnique.cs,
277           XmlSchemaXPath.cs, 
278           As to Compile() and Validate(),
279           - Added CompilationId and check it while compiling schema components.
280           - Code refactory. Replaced literal xmlns with XmlSchema.Namespace
281           - Replaced XmlSchemaInfo with compiling XmlSchema itself (XmlSchema
282             also has PSVI components inside it, so passing itself seems enough).
283           - Related to above change, IDCollection was moved to XmlSchema, and
284             blockDefault/finalDefault/blockResolved/finalResolved resolution
285             was changed to reference only to schema.BlockDefault/FinalDefault.
286           - The similar change has done against XmlSchemaForm related stuff.
287           - Changed compilation order of schema type definitions (it is
288             workaround). First it compiles types, and then it compiles others.
289         * XmlSchemaElement.cs : added ElementType PSVI contribution support.
290
291 2003-07-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
292
293         * BuiltInDatatypes.cs, XmlSchemaDatatype.cs :
294           Added decimal and its derived datatypes.
295           Added abstract XsdAnySimpleType.
296
297 2003-07-15  Lluis Sanchez Gual <lluis@ximian.com>
298
299         * BuiltInDatatype.cs,
300           XmlSchemaDatatype.cs : added unsignedByte type support.
301
302 2003-07-14  Lluis Sanchez Gual <lluis@ximian.com>
303
304         * XmlSchemaDatatype.cs: Fixed compiler warning.
305
306 2003-07-12  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
307
308         * BuiltInDatatype.cs,
309           XmlSchemaDatatype.cs : added NOTATION type support.
310
311 2003-07-06  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
312
313         * added BuiltInDatatype.cs.
314         * XmlSchemaDatatype.cs : [GetType()] added support for some 
315           built-in datatypes.
316
317 2003-05-05  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
318
319         * XmlSchemaAnnotation.cs : It depended on incorrect ReadNode().
320
321 2003-02-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
322
323         * XmlSchemaAnnotation.cs : expect the correct closing tag on <appinfo>
324                 and <documentation> elements. (patch by Peter Pentchev)
325         * XmlSchemaObjectEnumerator.cs : cast properly to XmlSchemaObject 
326                 instead of XmlSchema. (patch by Peter Pentchev)
327
328 2002-07-23  Duncan Mak  <duncan@ximian.com>
329
330         * XmlSchemaException.cs: Partiall implement the ISerializable
331         methods. It's not clear now SourceSchemaObject should be deserialized.
332
333 2002-07-22  Tim Coleman  <tim@timcoleman.com>
334         * XmlSchema.cs: Removed isCompiled which is defined as internal
335                 in XmlSchemaObject.
336
337 2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
338         
339         * XmlSchema: Started work on Validate methods
340
341 2002-06-18  Dwivedi, Ajay kumar <adwiv@yahoo.com>
342         * XmlSchema: The Read and Write methods are no more [MonoTODO] :)
343         
344         * XmlSchemaAppInfo: Xml Markup is now being read.
345         
346         * XmlSchemaDocumentation: Xml Markup is now being read.
347
348         * All: Unhandled attributes are being handled properly.
349                
350         * All: Reordered the properties in all cs files to match with MS
351                Implementation. This was required since the order is importatnt
352                for the XmlSerializer.
353         
354 2002-06-14  Dwivedi, Ajay kumar <adwiv@yahoo.com>
355         * General: Fixed a few more Bugs
356
357 2002-06-10  Dwivedi, Ajay kumar <adwiv@yahoo.com>
358         * XmlSchemaReader: A Wrapper class around XmlReader with customized
359           methods to suit reading a schema.
360         * General: Implemented Read() method for the schema. There are only
361           a few minor bugs remaining.
362
363 2002-05-25  Dwivedi, Ajay kumar <adwiv@yahoo.com>
364         * BUGS.txt: New file to keep track of bugs
365
366         * ALL: All classes are initialized exactly as in .NET except
367                1. inclusion of language attribute in schema
368                2. ComplexContent's Particle is initialized to null whereas .NET 
369                   to some internal implementation. IMO Null is more appropriate
370
371         * ALL: Changed the Compile methods to return the count of errors.
372
373         * ALL: Complile methods are almost complete. Pass 1453 of 3061 tests.
374                This number should shoot up if we write a parser to read the
375                Schema instead of using reflection (which is slower too)
376
377 2002-05-04  Dwivedi, Ajay kumar <adwiv@yahoo.com>
378         * XmlSchemaUtil.cs: New file added. 
379         
380         * Parser.cs: New file Added. Unused at the moment.
381
382         * XmlSchemaObjectCollection: Fixed GetEnumerator
383         
384         * General: Preprocessing for Attributes and SimpleTypes completed.
385
386 2002-04-26  Duncan Mak  <duncan@ximian.com>
387
388         * ValidationHandler.cs: New file.
389
390         * XmlSchemaInfo.cs: New file.
391
392         * *.cs: More updates from Ajay.
393
394 2002-03-27  Duncan Mak  <duncan@ximian.com>
395
396         * *.cs: Updates from Ajay Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>.