1 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
3 * DefaultContext.cs : Imcomplete fix ;-)
5 2003-11-19 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
7 * DefaultContext.cs : XPathFunctions.ToNumber() should catch overflow.
8 XPathFunctionId.cs : Exposed Id expression.
9 * Expression.cs : Added ExprLiteral.Value, and class ExprParens (it
10 will be used to solve evaluation precedence problem).
12 2003-11-09 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
14 * Iterator.cs : Fixed SlashIterator that might return nodes 1)in
15 inconsistent order, and 2)may return duplicate result nodes.
17 2003-11-06 Ben Maurer <bmaurer@users.sourceforge.net>
19 * Iterator.cs: (AxisIterator.ComparablePosition): Remove. Let
20 it inherit from the base class. This made b[2] evaluated on
21 <a /><b /><c /><a /><b /><c /> return the first b node because
22 in the ChildIterator it was the second node and seemed to satsify
25 2003-11-04 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
27 * Iterator.cs : Added bool ReverseAxis property to identify whether
28 the iterator is in reverse order or not. Added ComparablePosition
29 for correct position comparison for PredicateIterator and reverse-
30 order-axes. Modified AncestorIterator, AncestorOrSelfIterator,
31 PrecedingIterator and PrecedingSiblingIterator to make MoveNext()
32 return their nodes in document order. This fixes bugzilla #39079.
34 2003-10-15 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
36 * Iterator.cs : DescendantIterator and FollowingIterator also should
37 not MoveNext() after they reached to the end.
39 2003-10-13 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
41 * Iterator.cs : Fixed UnionIterator who ignores document order.
42 Fixed SlashIterator whose MoveNext() should finish at its end.
44 2003-09-27 Ben Maurer <bmaurer@users.sourceforge.net>
46 * Iterator.cs, Expression.cs, XPathNavigator.cs: In AxisIterator
47 use NameTable so we dont call strcmp.
49 2003-09-27 Ben Maurer <bmaurer@users.sourceforge.net>
51 * DefaultContext.cs (translate): translate ("abc", "c", "") = "ab"
53 * Iterator.cs, Expression.cs: All axes are
54 SimpleIterators. SimpleIterators are gaurenteed to give the same
55 XPathNavigator in Current. Make AxisIterator take a
56 SimpleIterator, not any old BaseIterator. Will allow us to make
57 NameTable optimizations and avoid quite a few strcmp's.
59 2003-09-24 Ben Maurer <bmaurer@users.sourceforge.net>
61 * Expression.cs: make // work right, must use another slash itr.
63 2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
65 * Expression.cs: cant use $$ before assigned.
67 2003-09-21 Ben Maurer <bmaurer@users.sourceforge.net>
69 * Expression.cs, Parser.jay, XPathNavigator.cs: api beautification.
71 2003-09-20 Ben Maurer <bmaurer@users.sourceforge.net>
73 * Expression.cs: num != double.NaN does not work.
75 2003-09-19 Ben Maurer <bmaurer@users.sourceforge.net>
77 * Expression.cs: in NodeTypeTest dont throw an exception if it is
78 an unknown node type (allows for better Pattern debugging).
80 2003-09-17 Ben Maurer <bmaurer@users.sourceforge.net>
82 * DefaultContext.cs: implement sum () and translate ().
84 2003-09-13 Ben Maurer <bmaurer@users.sourceforge.net>
86 * XPathNavigator.cs: Make methods where you pass in the context,
87 so that we dont have to clone expressions so much.
89 2003-09-06 Ben Maurer <bmaurer@users.sourceforge.net>
91 * DefaultContext.cs, Expresssion.cs, Parser.jay: Rewrite so that
92 system functions are actually expressions. Will allow for some
95 2003-08-25 Ben Maurer <bmaurer@users.sourceforge.net>
97 * XPathNavigator.cs: "Smart" behavior in Matches. Nice 8x speed
98 improvement in the method (5ms/call -> .7 ms / call) measured by
99 monodoc's rendering of N:System.
100 * Expression.cs: Utility methods to support above.
102 2003-08-13 Piers Haken <piersh@friskit.com>
105 fix MergedIterator.Clone(), now clones other's iterators
106 fix DescendantIterator.Clone(), now copies depth
107 make iterator cloning constructors more type-specific
109 2003-08-01 Piers Haken <piersh@friskit.com>
111 * Expression.cs: added NodeNamespaceTest
112 * XPathNavigator.cs: implement Select* with namespaces
114 2003-07-31 Ben Maurer <bmaurer@users.sourceforge.net>
116 * Iterator.cs: Allow creation of an EnumeratorIterator with an
119 2003-07-31 Piers Haken <piersh@friskit.com>
122 Nested predicates (uses ExprFilter instead)
124 make grammar look more like w3c spec
126 remove ExprStep, ExprPredicates
127 NodeTest is now a NodeSet
130 PredicateIterator now only takes a single predicate expression
133 simplified SelectTest
137 2003-07-30 Duncan Mak <duncan@ximian.com>
143 2003-07-29 Piers Haken <piersh@friskit.com>
145 * DefaultContext.cs: 'local-name' returns String, not NodeSet!
147 2003-07-29 Piers Haken <piersh@friskit.com>
151 add typesafe Evaluate* methods
153 2003-07-29 Piers Haken <piersh@friskit.com>
155 * DefaultContext.cs: fix 'substring-after'
157 2003-07-29 Piers Haken <piersh@friskit.com>
159 * Iterator.cs: fix PredicateIterator.CurrentPosition bug (it wasn't incrementing)
161 2003-07-29 Ben Maurer <bmaurer@users.sourceforge.net>
163 * Iterator.cs: dont throw exceptions on tostring ()
165 2003-07-28 Piers Haken <piersh@friskit.com>
167 * DefaultContext.cs: better handling of null argument lists
168 * XPathNavigator.cs: implement ComparePosition
170 2003-07-28 Piers Haken <piersh@friskit.com>
172 * Expression.cs: boolean operators: handle comparing .Any better
174 2003-07-28 Piers Haken <piersh@friskit.com>
176 * DefaultContext.cs: count() should return a double
177 * Expression.cs: better support for handling non-double numbers
179 2003-07-28 Piers Haken <piersh@friskit.com>
181 * DefaultContext.cs: better function param matching
183 2003-07-27 Piers Haken <piersh@friskit.com>
187 catch FormatExceptions while parsing numbers
189 2003-07-27 Piers Haken <piersh@friskit.com>
192 fix case sorting order
193 allow EvaluateNumber to take XPathResultType.Any
195 2003-07-27 Piers Haken <piersh@friskit.com>
199 don't pass null to XmlQualifiedName constructor
201 2003-07-27 Piers Haken <piersh@friskit.com>
203 * DefaultContext.cs: allow 'concat' to take arbitrary-typed arguments (spec?)
205 2003-07-27 Piers Haken <piersh@friskit.com>
207 * Expression.cs: allow EvaluateNodeSet to take XPathResultType.Any
209 2003-07-26 Piers Haken <piersh@friskit.com>
211 * Expression.cs: fix function evaluation with ambigous argument types
212 * XPathNavigator.cs: fix silly null reference bug
214 2003-07-26 Piers Haken <piersh@friskit.com>
218 ArrayListIterator->EnumeratorIterator
219 * Expression.cs: add sorting support
221 2003-07-26 Piers Haken <piersh@friskit.com>
225 move QName parsing into tokenizer
227 fix evaluating XPathResultType.Any
228 fix ExprDiv.ToString()
229 fix NodeTypeTest.ToString() (for namespace axis)
231 2003-07-25 Piers Haken <piersh@friskit.com>
233 * Expression.cs: return clone of $var evaluation
235 2003-07-26 Piers Haken <piersh@friskit.com>
237 * Iterator.cs: add setter for NamespaceManager
238 * XPathNavigator.cs: propagate NamespaceManager from context on Evaluate
239 * Expression.cs: fix func/var exception strings
241 2003-07-25 Piers Haken <piersh@friskit.com>
243 * Expression.cs: implement ExprFilter.Evaluate
245 2003-07-25 Piers Haken <piersh@friskit.com>
247 * Expression.cs: implement ExprVariable.Evaluate
249 2003-07-24 Ben Maurer <bmaurer@users.sourceforge.net>
251 * DefaultContext.cs: implement lang ()
253 2003-07-24 Piers Haken <piersh@friskit.com>
257 allow ExprUNION to take non-nodeset (eg, $var) arguments
259 2003-07-24 Piers Haken <piersh@friskit.com>
261 * Tokenizer.cs: fix variable references
267 2003-06-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
269 * XPathDocument.cs : removed Driver class and restored authors' name
270 (though it is completely rewrote).
272 2003-06-30 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
274 * XPathDocument.cs : Replaced existing stub class with real
275 XPathDocument implementation.
277 2003-04-28 Piers Haken <piersh@friskit.com>
279 * Parser.jay, Tokenizer.cs: more compliant lexical parsing of ambiguous tokens
281 2003-03-07 Piers Haken <piersh@friskit.com>
283 * Tokenizer.cs: allow '.'s in NCNames
285 2003-03-07 Piers Haken <piersh@friskit.com>
289 fixed function argument resolution
291 2003-02-09 Piers Haken <piersh@friskit.com>
295 * Expression.cs: fix namespace handling
297 2003-01-04 Piers Haken <piersh@friskit.com>
299 * Parser.*: Remove extraneous "using" that was stopping the build. Permanently thisi time ;-)
301 2003-02-02 Piers Haken <piersh@friskit.com>
303 * Parser.jay: add token names
304 * Tokenizer.cs: fix NCName tokenization
306 2003-01-02 Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
308 * Tokenizer.cs : Fixed ParseIdentifier to allow digits.
309 (It should be a temporary fix.)
311 2002-09-22 Nick Drochak <ndrochak@gol.com>
313 * Parser.cs: Remove extraneous "using" that was stopping the build.
315 2002-09-21 Piers Haken <piersh@friskit.com>
317 * XPathException: implementation
322 * XPathNavigator.jay:
325 2002-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
327 * Parser.cs: commented out non-existent namespace (it compiles fine
328 with mcs because of a bug that is already on bugzilla).
330 2002-09-12 Piers Haken <piersh@friskit.com>
332 * Tokenizer.cs: fix parsing numbers that start with '.'
333 * DefaultContext.cs: use MS-compatible formatting of doubles
335 2002-09-12 Piers Haken <piersh@friskit.com>
337 * Iterator.cs: added NullIterator to handle unspecified contexts
338 * XPathNavigator.cs: use NullIterator insted of SelfIterator when context is unspecified.
339 * XPathNodeIterator.cs: change default _count to -1 to prevent recalculations for NullIterators
341 2002-09-12 Piers Haken <piersh@friskit.com>
343 * Expression.cs, Parser.jay: allow ExprSLASH to take a generic expression as its left argument.
344 * Iterator.cs: fix SlashIterator.Clone() when _iterRight is null.
345 * DefaultContext.cs: fix id() return type.
347 2002-09-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
349 * DefaultContext.cs: fixed bug #28840.
350 * Expression.cs: added FIXME.
352 2002-08-17 Jason Diamond <jason@injektilo.org>
354 * XPathNavigator.cs: Fixed matching on patterns that look like
355 absolute XPath expressions.
357 2002-08-17 Jason Diamond <jason@injektilo.org>
359 * XPathNavigator.cs: Added naive (but working) implementation of
362 2002-07-31 Piers Haken <piersh@friskit.com>
364 * XPathDocument.cs: simple, XmlDocument-based implementation
366 2002-07-25 Piers Haken <piersh@friskit.com>
368 * DefaultContext.cs: implement XPathFunctionName 'name()' function.
370 2002-07-17 Piers Haken <piersh@friskit.com>
372 * DefaultContext.cs: implement 'string-length()', 'normalize-space()'
373 * Parser.jay: remove redundant production
374 * Expression.cs: add switches for debugging under VS.NET
376 2002-07-17 Piers Haken <piersh@friskit.com>
378 * Expression.cs: implement nodeset/nodeset comparisons (non-optimal)
380 2002-07-15 Piers Haken <piersh@friskit.com>
383 - rename UnionIterator to MergedIterator,
384 - create new UnionIterator to implment uniqueness for '|' operator
385 - fix position bug in ArrayListIterator.Clone()
386 * Expression.cs: use new UnionIterator constructor syntax
388 2002-07-12 Piers Haken <piersh@friskit.com>
390 * Iterator.cs: PredicateIterator: handle numeric predicates
391 * Parser.jay: add some debugging support: yyparseDebug
392 * Tokenizer.cs: cleanup, include '-' chars in identifier tokens
394 2002-06-29 Piers Haken <piersh@friskit.com>
398 - NodeTest uses XPathResultType instead of internal NodeTestTypes enum
399 - remove NodeTestTypes enum
400 - remove NodeTestTypeAny (functionality provided by base now)
401 - fix ExprStep to handle wildcard QNames
403 - moved to Mono.Xml.XPath namespace
404 - use XPathResultType
405 - handle wildcard QNames
407 * Tokenizer.cs: moved to Mono.Xml.XPath namespace
409 * XPathNavigator.cs: implement
415 * XPathResultType.cs: fix enum values
417 2002-06-24 Jason Diamond <jason@injektilo.org>
419 * XPathScanner.cs: Removed.
421 2002-06-24 Dick Porter <dick@ximian.com>
423 * XmlCaseOrder.cs: Fix namespace
425 2002-06-23 Piers Haken <piersh@friskit.com>
427 * DefaultContext.cs: implemented XPathFUnctionId
428 * Iterator.cs: new ArrayListIterator for id() support
430 2002-06-23 Piers Haken <piersh@friskit.com>
432 * XPathNavigator.cs: implement:
438 - some forwarding methods
440 * XPathNodeIterator: implement caching Count
442 * Tokenizer.cs: new XPath tokenizer
443 * Parser.jay: new XPath grammar
444 * Parser.cs: new precompiled XPath grammar
445 * Expression.cs: new XPath expression objects
446 * Iterator.cs: new XPath result/context objects
447 * DefaultContext.cs: new XPath function binding context
449 2002-05-08 Tim Coleman <tim@timcoleman.com>
451 * XPathException.cs: New stub files added.
453 2002-04-12 Duncan Mak <duncan@ximian.com>
455 * XmlCaseOrder.cs: Moved to here from System.Xml.
457 2002-03-26 Jason Diamond <jason@injektilo.org>
459 * XPathScanner.cs: Now handles name tests with wildacards. Abbreviated
460 steps. Both absolution and relative abbreviated location paths.
462 2002-03-25 Jason Diamond <jason@injektilo.org>
464 * XPathScanner.cs: Added new file. This class is supposed to be internal
465 but that would make it impossible to test.
467 2002-03-08 Duncan Mak <duncan@ximian.com>
469 * XPathNamespaceScope.cs:
471 * XPathResultType.cs:
473 * XmlSortOrder.cs: Used EnumCheck and realigned elements to be compatible with MS
474 implementation. XPathResultType is interesting as EnumCheck does
475 not show the Navigator element, but shows the String element twice.
477 2002-03-08 Jason Diamond <jason@injektilo.org>
479 * XmlDataType.cs, XmlSortOrder.cs, XPathNodeType.cs: Added files.
481 2002-03-06 Jason Diamond <jason@injektilo.org>
483 * ChangeLog: Added to this directory.
485 * XPathExpression.cs, XPathNamespaceScope.cs, XPathNodeIterator.cs,
486 XPathResultType.cs: New files.
488 * XPathNavigator.cs: Stubbed out all properties and methods.