2004-09-01 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System.XML / Mono.Xml.XPath / ChangeLog
1 2004-09-01  Atsushi Enomoto <atsushi@ximian.com>
2
3         * XPathNavigatorReader.cs : on GetAttributeNavigator(int), namespace
4           node could be this XmlReader's attribute node.
5
6 2004-08-02  Atsushi Enomoto <atsushi@ximian.com>
7
8         * XPathDocument2.cs : new IXPathNavigable implementation
9           XPathDocument2Navigator.cs : new XPathNavigator implementation
10           XPathDocument2Editable.cs : new XPathEditableNavigator implementation
11
12         To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
13         (It is still too unstable to pass all nunit tests and standalone XSLT
14         tests).
15
16 2004-07-30  Atsushi Enomoto <atsushi@ximian.com>
17
18         * DTMXPathNavigator.cs :
19           Fixed IsSamePosition(). currentAttr is not always the same as
20           that of other when current is not attribute. Ditto for currentNS
21           (when current is not namespace).
22         * XPathNavigatorReader.cs : Fixed NodeType - 1) When attribute value is
23           being consumed, then node type should be Text, and 2) Root node is
24           usually mapped to Document, but XmlReader never returns Document,
25           just None (both on Initial state and EndOfFile state).
26
27 2004-07-30  Atsushi Enomoto <atsushi@ximian.com>
28
29         * XPathNavigatorReader.cs : fixed GetAttributeNavigator() that
30           incorrectly used MoveToNextAttribute().
31
32 2004-07-29  Atsushi Enomoto <atsushi@ximian.com>
33
34         * XPathNavigatorReader.cs :
35           - it is used only in 2.0 classes.
36           - It now behaves as a fragment reader.
37           - Depth is optimized not to call Clone() and MoveToParent().
38           - AttributeCount could be counted only once in Read().
39           - ReadState transition is adjusted to be same as other XmlReaders.
40           - name strings now return "" on initial state.
41
42 2004-07-28  Atsushi Enomoto <atsushi@ximian.com>
43
44         * Added XPathEditableDocument.cs.
45           - XPathEditableDocument provides IXPathEditable.
46           - XmlDocumentEditableNavigator implements XPathEditableNavigator
47             that supports CreateAttributes(), AppendChild() and so on.
48
49           It is nothing more than hack, and as an XPathEditableNavigator
50           provider for XPathDocument, it will be replaced by something.
51
52 2004-07-13  Atsushi Enomoto <atsushi@ximian.com>
53
54         * Added XPathNavigatorReader.cs.
55
56 2004-06-06  Atsushi Enomoto <atsushi@ximian.com>
57
58         * DTMXPathDocumentBuilder.cs : Close XmlTextReader strictly. It might
59           raise an error after opening stream and before try-catch.
60
61 2004-05-20  Atsushi Enomoto <atsushi@ximian.com>
62
63         * Pattern.cs : don't throw System.Exception. Delegate error handling to
64           the only one caller CompilePattern().
65
66 2004-05-12  Atsushi Enomoto <atsushi@ximian.com>
67
68         * Pattern.cs : made class internal.
69
70 2004-02-26  Atsushi Enomoto <atsushi@ximian.com>
71
72         * DTMXPathDocumentBuilder.cs : Close XmlReader when we passed uri.
73
74 2004-02-18  Atsushi Enomoto <atsushi@ximian.com>
75
76         * LocationPathPattern.cs : Implemented easy XPathNavigator cache on
77           predicate evaluation in Matches().
78
79 2004-02-17  Atsushi Enomoto <atsushi@ximian.com>
80
81         * KeyPattern.cs, Pattern.cs : removed using decls.
82
83 2004-02-17  Atsushi Enomoto <atsushi@ximian.com>
84
85         * LocationPathPattern.cs : Optimized Matches(). For non-positional
86           patterns, it never iterates predicate, just evaluate boolean.
87
88 2004-02-16  Atsushi Enomoto <atsushi@ximian.com>
89
90         * DTMXPathDocument.cs,
91           DTMXPathDocumentBuilder.cs,
92           DTMXPathDocumentWriter.cs,
93           DTMXPathNavigator.cs,
94           DTMXPathNode.cs :
95             Made classes internal by default (still publicly available with
96             OUTSIDE_SYSTEM_XML switch). Removed unused "position" field.
97             Optimized DTMXPathNavigator.Value a bit.
98         * LocationPathPattern.cs : Modified some fields to private.
99
100 2004-02-13  Atsushi Enomoto <atsushi@ximian.com>
101
102         * Added DTMXPathDocumentWriter.cs. It supports DTMXPathNavigator as
103           the resulting document tree.
104         * DTMXPathDocumentBuilder.cs : Code refactory (to get closer to dtm
105           writer and commonify tasks they both should do). Reduced initial
106           array size (400 to 200, for attribute 800 to 200), and extending 
107           size from 2x to 4x (to reduce _times_ of allication copy).
108         * DTMXPathNode.cs : (and all above) added experimental "DTM_CLASS"
109           switch, which changes nodes from struct to class. (It will reduce
110           memory consumption by 2/3, but will also reduce speed by 2/3.)
111
112 2004-01-27  Atsushi Enomoto <atsushi@ximian.com>
113
114         * DTMXPathDocumentBuilder.cs : Namespace nodes are incorrectly created.
115           This fix should make XPathDocument compatible with XmlDocument.
116
117 2004-01-26  Atsushi Enomoto <atsushi@ximian.com>
118
119         * DTMXPathDocument.cs : CreateNavigator() should return the first root
120           as a clone.
121         * DTMXPathNavigator.cs : ComparePosition() incorrectly compared 
122           attributes and namespaces orders.  Implemented IsSamePosition() more
123           efficient.  MoveToFirstNamespace() should return false when the 
124           current node is either attribute or namespace.  Fixed IsDescendant()
125           which looks resulted in incorrect behavior.
126
127 2003-12-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
128
129         * DTMXPathDocumentBuilder.cs : Removed supportsID argument and always
130           assumes to support IDs when specified XmlValidatingReader.
131           Quick fix for NullReferenceException when type was null.
132
133 2003-11-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
134
135         * KeyPattern.cs : Matches() should iterate candidate keys to the end.
136
137 2003-11-19  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
138
139         * IdPattern.cs,
140           KeyPattern.cs : Implemented Matches(), overrode DefaultPriority,
141           modified inheritance.
142         * Pattern.cs : Added id and key pattern support.
143
144 2003-11-02  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
145
146         * DTMXPathNavigator.cs : Fixed MoveToNamespace() that might result in
147           infinite loop.
148
149 2003-10-04  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
150
151         * DTMXPathDocumentBuilder.cs : Bugfix for whitespace handling.
152
153 2003-10-01  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
154
155         * Added DTMXPathNode.cs.
156         * Fundamental changes in whole DTM stuff. Node information is now array
157           of "node struct" instead of individual arrays.
158
159 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
160
161         * Pattern.cs: save the parser (will reduce memory allocation when
162         Jackson's jay patch is committed).
163
164 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
165
166         * Pattern.cs: Typo, when i got //a i was giving off /
167         * LocationPathPattern.cs: Append to the tail, not head.
168
169 2003-09-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
170
171         * DTMXPathNavigator.cs,
172           DTMXPathDocument.cs,
173           DTMXPathDocumentBuilder.cs : Added IXmlLineInfo support. Removed
174           node's extraneous schemaType. Some code reformatting.
175
176 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
177
178         * Pattern.cs: Support static context.
179
180 2003-08-25 Ben Maurer  <bmaurer@users.sourceforge.net>
181
182         * DTMXPathNavigator.cs: Allocate valueBuilder on first use.
183
184 2003-08-14  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
185
186         * DTMXPathDocument.cs,
187           DTMXPathDocumentBuilder.cs,
188           DTMXPathNavigator.cs :
189           - Implemented ID support using XmlValidatingReader.
190           - Prefix should be String.Empty even if XmlReader.Prefix is null.
191
192 2003-07-23  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
193
194         * DTMXPathDocumentBuilder.cs :
195           Fixed Read() that sets nodes' parent incorrectly.
196
197 2003-07-17  Peter Williams  <peter@newton.cx>
198
199         * DTMXPathDocumentBuilder.cs: csc.exe is more stringent about namespaces
200         than mcs. We need to disambiguate System.Math from Mono.Math here.
201
202 2003-06-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
203
204         * Initial checkin.
205         * Added ChangeLog, DTMXPathDocument.cs, DTMXPathDocumentBuilder.cs
206           and DTMXPathNavigator.cs.
207