SVN commit 551458 by englich:
Move what's useful from kxslt/ into Patternist, and delete kxslt. These XSL-T functions aren't tested or run currently, but will at somepoint be when we start testing XSL-T. Changes involves alinging to recent Patternist changes.
M +4 -1 kdom/xpath/IDEAS
A kdom/xpath/environment/ExternalEnvironment.cpp kxslt/ProcessorInformation.cpp#551214 [License: LGPL (v2+) (wrong address)]
A kdom/xpath/environment/ExternalEnvironment.h kxslt/ProcessorInformation.h#551214 [License: LGPL (v2+) (wrong address)]
M +7 -5 kdom/xpath/environment/Makefile.am
A kdom/xpath/functions/FunctionAvailableFN.cpp kxslt/functions/FunctionAvailableFN.cpp#551215 [License: LGPL (wrong address)]
A kdom/xpath/functions/FunctionAvailableFN.h kxslt/functions/FunctionAvailableFN.h#551215 [License: LGPL (wrong address)]
M +7 -3 kdom/xpath/functions/Makefile.am
A kdom/xpath/functions/SystemPropertyFN.cpp kxslt/functions/SystemPropertyFN.cpp#551215 [License: LGPL (wrong address)]
A kdom/xpath/functions/SystemPropertyFN.h kxslt/functions/SystemPropertyFN.h#551215 [License: LGPL (wrong address)]
M +7 -6 kdom/xpath/functions/XPath20CoreFunctions.h
A kdom/xpath/functions/XSLT10CoreFunctions.cpp [License: LGPL]
A kdom/xpath/functions/XSLT10CoreFunctions.h [License: LGPL]
M +9 -0 kdom/xpath/utils/CommonNamespaces.h
D kxslt (directory)
--- trunk/kdenonbeta/kdom/xpath/IDEAS #551457:551458
@@ -444,7 +444,10 @@
* Do a "fuzzy search" and say "A function by name fo is not available; perhaps
you meant foo?"
- When raising XQST0034, informatively mention that XQuery doens't support function
- overloading,
+ overloading.
+ - Message for resolving QNames is duplicated all over. in XPathParser.ypp, CastExpression,
+ FunctionAvailableFN, and SystemPropertyFN, at least.
+
- When raising XQST0060, suggest the local prefix.
- When the Tokenizer encounters errors when parsing stuff like "empty-sequence" or "if", it
can lookup in the functions whether the user have written any function with such name,
--- trunk/kdenonbeta/kdom/xpath/environment/Makefile.am #551457:551458
@@ -29,12 +29,14 @@
noinst_LTLIBRARIES = libpatternistenvironment.la
libpatternistenvironment_la_SOURCES = InnerFocus.cpp OuterFocus.cpp \
DynamicContext.cpp StaticContext.cpp \
- ReportContext.cpp GenericStaticContext.cpp
-myincludedir = $(includedir)/kdom/xpath/environment
-myinclude_HEADERS = InnerFocus.h OuterFocus.h \
- DynamicContext.h StaticContext.h \
- ReportContext.h GenericStaticContext.h
+ ReportContext.cpp GenericStaticContext.cpp \
+ ExternalEnvironment.cpp
+noinst_HEADERS = InnerFocus.h OuterFocus.h \
+ DynamicContext.h StaticContext.h \
+ ReportContext.h GenericStaticContext.h \
+ ExternalEnvironment.h
+
# Generated ReportContext.h by invoking createReportContext.xsl, which
# in turns performs a transformation on the specs, fetched from w3c.org.
ReportContext:
--- trunk/kdenonbeta/kdom/xpath/functions/Makefile.am #551457:551458
@@ -22,7 +22,8 @@
-I$(top_srcdir)/kdom/xpath/data -I$(top_srcdir)/kdom/xpath/expr \
-I$(top_srcdir)/kdom/xpath -I$(top_srcdir)/kdom/xpath/utils \
-I$(top_srcdir)/kdom/xpath/type -I$(top_srcdir)/kdom/xpath/iterators \
- -I$(top_srcdir)/kdom/xpath/janitors $(all_includes)
+ -I$(top_srcdir)/kdom/xpath/janitors -I$(top_srcdir)/kdom/xpath/environment \
+ $(all_includes)
noinst_LTLIBRARIES = libpatternistfunctions.la
libpatternistfunctions_la_SOURCES = FunctionCall.cpp FunctionFactory.cpp \
@@ -39,7 +40,9 @@
DeepEqualFN.cpp PipingFN.cpp \
AggregatingFN.cpp AssembleStringFNs.cpp \
DateTimeFNs.cpp TimezoneFNs.cpp \
- PatternMatchingFNs.cpp PatternPlatform.cpp
+ PatternMatchingFNs.cpp PatternPlatform.cpp \
+ SystemPropertyFN.cpp FunctionAvailableFN.cpp \
+ XSLT10CoreFunctions.cpp
noinst_HEADERS = FunctionCall.h FunctionFactory.h \
XPath20CoreFunctions.h FunctionFactoryCollection.h \
@@ -56,5 +59,6 @@
AggregatingFN.h AssembleStringFNs.h \
DateTimeFNs.h TimezoneFNs.h \
Docs.h PatternMatchingFNs.h \
- PatternPlatform.h
+ PatternPlatform.h SystemPropertyFN.h \
+ FunctionAvailableFN.h XSLT10CoreFunctions.h
--- trunk/kdenonbeta/kdom/xpath/functions/XPath20CoreFunctions.h #551457:551458
@@ -28,28 +28,29 @@
{
/**
- * This function factory handles the functions defines in XQuery 1.0 and XPath 2.0
- * Function and Operators @em except those also available in XPath 1.0. All XPath 2.0
- * functions is the union of the functions available in XPath20CoreFunctions
+ * @short Handles the functions defines in XQuery 1.0 and XPath 2.0
+ * Function and Operators, except those also available in XPath 1.0.
+ *
+ * All XPath 2.0 functions is the union of the functions available in XPath20CoreFunctions
* and XPath10CoreFunctions. One could therefore say that the name XPath20CoreFunctions is a
* bit misleading.
*
* @note XPath20CoreFunctions inherits from XPath10CoreFunctions only for implementation
* reasons, it does not supply the functions in the XPath10CoreFunctions factory.
- * @ingroup Patternist_functions
+ *
* @see XPath10CoreFunctions
* @see XQuery 1.0
* and XPath 2.0 Functions and Operators
* @see XML Path Language (XPath)
* Version 1.0, 4 Core Function Library
* @author Frans Englich
- * @todo review docs
+ * @ingroup Patternist_functions
*/
class XPath20CoreFunctions : public XPath10CoreFunctions
{
public:
XPath20CoreFunctions();
-
+ protected:
virtual Expression::Ptr retrieveExpression(const QString &ln,
const Expression::List &args,
const FunctionSignature::Ptr &sign) const;
--- trunk/kdenonbeta/kdom/xpath/utils/CommonNamespaces.h #551457:551458
@@ -81,6 +81,15 @@
const QLatin1String XFN("http://www.w3.org/2005/xpath-functions");
/**
+ * The namespace for XSL-T 1.0 and 2.0.
+ *
+ * @see XSL
+ * Transformations (XSLT) Version 2.0, 3.1 XSLT Namespace
+ * @see XSL Transformations (XSLT) Version 1.0
+ */
+ const QLatin1String XSLT("http://www.w3.org/1999/XSL/Transform");
+
+ /**
* The namespace for identifying errors in XPath.
*
* @see XML Path Language (XPath)