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