(DISTFILES): Comment out a few missing files.
[mono-project.git] / mcs / class / System.XML / System.Xml.XPath / ChangeLog
blob51accf39b99ebd94633fb0f0a0c0040d6c2129d0
1 2004-11-08  Atsushi Enomoto  <atsushi@ximian.com>
3         * Tokenizer.cs : just use raw string instead of char[].
4         * XPathNavigator.cs : reuse NameTable when creating XmlTextReader.
6 2004-11-07  Atsushi Enomoto  <atsushi@ximian.com>
8         * Iterator.cs :
9           - Made copy constructor certainly different from other constructors.
10           - Position is never computed in each derived type. All MoveNext() are
11             now MoveNextCore().
12           - Most of the protected members could just be private.
14 2004-11-05  Atsushi Enomoto  <atsushi@ximian.com>
16         * Expression.cs, XPathNavigator.cs : hold raw expression field for
17           get_Expression. It is preparation for expression optimization.
19 2004-11-05  Atsushi Enomoto  <atsushi@ximian.com>
21         * Iterator.cs : SimpleIterator._current could be cloned only when
22           it is required.
24 2004-11-05  Atsushi Enomoto  <atsushi@ximian.com>
26         * Iterator.cs : Some removal of Clone() were harmless.
28 2004-10-22  Atsushi Enomoto  <atsushi@ximian.com>
30         * XPathDocument.cs : now all the new stuff that used to be in 2.0 are
31           reverted.
32         * XPathEditableNavigator.cs : It will be removed. Right now modified
33           a bit to pass build.
34         * XPathNavigator.cs : Added members that are merged from
35           XPathEditableNavigator. Updated members name.
37 2004-10-14  Atsushi Enomoto  <atsushi@ximian.com>
39         * Iterator.cs :
40           - Added WrapperIterator to return BaseIterator in such case that 
41             variable reference is resolved to XPathNodeIterator. This fixes
42             bug #68267.
43           - Path ".." is reverse axis (actually no effect).
44           - Fixed DescendantIterator.Clone() that missed "_finished" field.
45         * Expression.cs :
46           In ExprVariable.Evaluate(), use WrapperIterator() for custom
47           XPathNodeIterator.
49 2004-10-09  Atsushi Enomoto  <atsushi@ximian.com>
51         * XPathAtomicValue.cs : Init(string, XmlSchemaType) is private.
53 2004-10-05  Atsushi Enomoto  <atsushi@ximian.com>
55         * XPathAtomicValue.cs : missing Init() definition for float and string;
56           latter one resulted in infinite loop in Init(object,XmlSchemaType).
58 2004-10-04  Atsushi Enomoto  <atsushi@ximian.com>
60         * XPathNavigator.cs : TypedValue could be implemented.
61         * XPathEditableNavigator.cs : removed some MonoTODO since now there 
62           are implementations.
64 2004-09-13  Atsushi Enomoto  <atsushi@ximian.com>
66         * XPathAtomicValue.cs : All .ctor() are separeted from Init().
67           In .ctor(object, XmlSchemaType):
68           - For lists that contains just one item, Init() recursively.
69           - For XPathAtomicValue, Init() recursively for its content fields.
70           For Value and TypedValue, consider typecode from XmlSchemaType.
72 2004-09-06  Atsushi Enomoto  <atsushi@ximian.com>
74         * XPathEditableNavigator.cs :
75           AppendChild(xmlReader) ignored nodes after than first one, and
76           resulted in infinite loop.
77           Added get_OuterXml overrides. set_OuterXml should not move to
78           parent before deleting current.
80 2004-08-25  Atsushi Enomoto  <atsushi@ximian.com>
82         * XPathAtomicValue.cs : Value was not returning expected value when
83           it is created as new XPathAtomicValue (object, XmlSchemaType).
84           Compute stringValue and reuse.
85         * XPathNavigator.cs : Temporarily stubbed as to ignore SchemaInfo
86           (for checking XQuery implementation).
88 2004-08-25  Atsushi Enomoto  <atsushi@ximian.com>
90         * XPathAtomicValue.cs : Handle .ctor() with object parameter more
91           precisely (still not enough, for list argument).
92           Removed commended blocks.
94 2004-08-24  Atsushi Enomoto  <atsushi@ximian.com>
96         * XPathAtomicValue.cs : DateTime should be convertible to string.
97           Use schemaType's TypeCode for .ctor() that takes object.
98         * XPathNavigator.cs : copied get_InnerXml from XPathEditableNavigator.
99         * XPathEditableNavigator.cs : set_InnerXml should be different (new)
100           property from get_InnerXml. Removed get_InnerXml and get_OuterXml 
101           overrides.
103 2004-08-23  Atsushi Enomoto  <atsushi@ximian.com>
105         * XPathAtomicValue.cs, XPathNavigator.cs : Eliminate MS.Internal.Xml.*.
107 2004-08-03  Atsushi Enomoto  <atsushi@ximian.com>
109         * XPathEditableNavigator.cs : implemented some editor support methods.
111 2004-08-02  Atsushi Enomoto  <atsushi@ximian.com>
113         * XPathDocument.cs :
114           - For .NET 2.0, added a switch to support new XPathDocument2. 
115             If switch is off, then it uses DTM.
116           - Implemented remaining 2.0 bits (except for Obsolete ones).
118         To use them in XPathDocument, set environment MONO_XPATH_DOCUMENT_2=yes
119         (It is still too unstable to pass all nunit tests and standalone XSLT
120         tests).
122 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
124         * XPathNavigator.cs : Implemented ReadSubtree().
126 2004-07-28  Atsushi Enomoto  <atsushi@ximian.com>
128         * XPathDocument.cs : for .ctor() and .ctor(XmlNameTable), now it 
129           creates Mono.Xml.XPath.XPathEditableDocument and thus supports
130           IXPathEditable.CreateEditor().
132 2004-07-28  Atsushi Enomoto  <atsushi@ximian.com>
134         * XPathEditableNavigator.cs : Implemented InsertAfter() and 
135           PrependChild(); they are virtual, not abstract.
136         * XPathNavigator.cs :
137           Implemented many 2.0 virtual properties and methods that were 
138           abstract in 1.x.
139           Implemented some Select() methods that uses IXmlNamespaceResolver.
140           Implemented most of ValueAsXxx() using XQueryConvert.
141           IsNode is always true. Implemented OuterXml and WriteSubtree() (but
142           actually they don't work because it depends on ReadSubtree()).
144 2004-07-26  Atsushi Enomoto  <atsushi@ximian.com>
146         * XPathDocument.cs : added missing && not-likely-to-be-removed members.
147         * XPathEditableNavigator.cs : added BuildSubTree().
148         * XPathException.cs : added missing methods. Hide Message in NET_2_0.
150 2004-07-23  Atsushi Enomoto  <atsushi@ximian.com>
152         * XPathNodeIterator.cs : implemented 2.0 GetEnumerator().
154 2004-07-21  Atsushi Enomoto  <atsushi@ximian.com>
156         * XPathExpression.cs, Expression.cs :
157           Added SetContext(IXmlNamespaceResolver).
158         * NodeChangedEventArgs.cs : Added missing [MonoTODO].
159         * XPathAtomicValue.cs : Halfly implemented.
160         * XPathDocument.cs : Added 2.0 members.
161         * XPathDocumentNodeChangedAction.cs : updated member names.
162         * XPathEditableNavigator.cs : Added missing 2.0 members and MonoTODO.
163         * XPathNavigator.cs : Added missing 2.0 members.
164           Fixed some members as virtual->override.
166 2004-07-13  Atsushi Enomoto  <atsushi@ximian.com>
168         * XmlNodeChageType.cs, XmlChangeFilters.cs : fixed enum values.
169         * XPathResultType.cs : marked [MonoFIX] on .Navigator.
171 2004-07-11  Atsushi Enomoto  <atsushi@ximian.com>
173         * Expression.cs, Iterator.cs, XPathNavigator.cs :
174           Use IXmlNamespaceResolver for net 2.0. Removed unused code.
175         * XPathEditableNavigator.cs : fixed namespace.
176         * XPathNavigator.cs :
177           Fixed inheritance. Added missing MonoTODO.
178           Removed old .net 1.2 code. 
180 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
182         * DefaultContext.cs : Globalization.
183         * Iterator.cs : In SlashIterator.MoveNext() position might keep 0
184           in case of empty list. Thus extraneous iteration might happened.
185           Removed unused (and clone unsafe) EnumeratorIterator.
187 2004-06-06  Atsushi Enomoto  <atsushi@ximian.com>
189         * XPathDocument.s : The previous patch is still incomplete to close.
191 2004-06-05  Atsushi Enomoto  <atsushi@ximian.com>
193         * XPathDocument.cs : close self-opened XmlTextReader in .ctor().
195 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
197         * Expression.cs : LookupNamespace() only allows already-atomized names.
198         * XPathEditableNavigator.cs : removed incorrect set_OuterXml() and 
199           set_InnerXml().
201 2004-05-22  Atsushi Enomoto  <atsushi@ximian.com>
203         * DefaultContext.cs : Add XPathNavigator input support for ToBoolean()
204           and ToNavigator().
205         * Expression.cs : In Equality comparison, evaluate XPathNavigator in
206           the same as well as NodeSet. This fixes bug #59134.
208 2004-05-22  Atsushi Enomoto  <atsushi@ximian.com>
210         * XPathAtomicValue.cs : missed NET_2_0.
212 2004-05-22  Atsushi Enomoto  <atsushi@ximian.com>
214         * IXPathChangeNavigable.cs,
215           IXPathEditable.cs,
216           NodeChangedEventArgs.cs,
217           NodeChangedEventHandler.cs,
218           XPathAtomicValue.cs,
219           XPathChangeNavigator.cs,
220           XPathDocumentNodeChangedAction.cs,
221           XPathEditableNavigator.cs,
222           XPathItem.cs,
223           XmlChangeFilters.cs,
224           XmlNodeChangeType.cs : added NET_2_0 classes.
225         * XPathDocument.cs,
226           XPathNavigator.cs : updated NET_2_0 members.
228 2004-05-20  Atsushi Enomoto  <atsushi@ximian.com>
230         * Expression.cs : We should not catch all kind of exception. Just
231           throwing any kind of exception would be preferable.
232           Added support for XPathNavigator values.
234 2004-05-13  Atsushi Enomoto  <atsushi@ximian.com>
236         * DefaultContext.cs : Removed MonoTODO. done.
237         * Expression.cs : handle XPathResultType.Navigator in some places and
238           removed MonoTODO. Mark MonoTODO with explicit comments (though they
239           are mostly pointing out possibilities of optimization).
240           Removed extra check that depended on the old bugs.
241         * XPathResultType.cs : Fixed .Navigator that had the same value as
242           .String.
244 2004-05-12  Atsushi Enomoto  <atsushi@ximian.com>
246         * Parser.jay : made class internal.
248 2004-03-16  Atsushi Enomoto  <atsushi@ximian.com>
250         * XPathNavigator.cs, Iterator.cs : Considered detached nodes, the 
251           result of MoveToParent() should be checked.
253 2004-02-17  Atsushi Enomoto  <atsushi@ximian.com>
255         * XPathNavigator.cs : Only child and attribute axes are allowed for
256           Matches().
257         * Expression.cs : Added IsPositional property.
258         * DefaultContext.cs : Added some overrides.
260 2004-02-16  Atsushi Enomoto  <atsushi@ximian.com>
262         * XPathNavigator.cs : no, its still not ok. comment out now.
264 2004-02-16  Atsushi Enomoto  <atsushi@ximian.com>
266         * Expression.cs : Added EvaluatedNodeType and NeedAbsoluteMatching
267           to reduce extraneous Matches() trial.
268         * Iterator.cs : Removed unused MergedIterator.
269         * XPathNavigator.cs : Optimized Matches() not to evaluate ancestors
270           unnecessarily. (Test with NeedAbsoluteMatching).
272 2004-02-10  Atsushi Enomoto  <atsushi@ximian.com>
274         * Iterator.cs : Added overriden Count properties for some iterators
275           (this fixes the half of #50678).
276           Added ListIterator class (which can reduce GetEnumerator()). 
277           In some places we can omit clone for Current property, so added 
278           some check logic (It has no effect as yet).
279         * Expression.cs, DefaultContext.cs :
280           use ListIterator instead of EnumeratorIterator.
282 2004-02-08  Atsushi Enomoto  <atsushi@ximian.com>
284         * DefaultContext.cs, Expression.cs, Iterator.cs :
285           tiny foreach elimination.
287 2004-02-05  Atsushi Enomoto  <atsushi@ximian.com>
289         * DefaultContext.cs : trivial processing order fix.
291 2004-01-27  Atsushi Enomoto  <atsushi@ximian.com>
293         * DefaultContext.cs : Avoid exception if possible.
294         * Iterator.cs : Fixed PrecedingSiblingIterator.MoveNext(). When the
295           nav was positioned at the first, it incorrectly points itself.
296           Don't add names to name table while it is useless and expensive.
298 2004-01-08  Nick Drochak <ndrochak@ieee.org>
300         * Iterator.cs: Removed unused variable.
301         
302 2003-12-18 Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
304         * Parser.jay : now it supresses error output from jay.
305         * DefaultContext.cs : (XPathFunctionSubstring) exclude -Infinity.
306         * Tokenizer.cs : better error message.
307         * XPathDocument.cs : Use XmlValidatingReader to support id() function.
308           (just found MS.NET actually supports it)
310 2003-12-16 Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
312         * Iterator.cs : On its iteration, moving Current must not affect to
313           MoveNext(). To assure this, Current must be a clone of navigator.
314           Removed unused code.
316 2003-12-07 Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
318         * Tokenizer.cs : Removed some TODOs. (trivial ;-)
319         * Iterator.cs : ParensIterator can inherit from BaseIterator.
320           SlashIterator copy .ctor() always failed to clone. This fixes Count.
322 2003-12-03 Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
324         * Expression.cs : XPathSorters.Compare() should compare document
325           position. See last sentence of XSLT 1.0 secion 10.
327 2003-12-03 Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
329         * DefaultContext.cs : Overrode all functions' ToString().
330           XPathFunctions.ToNumber() trims whitespaces at both side.
331           Fixed NullReferenceException in normalize-space().
332         * Iterator.cs : Fixed AncestorOrSelfIterator.MoveNext() didn't handle
333           attribute or namespace node correctly.
334           SlashIterator.Clone() didn't clone "next node iterator" correctly.
335           EnumeratorIterator.ctor() should raise an error (not at Clone())
336           when the target IEnumerator is not ICloneable.
338 2003-11-28  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
340         * Expression.cs : namespace axis now traversed in reverse order, so it
341           requires sorting.
342         * Iterator.cs : UnionIterator.Clone() was incomplete. 
343           NamespaceItarator() should be reverse order (special handling
344           because of XPathNavigator specification).
346 2003-11-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
348         * Iterator.cs : PrecedingIterator.MoveNext() now breaks up at Root.
349         * XPathNavigator.cs : ComparePosition() didn't handle attributes 
350           correctly.
352 2003-11-24  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
354         * Parser.jay, Expression.cs, Iterator.cs :
355           Added ExprParens and ParensIterator classes which is used to handle
356           precedence of parenthesized expressions.
357           (e.g. consider "(preceding::*)[3]" and "preceding::[3]" )
359         * Expression.cs, Iterator.cs :
360           Added RequireSorting property for each Expr and BaseIterator classes.
361           SlashIterator.MoveNext() now considers correct sorting. But
362           considering performance, it separates two logics, sorted and sortless
363           depending on RequireSorting of left iterator and right expression.
365         * Iterator.cs :
366           SimpleIterator.ctor() should consider when nav is null.
367           FollowingIterator.MoveNext() and PrecedingIterator.MoveNext() should
368           not return any nodes.
369           AncestorIterator and AncestorOrSelfIterator copy ctr() should clone
370           positions.
371           AncestorIterator.MoveNext() should skip Root if context node is
372           Root itself.
373           FollowingIterator.MoveNext() should not handle children of context
374           itself.
375           PrecedingIterator.MoveNext() should skip its ancestors.
376           AxisIterator.ReverseAxis should be dependent on its containing iter.
377           UnionIterator.MoveNext() should consider comparison of nodes in 
378           different document. The behavior is implementation dependent.
379           (see XSLT spec 12.1)
381 2003-11-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
383         * Added XPathComparer.cs
384         * DefaultContext.cs : Fixed XPathFunctionId.Evaluate() to iterate base 
385           iterator correctly, and sort results.
387 2003-11-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
389         * DefaultContext.cs : Imcomplete fix ;-)
391 2003-11-19  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
393         * DefaultContext.cs : XPathFunctions.ToNumber() should catch overflow.
394           XPathFunctionId.cs : Exposed Id expression.
395         * Expression.cs : Added ExprLiteral.Value, and class ExprParens (it
396           will be used to solve evaluation precedence problem).
398 2003-11-09  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
400         * Iterator.cs : Fixed SlashIterator that might return nodes 1)in
401           inconsistent order, and 2)may return duplicate result nodes.
403 2003-11-06 Ben Maurer  <bmaurer@users.sourceforge.net>
405         * Iterator.cs: (AxisIterator.ComparablePosition): Remove. Let
406         it inherit from the base class. This made b[2] evaluated on 
407         <a /><b /><c /><a /><b /><c /> return the first b node because
408         in the ChildIterator it was the second node and seemed to satsify
409         the predicate.
411 2003-11-04  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
413         * Iterator.cs : Added bool ReverseAxis property to identify whether
414           the iterator is in reverse order or not.  Added ComparablePosition
415           for correct position comparison for PredicateIterator and reverse-
416           order-axes.  Modified AncestorIterator, AncestorOrSelfIterator,
417           PrecedingIterator and PrecedingSiblingIterator to make MoveNext()
418           return their nodes in document order. This fixes bugzilla #39079.
420 2003-10-15  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
422         * Iterator.cs : DescendantIterator and FollowingIterator also should
423           not MoveNext() after they reached to the end.
425 2003-10-13  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
427         * Iterator.cs : Fixed UnionIterator who ignores document order.
428           Fixed SlashIterator whose MoveNext() should finish at its end.
430 2003-09-27 Ben Maurer  <bmaurer@users.sourceforge.net>
432         * Iterator.cs, Expression.cs, XPathNavigator.cs: In AxisIterator
433         use NameTable so we dont call strcmp.
435 2003-09-27 Ben Maurer  <bmaurer@users.sourceforge.net>
437         * DefaultContext.cs (translate): translate ("abc", "c", "") = "ab"
438         not "abc".
439         * Iterator.cs, Expression.cs: All axes are
440         SimpleIterators. SimpleIterators are gaurenteed to give the same
441         XPathNavigator in Current. Make AxisIterator take a
442         SimpleIterator, not any old BaseIterator. Will allow us to make
443         NameTable optimizations and avoid quite a few strcmp's.
445 2003-09-24 Ben Maurer  <bmaurer@users.sourceforge.net>
447         * Expression.cs: make // work right, must use another slash itr.
449 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
451         * Expression.cs: cant use $$ before assigned.
453 2003-09-21 Ben Maurer  <bmaurer@users.sourceforge.net>
455         * Expression.cs, Parser.jay, XPathNavigator.cs: api beautification.
457 2003-09-20 Ben Maurer  <bmaurer@users.sourceforge.net>
459         * Expression.cs: num != double.NaN does not work.
461 2003-09-19 Ben Maurer  <bmaurer@users.sourceforge.net>
463         * Expression.cs: in NodeTypeTest dont throw an exception if it is
464         an unknown node type (allows for better Pattern debugging).
466 2003-09-17 Ben Maurer  <bmaurer@users.sourceforge.net>
468         * DefaultContext.cs: implement sum () and translate ().
470 2003-09-13 Ben Maurer  <bmaurer@users.sourceforge.net>
472         * XPathNavigator.cs: Make methods where you pass in the context,
473         so that we dont have to clone expressions so much.
475 2003-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
477         * DefaultContext.cs, Expresssion.cs, Parser.jay: Rewrite so that
478         system functions are actually expressions. Will allow for some
479         nice optimizations.
481 2003-08-25 Ben Maurer  <bmaurer@users.sourceforge.net>
483         * XPathNavigator.cs: "Smart" behavior in Matches. Nice 8x speed
484         improvement in the method (5ms/call -> .7 ms / call) measured by
485         monodoc's rendering of N:System.
486         * Expression.cs: Utility methods to support above.
488 2003-08-13 Piers Haken  <piersh@friskit.com>
489         
490         * Iterator.cs:
491                 fix MergedIterator.Clone(), now clones other's iterators
492                 fix DescendantIterator.Clone(), now copies depth
493                 make iterator cloning constructors more type-specific
495 2003-08-01 Piers Haken  <piersh@friskit.com>
497         * Expression.cs: added NodeNamespaceTest
498         * XPathNavigator.cs: implement Select* with namespaces
500 2003-07-31 Ben Maurer  <bmaurer@users.sourceforge.net>
502         * Iterator.cs: Allow creation of an EnumeratorIterator with an
503         XmlNamespaceManager.
504         
505 2003-07-31 Piers Haken  <piersh@friskit.com>
507         * Parser.jay:
508                 Nested predicates (uses ExprFilter instead)
509                 more type safety
510                 make grammar look more like w3c spec
511         * Expression.cs:
512                 remove ExprStep, ExprPredicates
513                 NodeTest is now a NodeSet
514                 more type-safety
515         * Iterator.cs:
516                 PredicateIterator now only takes a single predicate expression
517                 more type-safety
518         * XPathNavigator.cs:
519                 simplified SelectTest
520         * XPathException.cs:
521                 fixed indenting
523 2003-07-30  Duncan Mak  <duncan@ximian.com>
525         * XPathException.cs
526         (GetObjectData): 
527         (Message): Added.
529 2003-07-29 Piers Haken  <piersh@friskit.com>
531         * DefaultContext.cs: 'local-name' returns String, not NodeSet!
533 2003-07-29 Piers Haken  <piersh@friskit.com>
535         * XPathNavigator.cs:
536         * Expression.cs:
537                 add typesafe Evaluate* methods
539 2003-07-29 Piers Haken  <piersh@friskit.com>
541         * DefaultContext.cs: fix 'substring-after'
543 2003-07-29 Piers Haken  <piersh@friskit.com>
545         * Iterator.cs: fix PredicateIterator.CurrentPosition bug (it wasn't incrementing)
547 2003-07-29 Ben Maurer  <bmaurer@users.sourceforge.net>
549         * Iterator.cs: dont throw exceptions on tostring ()
550         
551 2003-07-28  Piers Haken <piersh@friskit.com>
553         * DefaultContext.cs: better handling of null argument lists
554         * XPathNavigator.cs: implement ComparePosition
556 2003-07-28  Piers Haken <piersh@friskit.com>
558         * Expression.cs: boolean operators: handle comparing .Any better
560 2003-07-28  Piers Haken <piersh@friskit.com>
562         * DefaultContext.cs: count() should return a double
563         * Expression.cs: better support for handling non-double numbers
565 2003-07-28  Piers Haken <piersh@friskit.com>
567         * DefaultContext.cs: better function param matching
569 2003-07-27  Piers Haken <piersh@friskit.com>
571         * Expression.cs:
572         * DefaultContext.cs:
573                 catch FormatExceptions while parsing numbers
575 2003-07-27  Piers Haken <piersh@friskit.com>
577         * Expression.cs:
578                 fix case sorting order
579                 allow EvaluateNumber to take XPathResultType.Any
581 2003-07-27  Piers Haken <piersh@friskit.com>
583         * Expression.cs:
584         * Tokenizer.cs:
585                 don't pass null to XmlQualifiedName constructor
587 2003-07-27  Piers Haken <piersh@friskit.com>
589         * DefaultContext.cs: allow 'concat' to take arbitrary-typed arguments (spec?)
591 2003-07-27  Piers Haken <piersh@friskit.com>
593         * Expression.cs: allow EvaluateNodeSet to take XPathResultType.Any
595 2003-07-26  Piers Haken <piersh@friskit.com>
597         * Expression.cs: fix function evaluation with ambigous argument types
598         * XPathNavigator.cs: fix silly null reference bug
600 2003-07-26  Piers Haken <piersh@friskit.com>
602         * Iterator.cs:
603         * DefaultContext.cs:
604                 ArrayListIterator->EnumeratorIterator
605         * Expression.cs: add sorting support
607 2003-07-26  Piers Haken <piersh@friskit.com>
609         * Tokenizer.cs:
610         * Parser.jay:
611                 move QName parsing into tokenizer
612         * Expression.cs:
613                 fix evaluating XPathResultType.Any
614                 fix ExprDiv.ToString()
615                 fix NodeTypeTest.ToString() (for namespace axis)
617 2003-07-25  Piers Haken <piersh@friskit.com>
619         * Expression.cs: return clone of $var evaluation
621 2003-07-26  Piers Haken <piersh@friskit.com>
623         * Iterator.cs: add setter for NamespaceManager
624         * XPathNavigator.cs: propagate NamespaceManager from context on Evaluate
625         * Expression.cs: fix func/var exception strings
627 2003-07-25  Piers Haken <piersh@friskit.com>
629         * Expression.cs: implement ExprFilter.Evaluate
631 2003-07-25  Piers Haken <piersh@friskit.com>
633         * Expression.cs: implement ExprVariable.Evaluate
635 2003-07-24  Ben Maurer <bmaurer@users.sourceforge.net>
636         
637         * DefaultContext.cs: implement lang ()
639 2003-07-24  Piers Haken <piersh@friskit.com>
641         * Parser.jay:
642         * Expression.cs:
643                 allow ExprUNION to take non-nodeset (eg, $var) arguments
645 2003-07-24  Piers Haken <piersh@friskit.com>
647         * Tokenizer.cs: fix variable references
648         * Parser.jay:
649         * Expression.cs:
650         * XPathNavigator.cs:
651                 use XmlQualifiedName
653 2003-06-30  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
655         * XPathDocument.cs : removed Driver class and restored authors' name
656           (though it is completely rewrote).
658 2003-06-30  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
660         * XPathDocument.cs : Replaced existing stub class with real
661           XPathDocument implementation.
663 2003-04-28  Piers Haken  <piersh@friskit.com>
665         * Parser.jay, Tokenizer.cs: more compliant lexical parsing of ambiguous tokens
667 2003-03-07  Piers Haken  <piersh@friskit.com>
669         * Tokenizer.cs: allow '.'s in NCNames
671 2003-03-07  Piers Haken  <piersh@friskit.com>
673         * Exression.cs:
674         * DefaultContext.cs:
675                 fixed function argument resolution
677 2003-02-09  Piers Haken  <piersh@friskit.com>
679         * XPathNavigator.cs:
680         * Iterator.cs:
681         * Expression.cs: fix namespace handling
683 2003-01-04  Piers Haken  <piersh@friskit.com>
685         * Parser.*: Remove extraneous "using" that was stopping the build. Permanently thisi time ;-)
687 2003-02-02  Piers Haken <piersh@friskit.com>
689         * Parser.jay: add token names
690         * Tokenizer.cs: fix NCName tokenization
692 2003-01-02  Atsushi Enomoto  <ginga@kit.hi-ho.ne.jp>
694         * Tokenizer.cs : Fixed ParseIdentifier to allow digits.
695                 (It should be a temporary fix.)
697 2002-09-22  Nick Drochak  <ndrochak@gol.com>
699         * Parser.cs: Remove extraneous "using" that was stopping the build.
701 2002-09-21  Piers Haken <piersh@friskit.com>
703         * XPathException: implementation
704         * Expression.cs:
705         * Iterator.cs:
706         * Parser.jay:
707         * Tokenizer.jay:
708         * XPathNavigator.jay:
709                 use XPathException.
711 2002-09-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
713         * Parser.cs: commented out non-existent namespace (it compiles fine
714         with mcs because of a bug that is already on bugzilla).
716 2002-09-12  Piers Haken <piersh@friskit.com>
718         * Tokenizer.cs: fix parsing numbers that start with '.'
719         * DefaultContext.cs: use MS-compatible formatting of doubles
721 2002-09-12  Piers Haken <piersh@friskit.com>
723         * Iterator.cs: added NullIterator to handle unspecified contexts
724         * XPathNavigator.cs: use NullIterator insted of SelfIterator when context is unspecified.
725         * XPathNodeIterator.cs: change default _count to -1 to prevent recalculations for NullIterators
727 2002-09-12  Piers Haken <piersh@friskit.com>
729         * Expression.cs, Parser.jay: allow ExprSLASH to take a generic expression as its left argument.
730         * Iterator.cs: fix SlashIterator.Clone() when _iterRight is null.
731         * DefaultContext.cs: fix id() return type.
733 2002-09-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
735         * DefaultContext.cs: fixed bug #28840.
736         * Expression.cs: added FIXME.
738 2002-08-17  Jason Diamond <jason@injektilo.org>
740         * XPathNavigator.cs: Fixed matching on patterns that look like
741         absolute XPath expressions.
743 2002-08-17  Jason Diamond <jason@injektilo.org>
745         * XPathNavigator.cs: Added naive (but working) implementation of
746          Matches.
748 2002-07-31  Piers Haken <piersh@friskit.com>
750         * XPathDocument.cs: simple, XmlDocument-based implementation
752 2002-07-25  Piers Haken <piersh@friskit.com>
754         * DefaultContext.cs: implement XPathFunctionName 'name()' function.
756 2002-07-17  Piers Haken <piersh@friskit.com>
757         
758         * DefaultContext.cs: implement 'string-length()', 'normalize-space()'
759         * Parser.jay: remove redundant production
760         * Expression.cs: add switches for debugging under VS.NET
762 2002-07-17  Piers Haken <piersh@friskit.com>
764         * Expression.cs: implement nodeset/nodeset comparisons (non-optimal)
766 2002-07-15  Piers Haken <piersh@friskit.com>
768         * Iterator.cs:
769                 - rename UnionIterator to MergedIterator, 
770                 - create new UnionIterator to implment uniqueness for '|' operator
771                 - fix position bug in ArrayListIterator.Clone()
772         * Expression.cs: use new UnionIterator constructor syntax
774 2002-07-12  Piers Haken <piersh@friskit.com>
776         * Iterator.cs: PredicateIterator: handle numeric predicates
777         * Parser.jay: add some debugging support: yyparseDebug
778         * Tokenizer.cs: cleanup, include '-' chars in identifier tokens
780 2002-06-29  Piers Haken <piersh@friskit.com>
782         * Expression.cs:
783                 - remove dead code
784                 - NodeTest uses XPathResultType instead of internal NodeTestTypes enum
785                 - remove NodeTestTypes enum
786                 - remove NodeTestTypeAny (functionality provided by base now)
787                 - fix ExprStep to handle wildcard QNames
788         * Parser.jay:
789                 - moved to Mono.Xml.XPath namespace
790                 - use XPathResultType
791                 - handle wildcard QNames
792                 
793         * Tokenizer.cs: moved to Mono.Xml.XPath namespace
794         
795         * XPathNavigator.cs: implement
796                 - IsDescendant
797                 - SelectAncestors
798                 - SelectDescendants
799                 - SelectChildren
800                 
801         * XPathResultType.cs: fix enum values
802         
803 2002-06-24  Jason Diamond  <jason@injektilo.org>
805         * XPathScanner.cs: Removed.
807 2002-06-24  Dick Porter <dick@ximian.com>
809         * XmlCaseOrder.cs: Fix namespace
811 2002-06-23  Piers Haken <piersh@friskit.com>
813         * DefaultContext.cs: implemented XPathFUnctionId
814         * Iterator.cs: new ArrayListIterator for id() support
816 2002-06-23  Piers Haken <piersh@friskit.com>
818         * XPathNavigator.cs: implement:
819                 - Compile
820                 - Evaluate
821                 - Clone
822                 - Select
823                 - ToString
824                 - some forwarding methods
826         * XPathNodeIterator: implement caching Count
828         * Tokenizer.cs: new XPath tokenizer
829         * Parser.jay: new XPath grammar
830         * Parser.cs: new precompiled XPath grammar
831         * Expression.cs: new XPath expression objects
832         * Iterator.cs: new XPath result/context objects
833         * DefaultContext.cs: new XPath function binding context
835 2002-05-08  Tim Coleman <tim@timcoleman.com>
836         * XPathDocument.cs:
837         * XPathException.cs: New stub files added.
839 2002-04-12  Duncan Mak  <duncan@ximian.com>
841         * XmlCaseOrder.cs: Moved to here from System.Xml.
843 2002-03-26  Jason Diamond  <jason@injektilo.org>
845         * XPathScanner.cs: Now handles name tests with wildacards. Abbreviated 
846         steps. Both absolution and relative abbreviated location paths.
848 2002-03-25  Jason Diamond  <jason@injektilo.org>
850         * XPathScanner.cs: Added new file. This class is supposed to be internal
851         but that would make it impossible to test.
853 2002-03-08  Duncan Mak  <duncan@ximian.com>
855         * XPathNamespaceScope.cs:
856         * XPathNodeType.cs:
857         * XPathResultType.cs:
858         * XmlDataType.cs:
859         * XmlSortOrder.cs: Used EnumCheck and realigned elements to be compatible with MS
860         implementation. XPathResultType is interesting as EnumCheck does
861         not show the Navigator element, but shows the String element twice.
863 2002-03-08  Jason Diamond  <jason@injektilo.org>
865         * XmlDataType.cs, XmlSortOrder.cs, XPathNodeType.cs: Added files.
867 2002-03-06  Jason Diamond  <jason@injektilo.org>
869         * ChangeLog: Added to this directory.
871         * XPathExpression.cs, XPathNamespaceScope.cs, XPathNodeIterator.cs,
872         XPathResultType.cs: New files.
874         * XPathNavigator.cs: Stubbed out all properties and methods.