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