1 2004-12-22 Atsushi Enomoto <atsushi@ximian.com>
3 * XsdValidatingReader.cs : XmlResolver.ResolveUri() may return null.
5 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
7 * XsdValidatingReader.cs : added ActualSchemaType to context type.
8 * XmlSchemaValidatingReader.cs : added SchemaInfo override.
10 2004-12-16 Atsushi Enomoto <atsushi@ximian.com>
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().
17 2004-12-15 Atsushi Enomoto <atsushi@ximian.com>
19 * XmlSchemaValidatingReader.cs : xsi:* attributes are now handled via
20 XmlSchemaValidator.ValidateElement().
21 Removed some obsolete overrides.
23 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
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.
30 2004-12-14 Atsushi Enomoto <atsushi@ximian.com>
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
42 2004-12-13 Atsushi Enomoto <atsushi@ximian.com>
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
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.
59 2004-12-13 Atsushi Enomoto <atsushi@ximian.com>
61 * XsdIdentityState.cs,
63 XsdKeyTable.cs : fixed mixed line ending.
65 2004-12-11 Atsushi Enomoto <atsushi@ximian.com>
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.
76 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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).
85 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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.
95 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
97 * XsdValidatingReader.cs : mhm, something is wrong with call to
98 context.PopScope(). So quick fix and marked as FIXME.
100 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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()).
115 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
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.
121 2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
123 * XsdValidatingReader.cs : more refactoring.
125 2004-12-08 Atsushi Enomoto <atsushi@ximian.com>
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.
134 2004-11-26 Atsushi Enomoto <atsushi@ximian.com>
136 * XsdValidatingReader.cs : warning elimination
138 2004-11-24 Atsushi Enomoto <atsushi@ximian.com>
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
144 * XsdIdentityState.cs : removed unused fields and local variables.
146 2004-11-20 Atsushi Enomoto <atsushi@ximian.com>
148 * XsdValidatingReader.cs : quick fix for bug #69620. In some cases
149 SchemaSet looks not compiled.
150 Fixed one incorrect missing component handling.
152 2004-11-08 Atsushi Enomoto <atsushi@ximian.com>
154 * XsdValidatingReader.cs : reuse NameTable on loading external schema.
156 2004-11-07 Atsushi Enomoto <atsushi@ximian.com>
158 * XsdValidatingReader.cs : optimized some ArrayList fields; create them
161 2004-08-20 Atsushi Enomoto <atsushi@ximian.com>
163 * XsdValidatingReader.cs : ReadTypedValue() is override under 2_0.
165 2004-08-10 Atsushi Enomoto <atsushi@ximian.com>
167 * XsdValidatingReader.cs : replaced XmlSchemaCollection with
168 XmlSchemaSet. Removed unused code.
170 2004-08-03 Atsushi Enomoto <atsushi@ximian.com>
172 * XsdValidatingReader.cs : implemented 2.0 IXmlNamespaceResolver.
174 2004-06-18 Atsushi Enomoto <atsushi@ximian.com>
176 * XsdIdentityPath.cs : removed unused code.
177 * XsdIdentityState.cs : Globalization.
179 2004-06-11 Atsushi Enomoto <atsushi@ximian.com>
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.
185 2004-06-06 Atsushi Enomoto <atsushi@ximian.com>
187 * XsdValidatingReader.cs : Close XmlTextReader more strictly. Exception
188 might be thrown in ctor() *after* stream open and before try-catch.
190 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
192 * XsdValidatingReader.cs : XmlNamespaceManager.LookupPrefix() allows
195 2004-02-16 Atsushi Enomoto <atsushi@ximian.com>
197 * XsdIdentityPath.cs,
200 XsdParticleValidationState.cs,
201 XsdValidatingReader.cs,
202 XsdWildcard.cs : made classes internal. Removed extra TODO comments.
204 2004-02-08 Atsushi Enomoto <atsushi@ximian.com>
206 * XsdIdentityState.cs,
208 XsdParticleValidationState.cs,
209 XsdValidatingReader.cs,
210 XsdWildcard.cs : foreach elimination.
212 2004-02-04 Atsushi Enomoto <atsushi@ximian.com>
214 * XsdValidatingReader.cs : When the reader points at XmlDeclaration,
215 AttributeCount counts its values (version, encoding, standalone).
217 2004-02-03 Atsushi Enomoto <atsushi@ximian.com>
219 * XsdValidatingReader.cs : schemaLocation is not NMTOKENS. It is list
220 of anyURI. Just split names and handle as anyURI.
222 2004-01-26 Atsushi Enomoto <atsushi@ximian.com>
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
236 - Schema type was incorrectly remained when the element is laxly
239 2004-01-21 Atsushi Enomoto <atsushi@ximian.com>
241 * XsdKeyTable.cs : Matching evaluation is incorrect when path is more
243 * XsdValidatingReader.cs : Should clear LocalTypeDefinition when no
244 xsi:type was specified.
245 Moved character validation inside AssessEndElementSchemaValidity().
247 2004-01-20 Atsushi Enomoto <atsushi@ximian.com>
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.
254 2004-01-15 Atsushi Enomoto <atsushi@ximian.com>
256 * XsdValidatingReader.cs : Now use ValidatableParticle instead of
257 ContentTypeParticle. Use BaseXmlSchemaType.
259 2004-01-14 Atsushi Enomoto <atsushi@ximian.com>
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.
271 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
273 * XsdValidatingReader.cs :
274 Dependent change with XmlSchemaElement internal property.
276 2004-01-13 Atsushi Enomoto <atsushi@ximian.com>
278 * XsdValidatingReader.cs : Throw exception only in case of errors.
280 2004-01-08 Lluis Sanchez Gual <lluis@ximian.com>
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).
286 2004-01-08 Atsushi Enomoto <atsushi@ximian.com>
288 * XsdValidatingReader.cs : Fixed in reflection to
289 XmlSchemaObjectTableGetEnumerator.Value change.
291 2004-01-08 Nick Drochak <ndrochak@ieee.org>
293 * XsdParticleValidationState.cs: Remove unreachable code.
295 2003-12-18 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
297 * XsdValidatingReader.cs : When source Reader has schema context, it
298 should return source's schema type if this class cannot provide it.
300 2003-12-08 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
302 * XsdValidatingReader.cs : patch by David Sheldon. Base type's facet
303 validation should also be done.
305 2003-12-07 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
307 * XsdValidatingReader.cs : FindElement() should use argument names
308 (patch by David Sheldon). Warning elimination.
310 2003-10-26 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
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.
316 2003-10-25 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
318 * XsdValidatingReader.cs : Removed MonoTODO which was implemented in
319 XmlValidatingreader as a result. Added xsi:nil normalization.
321 2003-10-23 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
323 * XsdParticleValidationState.cs : Default content processing shoule be
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.
330 2003-10-21 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
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.
337 2003-09-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
339 * added XsdIdentityPath.cs, XsdIdentityState.cs, XsdKeyTable.cs
341 * XsdParticleValidationState.cs, XsdValidatingReader.cs:
342 Completely rewrote existing validation engine.
344 2003-08-24 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
346 * XsdValidatingReader.cs,
347 XsdParticleValidationState.cs : Initial checkin.