2005-04-06 Atsushi Enomoto * RelaxngPattern.cs : fixed incorrect use of virtual. 2005-03-18 Atsushi Enomoto * XsdDatatypeProvider.cs : quick hack to workaround not to be rejected under MS.NET because of NOTATION type (thus, NOTATION type is not available in this provider). 2005-03-01 Atsushi Enomoto * RelaxngReader.cs : there was two public namespace constant. One should be obsoleted. 2005-03-01 Atsushi Enomoto * RelaxngPattern.cs : RdpUnresolvedRef should process empty/notAllowed elimination on its referenced pattern. 2005-02-27 Atsushi Enomoto * XsdDatatypeProvider.cs : Added simpleType parameter support. * RelaxngValidatingReader.cs : added ReportDetails flag to report all expected element names / attribute names. Removed all unused code. 2005-02-06 Atsushi Enomoto * RelaxngReader.cs : ns attribute on root element should also be handled as well as datatypeLibrary. 2005-02-06 Atsushi Enomoto * RelaxngReader.cs : it was not handling datatypeLibrary attribute on root element. Added DefaultNamespace handling. * RelaxngGrammar.cs : added DefaultNamespace property. * RelaxngPattern.cs : WriteCompact() now outputs "default namespace =..". 2005-01-26 Atsushi Enomoto * RelaxngPattern.cs : fixed 2.0 typo. 2005-01-26 Atsushi Enomoto * RelaxngGrammar.cs, RelaxngPattern.cs, RelaxngNameClass.cs : added RelaxngPattern.WriteCompact(TextWriter) and all internal WriteRnc() overrides. 2004-12-06 Atsushi Enomoto * RelaxngValidatingReader.cs : - Existing GetLabels() was insufficient to support attribute labels by design (since those state object always reflects the status after Read() and inside Read() attributes are checked and attribute derivatives are consumed). So just made existing stuff as obsolete. - Added object GetCurrentState() that returns RdpPattern wrapper. - Added Emptiable(object state) that returns whether the specified state is emptiable. - Added GetElementLabels(object state) and GetAttributeLabels(object state) that returns the collection of XmlQualifiedName that represents possible element names or attribute names from the argument state. - Added AfterOpenStartTag(state,name,ns), OpenStartTag(state,name, ns), AfterAttribute(state, name, ns), Attribute(state,name,ns), AfterCloseStartTag(state), CloseStartTag(state), AfterEndTag(state) and EndTag(state) to simulate state transition. AfterXXX() returns another state instance if the transition was successful or null. XXX() returns bool that indicates if the transition was successful or not and proceeds the state in case of success. 2004-12-06 Atsushi Enomoto * RelaxngException.cs : Added new .ctor() that takes RelaxngElementBase to provide target grammar component location. 2004-12-06 Atsushi Enomoto * RelaxngNameClass.cs, RelaxngPattern.cs, RelaxngGrammar.cs : Added related grammar component location to error message. In RelaxngDefine, Compile() caused error on duplicate key on Hashtable.Add(). * RelaxngReader.cs : In GetStrippedAttribute(), use GetAttribute(string,string). 2004-12-06 Atsushi Enomoto * RelaxngException.cs : don't store debug string. It was so harmful for performance. 2004-12-05 Atsushi Enomoto * RelaxngValidatingReader.cs : - Better way to expose API; use ExpectedElements and ExpectedAttributes of type ICollection. Now GetLabels is obsolete. - Implemented notAllowed check. It might be too heavy since it checks all the QNames returned by GetLabels. In such case, use RoughLabelCheck = true. - Added RoughLabelCheck of type bool that indicates to omit notAllowed check. 2004-12-05 Atsushi Enomoto * RelaxngValidatingReader.cs : no, it was very easy. But to avoid state-changeful property, it is now bool Emptiable(). 2004-12-05 Atsushi Enomoto * RelaxngValidatingReader.cs : reverted IsEmptiable. It was not ready. 2004-12-05 Atsushi Enomoto * RelaxngPattern.cs : added GetLabels() override to RdpUnresolvedRef. * RelaxngValidatingReader.cs : Added GetLabels() that collects "allowed element names and attributes" at current state. Added IsEmptiable that indicates whether current reader can be closed by an end tag. 2004-11-28 Atsushi Enomoto * RelaxngGrammar.cs : fixed error that happened on recompilation. 2004-07-14 Atsushi Enomoto * RelaxngGrammar.cs : When definition is missing, the error message should show what definition is missing. 2004-06-25 Atsushi Enomoto * Misc.cs, RelaxngDatatype.cs, RelaxngDatatypeProvider.cs, RelaxngDefaultDatatype.cs, RelaxngException.cs, RelaxngGrammar.cs, RelaxngMergedProvider.cs, RelaxngNameClass.cs, RelaxngPattern.cs, RelaxngPatternType.cs, RelaxngReader.cs, RelaxngValidatingReader.cs, XsdDatatypeProvider.cs : Added/replaced novell license term. 2004-06-21 Atsushi Enomoto * Misc.cs, RelaxngPattern.cs, RelaxngReader.cs : Use XmlResolver (or XmlUrlResolver) directly. XmlResolver was incorrectly _used_ before null check. Don't create XmlResolver instance for _every_ pattern object. * RelaxngPattern.cs : UnresolvedRef.ExpandRef() should return not try to find target derivative pattern twice. It was the culprit of infinite loop. Removed dirty switches. * RelaxngGrammar.cs : code cleanup. 2004-06-17 Atsushi Enomoto * Misc.cs, RelaxngGrammar.cs, RelaxngPattern.cs, RelaxngReader.cs : Added XmlResolver property to fix bug #60334. Check incrrect recursion check that caused possible infinite loop. 2004-05-31 Atsushi Enomoto * Misc.cs : made Util class internal. * RelaxngDatatypeProvider.cs : looks commit was missing. * RelaxngException.cs : made one .ctor() internal that accepts RdpPattern. * RelaxngNameClas.cs : Names list should not be settable. * RelaxngPattern.cs : RelaxngRefPattern class is internal use only. * RelaxngPatternType.cs : there is not "Include" pattern. 2004-05-30 Atsushi Enomoto * RelaxngDatatypeProvider.cs : removed meaningless using alias. * RelaxngGrammar.cs : modified ArrayList to RelaxngGrammarContentList. RelaxngMergedProvider.cs : Added #if PNET switch to support non- xmlschema available environment. * RelaxngPattern.cs : added IGrammarContent and RelaxngGrammarContentList. 2004-03-17 Atsushi Enomoto * RelaxngNameClass.cs : Introduced RelaxngNameClassList class. 2004-03-15 Atsushi Enomoto * RelaxngGrammar.cs, RelaxngNameClass.cs, RelaxngPattern.cs : Added Write() support. 2004-02-28 Atsushi Enomoto * RelaxngReader.cs : ReadPattern() should be public. 2004-02-25 Atsushi Enomoto * Removed - RngGrammar.cs - RngNameClass.cs - RngPattern.cs - RngPatternType.cs They are moved to RelaxngXXX.cs and improved 2004-02-25 Atsushi Enomoto * Added - RelaxngDatatype.cs - RelaxngDatatypeProvider.cs - RelaxngDefaultDatatypes.cs - RelaxngException.cs - RelaxngGrammar.cs - RelaxngMergedProvider.cs - RelaxngNameClass.cs - RelaxngPattern.cs - RelaxngPatternType.cs - XsdDatatypeProvider.cs * Misc.cs, RelaxngReader.cs, RelaxngValidatingReader.cs : Radical design changes. In short: - API redesign (renaming RngXxx to RelaxngXxx) - Strict grammar validation - Datatype support (XML Schema primitive datatypes) - Some derivative bugfixes such as list validation. 2003-05-19 Atsushi Enomoto * RelaxngReader.cs : + Now skips immaterial content correctly. + Removed MoveToContent(). + Trimming attribute values and names. + Fixed ReadNameClassChoice(), ReadNameClassExcept(), ReadPatternExcept (). They require one or more contents. + QName resolver fix. + ReadListPattern() failed to read actual content. * RelaxngValidatingReader.cs : + Fixed incorrect error message. + Fixed incorrect attribute namespace handling. * RngGrammar.cs : Some simplification stuff fix. Support for illegal recursion check. * RngNameClass.cs : fixed RngNsName ctor() (argument not passed). * RngPattern.cs : fixed ParentRef.Compile() (was treated same as Ref). 2003-05-05 Atsushi Enomoto * RelaxngReader.cs : ReadExternalRef() hadn't resolved base uri. 2003-04-29 Atsushi Enomoto * Started. * added ChangeLog, RelaxngReader.cs, RelaxngValidatingReader.cs, RngGrammar.cs, RngNameClasses.cs, RngPattern.cs, RngPatternType.cs and Misc.cs.