1 2005-09-20 Atsushi Enomoto <atsushi@ximian.com>
3 * RelaxngValidatingReader.cs : added explicit error message for
4 attribute XmlReader validation (spec section 7.1.5 explicitly
5 prohibits start//attribute so such validation never happens).
6 * RelaxngGrammar.cs : name class analysis is now done inside
7 CheckConstraints(), so nothing to add here.
8 * RelaxngPattern.cs : (RdpUnresolvedRef) now GetLabels() could be
9 invoked here, so just ignore.
11 2005-07-31 Atsushi Enomoto <atsushi@ximian.com>
13 * RelaxngGrammar.cs : spec 7.3 check is kinda implemented but cannot
14 verify now because of weird exception handling in the runtime.
16 2005-06-07 Atsushi Enomoto <atsushi@ximian.com>
18 * RelaxngReader.cs : When ReadPattern() if no valid pattern appears
19 then raise an error. In Read() when there are only non RELAX NG
20 elements it resulted in an infinite loop.
22 2005-04-06 Atsushi Enomoto <atsushi@ximian.com>
24 * RelaxngPattern.cs : fixed incorrect use of virtual.
26 2005-03-18 Atsushi Enomoto <atsushi@ximian.com>
28 * XsdDatatypeProvider.cs : quick hack to workaround not to be rejected
29 under MS.NET because of NOTATION type (thus, NOTATION type is not
30 available in this provider).
32 2005-03-01 Atsushi Enomoto <atsushi@ximian.com>
34 * RelaxngReader.cs : there was two public namespace constant. One
37 2005-03-01 Atsushi Enomoto <atsushi@ximian.com>
39 * RelaxngPattern.cs : RdpUnresolvedRef should process empty/notAllowed
40 elimination on its referenced pattern.
42 2005-02-27 Atsushi Enomoto <atsushi@ximian.com>
44 * XsdDatatypeProvider.cs : Added simpleType parameter support.
45 * RelaxngValidatingReader.cs : added ReportDetails flag to report all
46 expected element names / attribute names. Removed all unused code.
48 2005-02-06 Atsushi Enomoto <atsushi@ximian.com>
50 * RelaxngReader.cs : ns attribute on root element should also be
51 handled as well as datatypeLibrary.
53 2005-02-06 Atsushi Enomoto <atsushi@ximian.com>
55 * RelaxngReader.cs : it was not handling datatypeLibrary attribute
56 on root element. Added DefaultNamespace handling.
57 * RelaxngGrammar.cs : added DefaultNamespace property.
58 * RelaxngPattern.cs : WriteCompact() now outputs "default namespace =..".
60 2005-01-26 Atsushi Enomoto <atsushi@ximian.com>
62 * RelaxngPattern.cs : fixed 2.0 typo.
64 2005-01-26 Atsushi Enomoto <atsushi@ximian.com>
66 * RelaxngGrammar.cs, RelaxngPattern.cs, RelaxngNameClass.cs :
67 added RelaxngPattern.WriteCompact(TextWriter) and all internal
70 2004-12-06 Atsushi Enomoto <atsushi@ximian.com>
72 * RelaxngValidatingReader.cs :
73 - Existing GetLabels() was insufficient to support attribute labels
74 by design (since those state object always reflects the status
75 after Read() and inside Read() attributes are checked and attribute
76 derivatives are consumed). So just made existing stuff as obsolete.
77 - Added object GetCurrentState() that returns RdpPattern wrapper.
78 - Added Emptiable(object state) that returns whether the
79 specified state is emptiable.
80 - Added GetElementLabels(object state) and GetAttributeLabels(object
81 state) that returns the collection of XmlQualifiedName that
82 represents possible element names or attribute names from the
84 - Added AfterOpenStartTag(state,name,ns), OpenStartTag(state,name,
85 ns), AfterAttribute(state, name, ns), Attribute(state,name,ns),
86 AfterCloseStartTag(state), CloseStartTag(state),
87 AfterEndTag(state) and EndTag(state) to simulate state transition.
88 AfterXXX() returns another state instance if the transition was
89 successful or null. XXX() returns bool that indicates if the
90 transition was successful or not and proceeds the state in case
93 2004-12-06 Atsushi Enomoto <atsushi@ximian.com>
95 * RelaxngException.cs : Added new .ctor() that takes RelaxngElementBase
96 to provide target grammar component location.
98 2004-12-06 Atsushi Enomoto <atsushi@ximian.com>
100 * RelaxngNameClass.cs,
103 Added related grammar component location to error message.
104 In RelaxngDefine, Compile() caused error on duplicate key on
106 * RelaxngReader.cs : In GetStrippedAttribute(), use
107 GetAttribute(string,string).
109 2004-12-06 Atsushi Enomoto <atsushi@ximian.com>
111 * RelaxngException.cs : don't store debug string. It was so harmful
114 2004-12-05 Atsushi Enomoto <atsushi@ximian.com>
116 * RelaxngValidatingReader.cs :
117 - Better way to expose API; use ExpectedElements and
118 ExpectedAttributes of type ICollection. Now GetLabels is obsolete.
119 - Implemented notAllowed check. It might be too heavy since it
120 checks all the QNames returned by GetLabels. In such case, use
121 RoughLabelCheck = true.
122 - Added RoughLabelCheck of type bool that indicates to omit
125 2004-12-05 Atsushi Enomoto <atsushi@ximian.com>
127 * RelaxngValidatingReader.cs : no, it was very easy. But to avoid
128 state-changeful property, it is now bool Emptiable().
130 2004-12-05 Atsushi Enomoto <atsushi@ximian.com>
132 * RelaxngValidatingReader.cs : reverted IsEmptiable. It was not ready.
134 2004-12-05 Atsushi Enomoto <atsushi@ximian.com>
136 * RelaxngPattern.cs : added GetLabels() override to RdpUnresolvedRef.
137 * RelaxngValidatingReader.cs :
138 Added GetLabels() that collects "allowed element names and
139 attributes" at current state.
140 Added IsEmptiable that indicates whether current reader can be
141 closed by an end tag.
143 2004-11-28 Atsushi Enomoto <atsushi@ximian.com>
145 * RelaxngGrammar.cs : fixed error that happened on recompilation.
147 2004-07-14 Atsushi Enomoto <atsushi@ximian.com>
149 * RelaxngGrammar.cs : When definition is missing, the error message
150 should show what definition is missing.
152 2004-06-25 Atsushi Enomoto <atsushi@ximian.com>
154 * Misc.cs, RelaxngDatatype.cs, RelaxngDatatypeProvider.cs,
155 RelaxngDefaultDatatype.cs, RelaxngException.cs, RelaxngGrammar.cs,
156 RelaxngMergedProvider.cs, RelaxngNameClass.cs, RelaxngPattern.cs,
157 RelaxngPatternType.cs, RelaxngReader.cs, RelaxngValidatingReader.cs,
158 XsdDatatypeProvider.cs : Added/replaced novell license term.
160 2004-06-21 Atsushi Enomoto <atsushi@ximian.com>
165 Use XmlResolver (or XmlUrlResolver) directly. XmlResolver was
166 incorrectly _used_ before null check. Don't create XmlResolver
167 instance for _every_ pattern object.
168 * RelaxngPattern.cs : UnresolvedRef.ExpandRef() should return not
169 try to find target derivative pattern twice. It was the culprit of
170 infinite loop. Removed dirty switches.
171 * RelaxngGrammar.cs : code cleanup.
173 2004-06-17 Atsushi Enomoto <atsushi@ximian.com>
175 * Misc.cs, RelaxngGrammar.cs, RelaxngPattern.cs, RelaxngReader.cs :
176 Added XmlResolver property to fix bug #60334.
177 Check incrrect recursion check that caused possible infinite loop.
179 2004-05-31 Atsushi Enomoto <atsushi@ximian.com>
181 * Misc.cs : made Util class internal.
182 * RelaxngDatatypeProvider.cs : looks commit was missing.
183 * RelaxngException.cs : made one .ctor() internal that accepts
185 * RelaxngNameClas.cs : Names list should not be settable.
186 * RelaxngPattern.cs : RelaxngRefPattern class is internal use only.
187 * RelaxngPatternType.cs : there is not "Include" pattern.
189 2004-05-30 Atsushi Enomoto <atsushi@ximian.com>
191 * RelaxngDatatypeProvider.cs : removed meaningless using alias.
192 * RelaxngGrammar.cs : modified ArrayList to RelaxngGrammarContentList.
193 RelaxngMergedProvider.cs : Added #if PNET switch to support non-
194 xmlschema available environment.
195 * RelaxngPattern.cs : added IGrammarContent and
196 RelaxngGrammarContentList.
198 2004-03-17 Atsushi Enomoto <atsushi@ximian.com>
200 * RelaxngNameClass.cs : Introduced RelaxngNameClassList class.
202 2004-03-15 Atsushi Enomoto <atsushi@ximian.com>
206 RelaxngPattern.cs : Added Write() support.
208 2004-02-28 Atsushi Enomoto <atsushi@ximian.com>
210 * RelaxngReader.cs : ReadPattern() should be public.
212 2004-02-25 Atsushi Enomoto <atsushi@ximian.com>
219 They are moved to RelaxngXXX.cs and improved
221 2004-02-25 Atsushi Enomoto <atsushi@ximian.com>
225 - RelaxngDatatypeProvider.cs
226 - RelaxngDefaultDatatypes.cs
227 - RelaxngException.cs
229 - RelaxngMergedProvider.cs
230 - RelaxngNameClass.cs
232 - RelaxngPatternType.cs
233 - XsdDatatypeProvider.cs
236 RelaxngValidatingReader.cs : Radical design changes.
239 - API redesign (renaming RngXxx to RelaxngXxx)
240 - Strict grammar validation
241 - Datatype support (XML Schema primitive datatypes)
242 - Some derivative bugfixes such as list validation.
244 2003-05-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
247 + Now skips immaterial content correctly.
248 + Removed MoveToContent().
249 + Trimming attribute values and names.
250 + Fixed ReadNameClassChoice(), ReadNameClassExcept(),
251 ReadPatternExcept (). They require one or more contents.
252 + QName resolver fix.
253 + ReadListPattern() failed to read actual content.
254 * RelaxngValidatingReader.cs :
255 + Fixed incorrect error message.
256 + Fixed incorrect attribute namespace handling.
257 * RngGrammar.cs : Some simplification stuff fix.
258 Support for illegal recursion check.
259 * RngNameClass.cs : fixed RngNsName ctor() (argument not passed).
260 * RngPattern.cs : fixed ParentRef.Compile() (was treated same as Ref).
262 2003-05-05 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
264 * RelaxngReader.cs : ReadExternalRef() hadn't resolved base uri.
266 2003-04-29 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
269 * added ChangeLog, RelaxngReader.cs, RelaxngValidatingReader.cs,
270 RngGrammar.cs, RngNameClasses.cs, RngPattern.cs, RngPatternType.cs