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