2005-12-05 Lluis Sanchez Gual <lluis@novell.com>
[mono.git] / mcs / class / System.XML / Mono.Xml.Schema / ChangeLog
1 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
2
3         * XmlSchemaValidatingReader.cs : XmlSchemaValidationFlags is updated.
4
5 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
6
7         * XsdValidatingReader.cs, XmlSchemaValidatingReader.cs,
8           XsdIdentityState.cs :
9           Dependent changes caused by XmlValueGetter changes.
10
11 2005-11-07  Atsushi Enomoto <atsushi@ximian.com>
12
13         * XsdValidatingReader.cs : XmlReader.ReadTypedValue() does not exist 
14           anymore, so it is not override.
15
16 2005-09-30  Atsushi Enomoto <atsushi@ximian.com>
17
18         * XsdValidatingReader.cs: make ParserContext and its NamespaceManager
19           optional. This is for NVDL xsd support.
20
21 2005-09-30  Atsushi Enomoto <atsushi@ximian.com>
22
23         * XsdValidatingReader.cs: allow validation for such XmlReader whose
24           ReadState is Interactive (hold different "is started" flag). This
25           is a fix for nvdl support.
26
27 2005-09-25  Atsushi Enomoto <atsushi@ximian.com>
28
29         * XmlSchemaValidatingReader.cs: XmlSchemaValidationFlags updates.
30
31 2005-08-03  Gert Driesen <drieseng@users.sourceforge.net>
32
33         * XsdValidationReader.cs: GetNamespacesInScope returns generic
34         IDictionary in .NET 2.0 Beta 2.
35         * XmlSchemaValidatingReader.cs: GetNamespacesInScope returns generic
36         IDictionary in .NET 2.0 Beta 2.
37
38 2005-07-28  Atsushi Enomoto <atsushi@ximian.com>
39
40         * XsdValidatingReader.cs : when xsi:schemaLocation could not be
41           resolved, it still does not raise error when corresponding schema
42           already exists.
43
44 2005-05-05  Atsushi Enomoto <atsushi@ximian.com>
45
46         * XsdValidatingReader.cs :
47           removed atomicName related 2.0 members (deprecated in beta2).
48
49 2005-03-22  Atsushi Enomoto <atsushi@ximian.com>
50
51         * XsdValidatingReader.cs : removed unused method which was warned.
52
53 2004-12-22  Atsushi Enomoto <atsushi@ximian.com>
54
55         * XsdValidatingReader.cs : XmlResolver.ResolveUri() may return null.
56
57 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
58
59         * XsdValidatingReader.cs : added ActualSchemaType to context type.
60         * XmlSchemaValidatingReader.cs : added SchemaInfo override.
61
62 2004-12-16  Atsushi Enomoto <atsushi@ximian.com>
63
64         * XsdParticleValidationState.cs :
65           Removed some unused or unnecessary members. Readonlify some members.
66           Added GetExpectedParticles(ArrayList) and overriden in all state
67           types, which is used in XmlSchemaValidator.GetExpectedParticles().
68
69 2004-12-15  Atsushi Enomoto <atsushi@ximian.com>
70
71         * XmlSchemaValidatingReader.cs : xsi:* attributes are now handled via
72           XmlSchemaValidator.ValidateElement().
73           Removed some obsolete overrides.
74
75 2004-12-14  Atsushi Enomoto <atsushi@ximian.com>
76
77         * XmlSchemaValidatingReader.cs : new file; another XmlReader 
78           implementation that handles XSD validation. It is an reference
79           application for XmlSchemaValidator.
80         * XsdValidatingReader.cs : Use readerLineInfo for IXmlLineInfo.
81
82 2004-12-14  Atsushi Enomoto <atsushi@ximian.com>
83
84         * XsdIdentityState.cs : use validation exception for 2.0.
85           ProcessMatch() does not have to return bool. Use break and continue
86           and reduced indentation.
87         * XsdValidatingReader.cs : use validation exception for 2.0.
88           Added new XsdIDManager class and id handling is delegated to it.
89           XmlQualifiedName -> QName. AssessElementLocallyValidElement() does
90           not need XmlSchemaElement (it is context). Moved some static
91           methods to XmlSchemaUtil.cs. Collected key constraints stuff to a
92           region.
93
94 2004-12-13  Atsushi Enomoto <atsushi@ximian.com>
95
96         * XsdKeyTable.cs : eliminated XmlReader dependency.
97         * XsdValidatingReader.cs :
98           AssertIdentityConstraints() is now splited to selector validation
99           and field validation. Extracted EndKeyrefValidation() to process
100           keyref constraints.
101           Added ReadExternalSchema() and commonized xsi:schemaLocation
102           handling and xsi:noNamespaceSchemaLocation handling.
103         * XsdIdentityState.cs :
104           Eliminated XsdValidatingReader dependency.
105           In XsdKeyEntryField, renamed KeySequence to OwnerSequence.
106           XsdKeyEntryFieldCollection is now based on CollectionBase.
107           In XsdKeyEntry, FieldMatches() is renamed to ProcessMatch() and
108           modified to accept splited XsdValidatingReader members.
109         * XsdIdentityPath.cs : added default .ctor() and IsAttribute property.
110
111 2004-12-13  Atsushi Enomoto <atsushi@ximian.com>
112
113         * XsdIdentityState.cs,
114           XsdIdentityPath.cs,
115           XsdKeyTable.cs : fixed mixed line ending.
116
117 2004-12-11  Atsushi Enomoto <atsushi@ximian.com>
118
119         * XsdValidatingReader.cs,
120           XsdIdentityState.cs : more refactoring.
121           Reduced XmlReader dependency in identity constraint classes.
122           Hide State in XsdValidationContext.
123           Simplify character validation and state resetting.
124           Need more event deligation on ExamineAdditionalSchema().
125           Just cache attribute type directly instead of QName.
126           Use XmlSchemaUtil.ReadTypedValue() common code.
127
128 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
129
130         * XsdKeyTable.cs :
131           Replaced ArrayList with new XsdKeyEntryCollection type.
132           Workarounded bug #70419.
133         * XsdValidatingReader.cs : propagate validation event handler and
134           XmlResolver. And used them.
135           Renamed local variables a bit (unified to other blocks).
136
137 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
138
139         * XsdValidatingReader.cs,
140           XsdParticleValidationState.cs : Fixed the previous problem ==
141           inconsistent start assessment and end assessment.
142           More refactory: stateManager is just renamed to state, and its type
143           name is now XsdParticleStateManager.
144           Now Context is included in state.
145           Shortened lengthy xsd related type names with usingdecl.
146
147 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
148
149         * XsdValidatingReader.cs : mhm, something is wrong with call to
150           context.PopScope(). So quick fix and marked as FIXME.
151
152 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
153
154         * XsdParticleValidationState.cs : removed unused enum.
155         * XsdValidatingReader.cs : more refactoring. Validation process is
156           now strictly done only when not skipping (no side effect).
157           - elementQnameStack is used only in keyref resolution, so just moved
158             Pop() into EndElement block and thus removed popContext.
159           - Renamed currentQName to attrQName (only used for attribute).
160           - Create defaultAttributes array only when required.
161           So now XsdValidationContext has only Element, State and XsiType.
162           - It now just holds Stack for state objects (instead of Hashtable).
163             Child state is set inside StartElementSchemaValidity (it is kind
164             of StartTagCloseDeriv()).
165           - Removed Clear().
166
167 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
168
169         * XsdValidatingReader.cs : more refactoring on XsdValidationContext.
170           context.Load() was unnecessary. SchemaType is not necessary.
171           SiblingState and Element are now not accessed externally.
172
173 2004-12-09  Atsushi Enomoto <atsushi@ximian.com>
174
175         * XsdValidatingReader.cs : more refactoring.
176
177 2004-12-08  Atsushi Enomoto <atsushi@ximian.com>
178
179         * XsdValidatingReader.cs : making smarter relationship between
180           XmlValidatingReader. Added ValidationEventHandler and ValidationType.
181           nonDefaultAttributeCount was extraneous.
182           Added 'checkIdentity' (i.e. !IgnoreIdentityConstraints).
183           DefaultAttributesCache property did make little sense, so just
184           reverted to ArrayList field.
185
186 2004-11-26  Atsushi Enomoto  <atsushi@ximian.com>
187
188         * XsdValidatingReader.cs : warning elimination
189
190 2004-11-24  Atsushi Enomoto  <atsushi@ximian.com>
191
192         * XsdValidatingReader.cs : commented out some fields and depending
193           code that are currently not used.
194           Fixed "one incorrect missing component handling" in the last commit
195           (it was correct).
196         * XsdIdentityState.cs : removed unused fields and local variables.
197
198 2004-11-20  Atsushi Enomoto  <atsushi@ximian.com>
199
200         * XsdValidatingReader.cs : quick fix for bug #69620. In some cases
201           SchemaSet looks not compiled.
202           Fixed one incorrect missing component handling.
203
204 2004-11-08  Atsushi Enomoto  <atsushi@ximian.com>
205
206         * XsdValidatingReader.cs : reuse NameTable on loading external schema.
207
208 2004-11-07  Atsushi Enomoto  <atsushi@ximian.com>
209
210         * XsdValidatingReader.cs : optimized some ArrayList fields; create them
211           only when required.
212
213 2004-08-20  Atsushi Enomoto  <atsushi@ximian.com>
214
215         * XsdValidatingReader.cs : ReadTypedValue() is override under 2_0.
216
217 2004-08-10  Atsushi Enomoto <atsushi@ximian.com>
218
219         * XsdValidatingReader.cs : replaced XmlSchemaCollection with
220           XmlSchemaSet. Removed unused code.
221
222 2004-08-03  Atsushi Enomoto <atsushi@ximian.com>
223
224         * XsdValidatingReader.cs : implemented 2.0 IXmlNamespaceResolver.
225
226 2004-06-18  Atsushi Enomoto <atsushi@ximian.com>
227
228         * XsdIdentityPath.cs : removed unused code.
229         * XsdIdentityState.cs : Globalization.
230
231 2004-06-11  Atsushi Enomoto <atsushi@ximian.com>
232
233         * XsdValidatingReader.cs : Identity check didn't work fine when
234           reference node appeared in front of the target key node.
235           This fixes bug #59889.
236
237 2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
238
239         * XsdValidatingReader.cs : Close XmlTextReader more strictly. Exception
240           might be thrown in ctor() *after* stream open and before try-catch.
241
242 2004-06-03  Atsushi Enomoto <atsushi@ximian.com>
243
244         * XsdValidatingReader.cs : XmlNamespaceManager.LookupPrefix() allows
245           only atomized names.
246
247 2004-02-16  Atsushi Enomoto <atsushi@ximian.com>
248
249         * XsdIdentityPath.cs,
250           XsdIdentityState.cs,
251           XsdKeyTable.cs,
252           XsdParticleValidationState.cs,
253           XsdValidatingReader.cs,
254           XsdWildcard.cs : made classes internal. Removed extra TODO comments.
255
256 2004-02-08  Atsushi Enomoto <atsushi@ximian.com>
257
258         * XsdIdentityState.cs,
259           XsdKeyTable.cs,
260           XsdParticleValidationState.cs,
261           XsdValidatingReader.cs,
262           XsdWildcard.cs : foreach elimination.
263
264 2004-02-04  Atsushi Enomoto <atsushi@ximian.com>
265
266         * XsdValidatingReader.cs : When the reader points at XmlDeclaration,
267           AttributeCount counts its values (version, encoding, standalone).
268
269 2004-02-03  Atsushi Enomoto <atsushi@ximian.com>
270
271         * XsdValidatingReader.cs : schemaLocation is not NMTOKENS. It is list
272           of anyURI. Just split names and handle as anyURI.
273
274 2004-01-26  Atsushi Enomoto <atsushi@ximian.com>
275
276         * XsdParticleValidationState.cs :
277           - Now it uses ContentTypeParticle as inputs, so no GroupRef 
278             should occur anymore.
279           - xs:any should use ResolvedProcessContents. It fixes some errors.
280         * XsdValidatingReader.cs :
281           - Attribute wildcard validation should use ResolvedProcessContents.
282           - Use newly added XmlResolver field to resolve external schemas
283             specified by xsi:schemaLocation attributes.
284           - Added warning handler and raise warning events when instance-
285             specified schemas could not be resolved.
286           - xs:anyType should not be treated as a primitive datatype at
287             xsi:type resolution.
288           - Schema type was incorrectly remained when the element is laxly
289             validated.
290
291 2004-01-21  Atsushi Enomoto <atsushi@ximian.com>
292
293         * XsdKeyTable.cs : Matching evaluation is incorrect when path is more
294           than depth 2.
295         * XsdValidatingReader.cs : Should clear LocalTypeDefinition when no
296           xsi:type was specified.  
297           Moved character validation inside AssessEndElementSchemaValidity().
298
299 2004-01-20  Atsushi Enomoto <atsushi@ximian.com>
300
301         * XsdParticleValidationState.cs : Use ValidatedMaxOccurs instead of
302           MaxOccurs. (in the meantime)
303         * XsdValidatingReader.cs : "fixed" should not be treated as default.
304         * XsdWildcard.cs : several Wildcard Subset constraint related fixes.
305
306 2004-01-15  Atsushi Enomoto <atsushi@ximian.com>
307
308         * XsdValidatingReader.cs : Now use ValidatableParticle instead of
309           ContentTypeParticle.  Use BaseXmlSchemaType.
310
311 2004-01-14  Atsushi Enomoto <atsushi@ximian.com>
312
313         * XsdIdentityState.cs :
314           Now takes xsi:nil value into consideration for comparison.
315           nsname:* was not handled correctly.
316           Reject complexType as key value type (it is dynamic instance error).
317         * XsdKeyTable.cs : remoed unused code.
318         * XsdValidatingReader.cs :
319           ID comparison was not done.
320           {final} value of attribute definition was not used for default value.
321           Get xsi:nil value from non-default value.
322
323 2004-01-13  Atsushi Enomoto <atsushi@ximian.com>
324
325         * XsdValidatingReader.cs :
326           Dependent change with XmlSchemaElement internal property.
327
328 2004-01-13  Atsushi Enomoto <atsushi@ximian.com>
329
330         * XsdValidatingReader.cs : Throw exception only in case of errors.
331
332 2004-01-08  Lluis Sanchez Gual  <lluis@ximian.com>
333
334         * XsdValidatingReader.cs: In MoveToAttribute(name), if "name" is a default
335         attribute, search for the attribute ignoring the namespace. This matches
336         MS.NET behavior (and fixes bug #52557).
337
338 2004-01-08  Atsushi Enomoto <atsushi@ximian.com>
339
340         * XsdValidatingReader.cs : Fixed in reflection to 
341           XmlSchemaObjectTableGetEnumerator.Value change.
342
343 2004-01-08  Nick Drochak <ndrochak@ieee.org>
344
345         * XsdParticleValidationState.cs: Remove unreachable code.
346
347 2003-12-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
348
349         * XsdValidatingReader.cs : When source Reader has schema context, it
350           should return source's schema type if this class cannot provide it.
351
352 2003-12-08  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
353
354         * XsdValidatingReader.cs : patch by David Sheldon. Base type's facet 
355           validation should also be done.
356
357 2003-12-07  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
358
359         * XsdValidatingReader.cs : FindElement() should use argument names
360           (patch by David Sheldon).  Warning elimination.
361
362 2003-10-26  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
363
364         * XsdValidatingReader.cs : xsi:type should be normalized. More cleanup.
365         * XsdParticleValidationState.cs : Reverted default content processing
366           to lax. It is msxsdtest/wildCard/wildG038.xsd which looks incorrect.
367
368 2003-10-25  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
369
370         * XsdValidatingReader.cs : Removed MonoTODO which was implemented in
371           XmlValidatingreader as a result. Added xsi:nil normalization.
372
373 2003-10-23  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
374
375         * XsdParticleValidationState.cs : Default content processing shoule be
376           lax.
377         * XsdValidatingReader.cs : If there is no trial to get schemas for
378           namespaces, then validation against such namespace should be failed.
379           It now uses XmlSchemaAttribute.ValidatedUse instead of .Use.
380         * XsdWildcard.cs : Fixed incorrect intersection computing.
381
382 2003-10-21  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
383
384         * XsdKeyTable.cs : Reduced compilation warning.
385         * XsdParticleValidationState.cs : Reduced NotImplementedException.
386         * XsdValidatingReader.cs : Removed XmlResolver. Implemented more simple
387           type validation, such as list, union and facets.
388
389 2003-09-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
390
391         * added XsdIdentityPath.cs, XsdIdentityState.cs, XsdKeyTable.cs
392           and XsdWildcard.cs.
393         * XsdParticleValidationState.cs, XsdValidatingReader.cs:
394           Completely rewrote existing validation engine.
395
396 2003-08-24  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
397
398         * XsdValidatingReader.cs,
399           XsdParticleValidationState.cs : Initial checkin.