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