1 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
3 * XmlSchemaValidatingReader.cs : XmlSchemaValidationFlags is updated.
5 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
7 * XsdValidatingReader.cs, XmlSchemaValidatingReader.cs,
9 Dependent changes caused by XmlValueGetter changes.
11 2005-11-07 Atsushi Enomoto <atsushi@ximian.com>
13 * XsdValidatingReader.cs : XmlReader.ReadTypedValue() does not exist
14 anymore, so it is not override.
16 2005-09-30 Atsushi Enomoto <atsushi@ximian.com>
18 * XsdValidatingReader.cs: make ParserContext and its NamespaceManager
19 optional. This is for NVDL xsd support.
21 2005-09-30 Atsushi Enomoto <atsushi@ximian.com>
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.
27 2005-09-25 Atsushi Enomoto <atsushi@ximian.com>
29 * XmlSchemaValidatingReader.cs: XmlSchemaValidationFlags updates.
31 2005-08-03 Gert Driesen <drieseng@users.sourceforge.net>
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.
38 2005-07-28 Atsushi Enomoto <atsushi@ximian.com>
40 * XsdValidatingReader.cs : when xsi:schemaLocation could not be
41 resolved, it still does not raise error when corresponding schema
44 2005-05-05 Atsushi Enomoto <atsushi@ximian.com>
46 * XsdValidatingReader.cs :
47 removed atomicName related 2.0 members (deprecated in beta2).
49 2005-03-22 Atsushi Enomoto <atsushi@ximian.com>
51 * XsdValidatingReader.cs : removed unused method which was warned.
53 2004-12-22 Atsushi Enomoto <atsushi@ximian.com>
55 * XsdValidatingReader.cs : XmlResolver.ResolveUri() may return null.
57 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
59 * XsdValidatingReader.cs : added ActualSchemaType to context type.
60 * XmlSchemaValidatingReader.cs : added SchemaInfo override.
62 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
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().
69 2004-12-15 Atsushi Enomoto <atsushi@ximian.com>
71 * XmlSchemaValidatingReader.cs : xsi:* attributes are now handled via
72 XmlSchemaValidator.ValidateElement().
73 Removed some obsolete overrides.
75 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
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.
82 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
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
94 2004-12-13 Atsushi Enomoto <atsushi@ximian.com>
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
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.
111 2004-12-13 Atsushi Enomoto <atsushi@ximian.com>
113 * XsdIdentityState.cs,
115 XsdKeyTable.cs : fixed mixed line ending.
117 2004-12-11 Atsushi Enomoto <atsushi@ximian.com>
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.
128 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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).
137 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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.
147 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
149 * XsdValidatingReader.cs : mhm, something is wrong with call to
150 context.PopScope(). So quick fix and marked as FIXME.
152 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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()).
167 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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.
173 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
175 * XsdValidatingReader.cs : more refactoring.
177 2004-12-08 Atsushi Enomoto <atsushi@ximian.com>
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.
186 2004-11-26 Atsushi Enomoto <atsushi@ximian.com>
188 * XsdValidatingReader.cs : warning elimination
190 2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
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
196 * XsdIdentityState.cs : removed unused fields and local variables.
198 2004-11-20 Atsushi Enomoto <atsushi@ximian.com>
200 * XsdValidatingReader.cs : quick fix for bug #69620. In some cases
201 SchemaSet looks not compiled.
202 Fixed one incorrect missing component handling.
204 2004-11-08 Atsushi Enomoto <atsushi@ximian.com>
206 * XsdValidatingReader.cs : reuse NameTable on loading external schema.
208 2004-11-07 Atsushi Enomoto <atsushi@ximian.com>
210 * XsdValidatingReader.cs : optimized some ArrayList fields; create them
213 2004-08-20 Atsushi Enomoto <atsushi@ximian.com>
215 * XsdValidatingReader.cs : ReadTypedValue() is override under 2_0.
217 2004-08-10 Atsushi Enomoto <atsushi@ximian.com>
219 * XsdValidatingReader.cs : replaced XmlSchemaCollection with
220 XmlSchemaSet. Removed unused code.
222 2004-08-03 Atsushi Enomoto <atsushi@ximian.com>
224 * XsdValidatingReader.cs : implemented 2.0 IXmlNamespaceResolver.
226 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
228 * XsdIdentityPath.cs : removed unused code.
229 * XsdIdentityState.cs : Globalization.
231 2004-06-11 Atsushi Enomoto <atsushi@ximian.com>
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.
237 2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
239 * XsdValidatingReader.cs : Close XmlTextReader more strictly. Exception
240 might be thrown in ctor() *after* stream open and before try-catch.
242 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
244 * XsdValidatingReader.cs : XmlNamespaceManager.LookupPrefix() allows
247 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
249 * XsdIdentityPath.cs,
252 XsdParticleValidationState.cs,
253 XsdValidatingReader.cs,
254 XsdWildcard.cs : made classes internal. Removed extra TODO comments.
256 2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
258 * XsdIdentityState.cs,
260 XsdParticleValidationState.cs,
261 XsdValidatingReader.cs,
262 XsdWildcard.cs : foreach elimination.
264 2004-02-04 Atsushi Enomoto <atsushi@ximian.com>
266 * XsdValidatingReader.cs : When the reader points at XmlDeclaration,
267 AttributeCount counts its values (version, encoding, standalone).
269 2004-02-03 Atsushi Enomoto <atsushi@ximian.com>
271 * XsdValidatingReader.cs : schemaLocation is not NMTOKENS. It is list
272 of anyURI. Just split names and handle as anyURI.
274 2004-01-26 Atsushi Enomoto <atsushi@ximian.com>
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
288 - Schema type was incorrectly remained when the element is laxly
291 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
293 * XsdKeyTable.cs : Matching evaluation is incorrect when path is more
295 * XsdValidatingReader.cs : Should clear LocalTypeDefinition when no
296 xsi:type was specified.
297 Moved character validation inside AssessEndElementSchemaValidity().
299 2004-01-20 Atsushi Enomoto <atsushi@ximian.com>
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.
306 2004-01-15 Atsushi Enomoto <atsushi@ximian.com>
308 * XsdValidatingReader.cs : Now use ValidatableParticle instead of
309 ContentTypeParticle. Use BaseXmlSchemaType.
311 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
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.
323 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
325 * XsdValidatingReader.cs :
326 Dependent change with XmlSchemaElement internal property.
328 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
330 * XsdValidatingReader.cs : Throw exception only in case of errors.
332 2004-01-08 Lluis Sanchez Gual <lluis@ximian.com>
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).
338 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
340 * XsdValidatingReader.cs : Fixed in reflection to
341 XmlSchemaObjectTableGetEnumerator.Value change.
343 2004-01-08 Nick Drochak <ndrochak@ieee.org>
345 * XsdParticleValidationState.cs: Remove unreachable code.
347 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
349 * XsdValidatingReader.cs : When source Reader has schema context, it
350 should return source's schema type if this class cannot provide it.
352 2003-12-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
354 * XsdValidatingReader.cs : patch by David Sheldon. Base type's facet
355 validation should also be done.
357 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
359 * XsdValidatingReader.cs : FindElement() should use argument names
360 (patch by David Sheldon). Warning elimination.
362 2003-10-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
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.
368 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
370 * XsdValidatingReader.cs : Removed MonoTODO which was implemented in
371 XmlValidatingreader as a result. Added xsi:nil normalization.
373 2003-10-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
375 * XsdParticleValidationState.cs : Default content processing shoule be
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.
382 2003-10-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
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.
389 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
391 * added XsdIdentityPath.cs, XsdIdentityState.cs, XsdKeyTable.cs
393 * XsdParticleValidationState.cs, XsdValidatingReader.cs:
394 Completely rewrote existing validation engine.
396 2003-08-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
398 * XsdValidatingReader.cs,
399 XsdParticleValidationState.cs : Initial checkin.