Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

246 lines
8.4 KiB
Plaintext

2009-02-23 Atsushi Enomoto <atsushi@ximian.com>
* RdpPattern.cs : added "Anything" which is used in error recovery
support.
2007-12-14 Atsushi Enomoto <atsushi@ximian.com>
* RdpPattern.cs : For ContainsText() (for interleave text/text
constraint check), element pattern should return false.
Fixed bug #347945.
2007-04-18 Atsushi Enomoto <atsushi@ximian.com>
* RdpPatterns.cs : inside elements, reset oneOrMore[Group] flags in
CheckConstraints().
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.