Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ChangeLog « Commons.Xml.Relaxng.Derivative « Commons.Xml.Relaxng « class « mcs - github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 25244344f2749e52e059912119dc97336283b8b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
2006-02-02  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : After profiling in depth, finally I found the
	  source of the worst perf. problem in the code - return x for 
	  (choice x x).
	  It now validates 5MB of OpenDocument specification content.xml,
	  which only Jing could do.

2006-01-16  Atsushi Enomoto <atsushi@ximian.com>

	* RdpObjects.cs : fixed warnings.

2006-01-16  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : RdpOneOrMore.EmptyTextDeriv() should be "override".
	  RdpList.EmptyTextDeriv() (which was also virtual incorrectly) was 
	  removed since the code was in wrong assumption.
	* Util.cs : debug string now contains data and dataExcept info.

2006-01-15  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : lazy evaluate Group branches. If left hand is
	  notAllowed, the returned value is always NotAllowed, no need to
	  compute another branch.

2006-01-13  Atsushi Enomoto <atsushi@ximian.com>

	* RdpObjects.cs, RdpPatterns.cs : introduced "IsContextDependent"
	  optimization; when a pattern is (namespace) context independent
	  (almost all cases except for QName validation), new TextDeriv()
	  overload that takes MemoizationStore memoizes TextDeriv results.

2006-01-12  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs :
	  Introduced EmptyTextDeriv() so that the results could be memoized.

2006-01-10  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs :
	  - Added StartAttDeriv(), EndAttDeriv() and IsTextValueDependent.
	    (See corresponding changes in RelaxngValidatingReader.cs).
	  - Added a bunch of derivative method overloads to receive 
	    MemoizationStore and memoize results efficiently.

2006-01-05  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs :
	  - Fixed RdpPattern.TextDeriv() and MixedTextDeriv() to not allow 
	    whitespaces incorrectly.
	  - Fixed MixedTextDeriv() to not require string argument.
	  - Erased commented code.
	  - in listDerivInternal(), skip empty strings.
	  - ValueMatch() should allow whitespaces if the pattern is nullable
	    (as defined in derivative).
	  - Replaced MakeChoice()/MakeGroup()/MakeInterleave()/MakeAfter()
	    in TextOnlyDeriv() and MixedTextDeriv(). They should not be
	    constructions but should be functions (thus, member methods).
	  - Fixed Nullable in RdpData and RdpValue to conform to the
	    derivative algorithm (it incorrectly extended to return false
	    for RELAX NG predefined datatypes).

2006-01-04  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs :
	  - Implemented textOnlyDeriv and mixedTextDeriv of "memoization".
	    Details are described in the "derivative" algorithm:
	    http://www.thaiopensource.com/relaxng/derivative.html#Memoization
	  - Added MakeChoiceLeaf() to implement "choice-leaves":
	    http://www.thaiopensource.com/relaxng/derivative.html#Avoiding_exponential_blowup
	  - To intern effectively, reorder choice and interleave contents by
	    hash code.
	  - Avoid extra pattern creation with related to empty and notAllowed
	    as one hand of binary branches.

2006-01-03  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : reduced RdpFlip instantiation. Share patternPool
	  only when it does not exist.

2006-01-03  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs, RdpPatterns.cs : optimization. Removed extraneous
	  delegate instantiation. Avoid using enum for HashTable keys.

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs RdpObjects.cs RdpContentType.cs RdpNameClasses.cs
	  RdpPatterns.cs :

	  ... and svn:eol-style as well, since there is exactly no one else
	  who develops this assembly and messes no one else.

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs RdpObjects.cs RdpContentType.cs RdpNameClasses.cs
	  RdpPatterns.cs :

	  Ugh, seems like svn server shows different diffs than that of
	  client. Anyways here I fixed all mixed line endings.

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : in ValueMatch() it should not strip whitespaces
	  which could be validated. This fixes test #256/2.i.xml.

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : oneOrMore ancestor check for anyName/nsName in
	  section 7.3 was missing. This fixes test #357, #358 and #359.
	* RdpNameClass.cs : added HasInfiniteName property to RdpNameClass.

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs, RdpUtil.cs : reimplemented name class analysis to
	  not create extraneous QName instances. This also fixes some weird
	  bugs (test #362 and #363).

2005-12-27  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : Checking interleave restriction in section 7.4 with
	  PatternType was not insufficient. Now I use ContainsText(). It fixes
	  testcase #371.

2005-12-20  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : cache ContentType and save speed.

2005-09-20  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs : Added name class analysis support. The algorithm is at
	  http://www.thaiopensource.com/relaxng/nameclass.html .
	* RdpPattern.cs :
	  - added CheckNameOverlap() for group and interleave to do name class
	    analysis (spec 7.3 and 7.4).
	  - Removed CheckAttributeDuplicates(). Now name class analysis is
	    implemented in CheckNameOverlap().
	  - Added additional bool parameter to GetLabels() to collect
	    RdpNameClass instances instead of XmlQualifiedName instances.

2005-07-31  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : GetLabels() for RdpGroup should check attributes
	  when the left branch is not nullable (it works like an interleave).
	  Implemented spec 7.3 attribute check (though not enabled for now).

2005-04-11  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs : tiny debug string fix.

2005-03-01  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : In "textDeriv(group p1 p2) s", "nullable p1" is
	  incorrectly computed as "nullable p".

2005-02-06  Atsushi Enomoto <atsushi@ximian.com>

	* RdpObjects.cs : provide error type name. removed commented code block.

2005-02-06  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : MakeOneOrMore() did not always set up internal table.

2004-12-06  Atsushi Enomoto <atsushi@ximian.com>

	* Util.cs : trivial debug string fix.
	* RdpPattern.cs : trivial formatting fix.

2004-12-06  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : The last attribute stuff broke usual validation wrt
	  global attributes.

2004-12-06  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : fixed setupTable(). Avoid boxing.

2004-12-05  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : RdpAttribute now omits value check when the argument
	  value is null. It is useful to get labels.

2004-12-05  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPattern.cs : added GetLabels().

2004-06-25  Atsushi Enomoto <atsushi@ximian.com>

	* RdpContentType.cs, RdpNameClass.cs, RdpObjects.cs, RdpPatterns.cs,
	  Util.cs : added novell license term.

2004-06-21  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : Fixed ExpandRef() that caused incorrect nest error.

2004-06-17  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : Quick workaround for infinite loop happening in
	  some kind of recursive expansion.

2004-03-12  Atsushi Enomoto <atsushi@ximian.com>

	* RdpPatterns.cs : Fixed TextDeriv() to allow whitespace text nodes
	  except for Data and Value (though they are overridden).

2004-02-25  Atsushi Enomoto <atsushi@ximian.com>

	* Added RdpContextType.cs.
	* RdpNameClasses.cs,
	  RdpObjects.cs,
	  RdpPatterns.cs,
	  Util.cs : radical design change (too many things to write up).

2003-05-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>

	* RdpPattern.cs : Some method name capitalization.
	  Fixed RdpInterleave.StartTagOpenDeriv() which is logically incorrect.

2003-05-05  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>

	* RdpPattern.cs : added RdpAttribute.expandRef(). UnresolvedRef had
	  remained in attribute patterns.

2003-04-29  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>

	* Started.
	* added ChangeLog, RdpNameClasses.cs, RdpObjects.cs, RdpPatterns.cs
	  and Util.cs.