2005-03-08 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / System.XML / Mono.Xml.Xsl / ChangeLog
index 3fc0a149ddbcd8b62ddbf1eedd5e058ede61ea76..d6831a343c7e19b8badee1e9f23d82d3d3e177e6 100644 (file)
@@ -1,3 +1,269 @@
+2005-03-08  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * GenericOutputter.cs : for duplicate attribute in an element, no need
+         to keep previous prefix.
+
+2005-03-08  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * GenericOutputter.cs : Prefix "xml" is only allowed to the fixed XML
+         namespace. Rewrite prefix only when there is non-empty namespace.
+
+2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslStylesheet.cs : Now namespace aliases are collected in prior to
+         all other toplevel elements. Removed unused code.
+
+2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * GenericOutputter.cs : compute attribute prefix only when actual
+         emission. Fixed some cases that namespace output was missing.
+
+2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * GenericOutputter.cs : no need to use two collections to store
+         pending attributes. Just use ordered ListDictionary.
+         newNamespace.Add(int) causes extraneous boxing.
+
+2005-03-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslTransformProcessor.cs : renamed TryElementNamespacesOutput() to
+         OutputLiteralNamespaceUriNodes() so that everyone can understand
+         what it means and when it should be invoked.
+
+2005-03-04  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs : added another CompileTemplateContent() which is
+         requred in xsl:for-each. Commented out unused method.
+
+2005-03-03  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslStylesheet.cs, XslTransformProcessor.cs : exclude-element-prefix
+         in stylesheet should be considered in TryElementNamespacesOutput().
+         ParseQNameListAttribute() is not properly working for filling
+         namespaces.
+
+2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslStylesheet.cs : included stylesheet could be literal result 
+         element as stylesheet (see the spec 2.6.1).
+
+2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * GenericOutputter.cs : On WriteStartElement(), prefix should be an
+         empty string when nsURI is empty.
+       * HtmlEmitter.cs : non-HTML elements in default namespace are treated
+         unlike xml but like span, as written in the spec 16.2.
+
+2005-03-02  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslCompiledContext.cs, XslTransformProcessor.cs :
+         According to errata E25, those namespaces 1) that has the same
+         name as current element's prefix, or an empty name when current
+         element's namespace URI is empty, are not written to output.
+         So added current element information to XPathContext and added
+         prefix parameter to PushElementState(), added xsl:copy check to
+         TryElementNamespacesOutput().
+         http://www.w3.org/1999/11/REC-xslt-19991116-errata/
+
+2005-02-26  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslFunctions.cs : unparsed-entity-uri() should return SYSTEM ID
+         instead of BaseURI.
+
+2005-02-25  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslTemplate.cs : According to the spec 5.7, it is an error for 
+         xsl:template to have 'mode' without 'match'.
+
+2005-02-24  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Compiler.cs : added ns lookup with nsDecls Hashtable.
+
+2005-02-24  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslStylesheet.cs : It should consider "#default" in namespace-alias.
+
+2005-02-23  Atsushi Enomoto <atsushi@ximian.com>
+
+       * GenericOutputter.cs : It should not attempt to write prefix "xml" and
+         namespace "http://www.w3.org/XML/1998/namespace".
+
+2005-02-21  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XmlWriterEmitter.cs : PI nodes are normalized as to not contain "?>".
+       * HtmlEmitter.cs : CDATA nodes are written just as text.
+       * GenericOutputter.cs : custom format are treated just as XML output.
+
+2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Outputter.cs,
+         TextOutputter.cs,
+         GenericOutputter.cs : removed WriteStartDocument(), WriteEndDocument()
+         and WriteState. Writing XML declaration is done inside
+         DetermineOutputMethod().
+
+2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Compiler.cs : reverted previous fix, since it should be done
+         in XslTransformProcessor with root stylesheet.
+       * XslTransformProcessor.cs : In TryElementNamespacesOutput(),
+         don't output alias namespaces. And now consider null exclusions.
+
+2005-02-17  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Compiler.cs : don't return alias namespaces in GetNamespacesToCopy().
+
+2005-02-16  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Compiler.cs : GetNamespacesToCopy() should also find for non-local
+         namespace nodes. Patch by Andrew Skiba with some fixes.
+       * XslTransformProcessor.cs : Patch by Andrew Skiba.
+         TryStylesheetNamespaceOutput() is now TryElementNamespacesOutput()
+         as to handle all namespace nodes to copy in stylesheet nodes.
+         Global parameterss are evaluated before global variables. 
+       * XmlOutputter.cs : removed unused code.
+
+       Pending items:
+
+       * Actually variables and params should check reference recursion.
+           This patch incompletely fixes the problem.
+       * Those operations that considers excluded-result-prefixes must
+         also check those attributes of its ancestors.
+
+2005-02-10  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XmlWriterEmitter.cs : String.Replace() was insufficient for
+         sequential candidates for replacement. Patch by Andrew Skiba.
+
+2005-02-10  Atsushi Enomoto <atsushi@ximian.com>
+
+       * GenericOutputter.cs : don't output extraneous xml declaration.
+         fix by Andrew Skiba.
+
+2005-02-09  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslStylesheet.cs : MS implementation had chosen to recover from 
+         the error, in the way specified in the spec 7.7.1. Patch by Andrew
+         Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslTemplate.cs : if input is literal result element, it could result
+         in ArgumentException. Patch by Andrew Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslFunctions.cs : Fixed unparsed-entity-uri() that might result in
+         NullReferenceException. Patch by Andrew Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslOutput.cs : MS.NET recovers from unknown encoding according to
+         XSLT spec 16.1. Patch by Andrew Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * HtmlEmitter.cs : patch by Andrew Skiba.
+         Remove extra element prefix output. simplify attribute prefix output.
+         Attribute output might have resulted in invalid element stack peek.
+         Output specified media type if any.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * Compiler.cs : Patch by Andrew Skiba.
+         wrap internal exception with XsltCompileException.
+         Raise an error for not-found document URI.
+         QName might contain sequential whitespaces and thus could be empty.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslAttributeSet.cs : just ignore other kind of nodes than element
+         in its content. Fix by Andrew Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslOutput.cs : for html and text output mode, just set internal
+         omitXmlDeclaration status true. Patch by Andrew Skiba.
+
+2005-02-08  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslFunctions.cs : fixed line ending mixture.
+
+2005-02-03  Atsushi Enomoto <atsushi@ximian.com>
+
+       * ScriptCompilerInfo.cs : XsltCompileException->XsltException, just
+         to make test pass.
+
+2004-12-22  Atsushi Enomoto <atsushi@ximian.com>
+
+       * XslFunction.cs,
+         Compiler.cs : XmlResolver.ResolveUri() may return null.
+
+2004-12-01  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs : XPathNavigatorNsm needed more love. Clone() does not
+         make sense here.
+
+2004-12-01  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs : don't create XPathNavigatorNsm for every GetNsm() call.
+
+2004-11-26  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslKey.cs, XslStylesheet.cs, MSXslScriptManager.cs :
+         warning elimination.
+
+2004-11-24  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslStylesheet.cs : removed unused fields.
+       * XslOutput.cs : removed members for XSLT 2.0 (won't be implemented in
+         this class).
+
+2004-11-08  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs, XslTransformProcessor.cs :
+         when creating XmlTextReader, reuse XmlNameTable.
+
+2004-11-05  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs : Changes that reflects CompiledExpression changes.
+
+2004-10-04  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HtmlEmitter.cs : TH tag is not regarded as HTML tag.
+         This fixes bug #67390.
+
+Thu Sep 9 07:09:11 PDT 2004 Paolo Molaro <lupus@ximian.com>
+
+       * ScriptCompilerInfo.cs: avoid using a .cctor and fix precomp.
+
+2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Debug.cs, HtmlEmitter.cs, MSXslScriptManager.cs,
+         ScriptCompilerInfo.cs, XslFunctions.cs, XslTemplate.cs
+         : Globalization. Removed unused code.
+
+2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslKey.cs : Key-value search in absolute path search was 
+         insufficient.
+
+2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * HtmlEmitter.cs : Correct URL escape implementation.
+
+2004-06-06  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * XslTransformProcessor.cs : On document() function, close the 
+         XmlTextReader opened from uri string.
+
+2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * Compiler.cs,
+         GenericOutputter.cs : XmlNamespaceManager.LookupPrefix() allows only
+         atomized names. Fixed XPathNavigatorNsm.LookupNamespace() that 
+         should override another overload.
+
 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
 
        * ScriptCompilerInfo.cs: the name used to load the Microsoft.JScript