You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2025/03/20 13:57:18 UTC

(commons-jxpath) branch master updated: Remove and enforce trailing whitespace

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-jxpath.git


The following commit(s) were added to refs/heads/master by this push:
     new e0a4be6  Remove and enforce trailing whitespace
e0a4be6 is described below

commit e0a4be69901b77e739d7addaea910b81c2c29749
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Thu Mar 20 09:57:12 2025 -0400

    Remove and enforce trailing whitespace
    
    Also Javadoc author tags
---
 checkstyle.xml                                     |  12 ++-
 .../org/apache/commons/jxpath/AbstractFactory.java |   2 +-
 .../org/apache/commons/jxpath/BasicNodeSet.java    |   8 +-
 .../org/apache/commons/jxpath/BasicVariables.java  |   2 +-
 .../org/apache/commons/jxpath/ClassFunctions.java  |   6 +-
 .../apache/commons/jxpath/CompiledExpression.java  |  20 ++--
 .../java/org/apache/commons/jxpath/Container.java  |   4 +-
 .../commons/jxpath/DynamicPropertyHandler.java     |   6 +-
 .../apache/commons/jxpath/ExceptionHandler.java    |   4 +-
 .../apache/commons/jxpath/ExpressionContext.java   |  12 +--
 .../apache/commons/jxpath/ExtendedKeyManager.java  |   4 +-
 .../java/org/apache/commons/jxpath/Functions.java  |   2 +-
 .../org/apache/commons/jxpath/IdentityManager.java |   2 +-
 .../jxpath/JXPathAbstractFactoryException.java     |   2 +-
 .../org/apache/commons/jxpath/JXPathContext.java   | 102 ++++++++++-----------
 .../commons/jxpath/JXPathContextFactory.java       |   4 +-
 .../jxpath/JXPathFunctionNotFoundException.java    |   2 +-
 .../apache/commons/jxpath/JXPathIntrospector.java  |  10 +-
 .../jxpath/JXPathInvalidAccessException.java       |   4 +-
 .../jxpath/JXPathInvalidSyntaxException.java       |   2 +-
 .../commons/jxpath/JXPathNotFoundException.java    |   2 +-
 .../jxpath/JXPathTypeConversionException.java      |   4 +-
 .../java/org/apache/commons/jxpath/NodeSet.java    |   6 +-
 .../apache/commons/jxpath/PackageFunctions.java    |   8 +-
 .../java/org/apache/commons/jxpath/Pointer.java    |  12 +--
 .../java/org/apache/commons/jxpath/Variables.java  |   6 +-
 .../jxpath/functions/ConstructorFunction.java      |   4 +-
 .../commons/jxpath/functions/MethodFunction.java   |   2 +-
 .../org/apache/commons/jxpath/ri/Compiler.java     |  10 +-
 .../org/apache/commons/jxpath/ri/EvalContext.java  |  34 +++----
 .../org/apache/commons/jxpath/ri/InfoSetUtil.java  |   8 +-
 .../jxpath/ri/JXPathCompiledExpression.java        |   6 +-
 .../jxpath/ri/JXPathContextReferenceImpl.java      |  60 ++++++------
 .../java/org/apache/commons/jxpath/ri/Parser.java  |   8 +-
 .../commons/jxpath/ri/axes/AncestorContext.java    |   2 +-
 .../commons/jxpath/ri/axes/AttributeContext.java   |   2 +-
 .../commons/jxpath/ri/axes/ChildContext.java       |   4 +-
 .../commons/jxpath/ri/axes/DescendantContext.java  |   4 +-
 .../commons/jxpath/ri/axes/InitialContext.java     |   2 +-
 .../commons/jxpath/ri/axes/NodeSetContext.java     |   2 +-
 .../commons/jxpath/ri/axes/ParentContext.java      |   2 +-
 .../ri/axes/PrecedingOrFollowingContext.java       |   2 +-
 .../commons/jxpath/ri/axes/PredicateContext.java   |   6 +-
 .../apache/commons/jxpath/ri/axes/RootContext.java |  14 +--
 .../apache/commons/jxpath/ri/axes/SelfContext.java |   2 +-
 .../jxpath/ri/axes/SimplePathInterpreter.java      |  46 +++++-----
 .../commons/jxpath/ri/axes/UnionContext.java       |   2 +-
 .../commons/jxpath/ri/compiler/Constant.java       |   8 +-
 .../commons/jxpath/ri/compiler/CoreFunction.java   |  82 ++++++++---------
 .../commons/jxpath/ri/compiler/CoreOperation.java  |  10 +-
 .../jxpath/ri/compiler/CoreOperationAdd.java       |   2 +-
 .../jxpath/ri/compiler/CoreOperationAnd.java       |   2 +-
 .../jxpath/ri/compiler/CoreOperationCompare.java   |  12 +--
 .../jxpath/ri/compiler/CoreOperationDivide.java    |   2 +-
 .../jxpath/ri/compiler/CoreOperationEqual.java     |   2 +-
 .../ri/compiler/CoreOperationGreaterThan.java      |   2 +-
 .../compiler/CoreOperationGreaterThanOrEqual.java  |   2 +-
 .../jxpath/ri/compiler/CoreOperationLessThan.java  |   2 +-
 .../ri/compiler/CoreOperationLessThanOrEqual.java  |   2 +-
 .../jxpath/ri/compiler/CoreOperationMod.java       |   2 +-
 .../jxpath/ri/compiler/CoreOperationMultiply.java  |   2 +-
 .../jxpath/ri/compiler/CoreOperationNegate.java    |   2 +-
 .../jxpath/ri/compiler/CoreOperationNotEqual.java  |   2 +-
 .../jxpath/ri/compiler/CoreOperationOr.java        |   2 +-
 .../CoreOperationRelationalExpression.java         |  16 ++--
 .../jxpath/ri/compiler/CoreOperationSubtract.java  |   2 +-
 .../jxpath/ri/compiler/CoreOperationUnion.java     |   2 +-
 .../commons/jxpath/ri/compiler/Expression.java     |  16 ++--
 .../commons/jxpath/ri/compiler/ExpressionPath.java |  12 +--
 .../jxpath/ri/compiler/ExtensionFunction.java      |   8 +-
 .../commons/jxpath/ri/compiler/LocationPath.java   |   4 +-
 .../jxpath/ri/compiler/NameAttributeTest.java      |   4 +-
 .../commons/jxpath/ri/compiler/NodeNameTest.java   |  10 +-
 .../commons/jxpath/ri/compiler/NodeTest.java       |   2 +-
 .../commons/jxpath/ri/compiler/NodeTypeTest.java   |   6 +-
 .../commons/jxpath/ri/compiler/Operation.java      |   4 +-
 .../apache/commons/jxpath/ri/compiler/Path.java    |  20 ++--
 .../ri/compiler/ProcessingInstructionTest.java     |   4 +-
 .../apache/commons/jxpath/ri/compiler/Step.java    |  12 +--
 .../commons/jxpath/ri/compiler/TreeCompiler.java   |   6 +-
 .../jxpath/ri/compiler/VariableReference.java      |   6 +-
 .../commons/jxpath/ri/model/NodeIterator.java      |   6 +-
 .../jxpath/ri/model/NodePointerFactory.java        |   2 +-
 .../jxpath/ri/model/VariablePointerFactory.java    |   6 +-
 .../ri/model/beans/BeanAttributeIterator.java      |   2 +-
 .../commons/jxpath/ri/model/beans/BeanPointer.java |  14 +--
 .../jxpath/ri/model/beans/BeanPointerFactory.java  |   2 +-
 .../beans/CollectionAttributeNodeIterator.java     |   2 +-
 .../model/beans/CollectionChildNodeIterator.java   |   2 +-
 .../ri/model/beans/CollectionNodeIterator.java     |   6 +-
 .../ri/model/beans/LangAttributePointer.java       |   4 +-
 .../jxpath/ri/model/beans/NullElementPointer.java  |   4 +-
 .../jxpath/ri/model/beans/PropertyIterator.java    |  12 +--
 .../jxpath/ri/model/dom/DOMAttributeIterator.java  |   8 +-
 .../jxpath/ri/model/dom/DOMAttributePointer.java   |   6 +-
 .../jxpath/ri/model/dom/DOMNamespaceIterator.java  |   6 +-
 .../jxpath/ri/model/dom/DOMNodeIterator.java       |   8 +-
 .../ri/model/dynamic/DynamicAttributeIterator.java |   2 +-
 .../ri/model/dynamic/DynamicPropertyIterator.java  |   2 +-
 .../ri/model/jdom/JDOMAttributeIterator.java       |   4 +-
 .../ri/model/jdom/JDOMNamespaceIterator.java       |   8 +-
 .../jxpath/ri/model/jdom/JDOMNodeIterator.java     |   8 +-
 .../commons/jxpath/ri/parser/XPathParser.java      |  10 +-
 .../apache/commons/jxpath/servlet/Constants.java   |   2 +-
 .../servlet/HttpSessionAndServletContext.java      |   6 +-
 .../jxpath/servlet/JXPathServletContexts.java      |  10 +-
 .../commons/jxpath/servlet/KeywordVariables.java   |   4 +-
 .../commons/jxpath/servlet/PageContextHandler.java |   2 +-
 .../commons/jxpath/servlet/PageScopeContext.java   |   8 +-
 .../jxpath/servlet/ServletContextHandler.java      |   4 +-
 .../commons/jxpath/util/BasicTypeConverter.java    |  26 +++---
 .../commons/jxpath/util/KeyManagerUtils.java       |   8 +-
 .../commons/jxpath/util/MethodLookupUtils.java     |  12 +--
 .../apache/commons/jxpath/util/TypeConverter.java  |   4 +-
 .../org/apache/commons/jxpath/util/TypeUtils.java  |  10 +-
 .../org/apache/commons/jxpath/util/ValueUtils.java |  36 ++++----
 .../org/apache/commons/jxpath/xml/XMLParser.java   |   2 +-
 .../org/apache/commons/jxpath/xml/XMLParser2.java  |  26 +++---
 .../apache/commons/jxpath/BasicNodeSetTest.java    |   4 +-
 119 files changed, 520 insertions(+), 510 deletions(-)

diff --git a/checkstyle.xml b/checkstyle.xml
index 246a3b2..8509051 100644
--- a/checkstyle.xml
+++ b/checkstyle.xml
@@ -43,7 +43,17 @@
   <!-- See http://checkstyle.sf.net/config_sizes.html -->
   <module name="FileLength" />
   <module name="FileTabCharacterCheck" />
-
+  <module name="RegexpSingleline">
+    <property name="format" value="^\s+\*\s+@author\s" />
+    <property name="message" value="Deprecated @author tag" />
+    <property name="fileExtensions" value="java" />
+    <property name="severity" value="warning" />
+  </module>
+  <module name="RegexpSingleline">
+    <!-- \s matches whitespace character, $ matches end of line. -->
+    <property name="format" value="\s+$"/>
+    <property name="message" value="Line has trailing spaces."/>
+  </module>
   <module name="TreeWalker">
     <module name="ExplicitInitialization" />
     <!--property name="cacheFile" value="${checkstyle.cache.file}"/ -->
diff --git a/src/main/java/org/apache/commons/jxpath/AbstractFactory.java b/src/main/java/org/apache/commons/jxpath/AbstractFactory.java
index 3e629c7..19d74af 100644
--- a/src/main/java/org/apache/commons/jxpath/AbstractFactory.java
+++ b/src/main/java/org/apache/commons/jxpath/AbstractFactory.java
@@ -26,7 +26,7 @@ package org.apache.commons.jxpath;
  */
 public abstract class AbstractFactory {
 
-    
+
     /**
      * Constructs a new instance for subclasses.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/BasicNodeSet.java b/src/main/java/org/apache/commons/jxpath/BasicNodeSet.java
index b205b87..48754bc 100644
--- a/src/main/java/org/apache/commons/jxpath/BasicNodeSet.java
+++ b/src/main/java/org/apache/commons/jxpath/BasicNodeSet.java
@@ -31,7 +31,7 @@ public class BasicNodeSet implements NodeSet {
     private List<Pointer> readOnlyPointers;
     private List nodes;
     private List values;
-    
+
     /**
      * Constructs a new instance.
      */
@@ -41,7 +41,7 @@ public class BasicNodeSet implements NodeSet {
 
     /**
      * Add the specified NodeSet to this NodeSet.
-     * 
+     *
      * @param nodeSet to add
      */
     public void add(final NodeSet nodeSet) {
@@ -52,7 +52,7 @@ public class BasicNodeSet implements NodeSet {
 
     /**
      * Add a pointer to this NodeSet.
-     * 
+     *
      * @param pointer to add
      */
     public void add(final Pointer pointer) {
@@ -96,7 +96,7 @@ public class BasicNodeSet implements NodeSet {
 
     /**
      * Remove a pointer from this NodeSet.
-     * 
+     *
      * @param pointer to remove
      */
     public void remove(final Pointer pointer) {
diff --git a/src/main/java/org/apache/commons/jxpath/BasicVariables.java b/src/main/java/org/apache/commons/jxpath/BasicVariables.java
index 4358314..6f3073a 100644
--- a/src/main/java/org/apache/commons/jxpath/BasicVariables.java
+++ b/src/main/java/org/apache/commons/jxpath/BasicVariables.java
@@ -30,7 +30,7 @@ public class BasicVariables implements Variables {
      * Contains the values of declared variables
      */
     private final HashMap vars = new HashMap();
-    
+
     /**
      * Constructs a new instance.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ClassFunctions.java b/src/main/java/org/apache/commons/jxpath/ClassFunctions.java
index 265a309..16386e0 100644
--- a/src/main/java/org/apache/commons/jxpath/ClassFunctions.java
+++ b/src/main/java/org/apache/commons/jxpath/ClassFunctions.java
@@ -30,11 +30,11 @@ import org.apache.commons.jxpath.util.MethodLookupUtils;
  * Extension functions provided by a Java class.
  *
  * Let's say we declared a ClassFunction like this: <blockquote>
- * 
+ *
  * <pre>
  * new ClassFunctions(Integer.class, "int")
  * </pre>
- * 
+ *
  * </blockquote>
  *
  * We can now use XPaths like:
@@ -58,7 +58,7 @@ public class ClassFunctions implements Functions {
 
     /**
      * Constructs a new ClassFunctions.
-     * 
+     *
      * @param functionClass Class providing the functions
      * @param namespace     assigned ns
      */
diff --git a/src/main/java/org/apache/commons/jxpath/CompiledExpression.java b/src/main/java/org/apache/commons/jxpath/CompiledExpression.java
index e7ca859..abe94f7 100644
--- a/src/main/java/org/apache/commons/jxpath/CompiledExpression.java
+++ b/src/main/java/org/apache/commons/jxpath/CompiledExpression.java
@@ -33,7 +33,7 @@ public interface CompiledExpression {
     /**
      * Creates intermediate elements of the path by invoking an {@link AbstractFactory}, which should first be installed on the context by calling
      * {@link JXPathContext#setFactory}.
-     * 
+     *
      * @param context base
      * @return Pointer created
      */
@@ -49,7 +49,7 @@ public interface CompiledExpression {
      * <li>The AbstractFactory fails to create an instance for an intermediate element.
      * <li>The property is not writable (no public, non-static set method)
      * </ul>
-     * 
+     *
      * @param context base
      * @param value   to set
      * @return Pointer created
@@ -59,7 +59,7 @@ public interface CompiledExpression {
     /**
      * Traverses the xpath and returns a Pointer. A Pointer provides easy access to a property. If the xpath matches no properties in the graph, the pointer
      * will be null.
-     * 
+     *
      * @param context base
      * @param xpath   string
      * @return Pointer found
@@ -68,7 +68,7 @@ public interface CompiledExpression {
 
     /**
      * Evaluates the xpath and returns the resulting object. Primitive types are wrapped into objects.
-     * 
+     *
      * @param context to evaluate
      * @return Object
      */
@@ -76,7 +76,7 @@ public interface CompiledExpression {
 
     /**
      * Evaluates the xpath, converts the result to the specified class and returns the resulting object.
-     * 
+     *
      * @param context      to evaluate
      * @param requiredType return type
      * @return Object
@@ -86,7 +86,7 @@ public interface CompiledExpression {
     /**
      * Traverses the xpath and returns a Iterator of all results found for the path. If the xpath matches no properties in the graph, the Iterator will not be
      * null.
-     * 
+     *
      * @param context base
      * @return Iterator
      */
@@ -95,7 +95,7 @@ public interface CompiledExpression {
     /**
      * Traverses the xpath and returns an Iterator of Pointers. A Pointer provides easy access to a property. If the xpath matches no properties in the graph,
      * the Iterator be empty, but not null.
-     * 
+     *
      * @param context to iterate
      * @return Iterator
      */
@@ -103,14 +103,14 @@ public interface CompiledExpression {
 
     /**
      * Remove all graph elements described by this expression.
-     * 
+     *
      * @param context base
      */
     void removeAll(JXPathContext context);
 
     /**
      * Remove the graph element described by this expression.
-     * 
+     *
      * @param context base
      */
     void removePath(JXPathContext context);
@@ -121,7 +121,7 @@ public interface CompiledExpression {
      * <li>The xpath does not in fact describe an existing property
      * <li>The property is not writable (no public, non-static set method)
      * </ul>
-     * 
+     *
      * @param context base
      * @param value   to set
      */
diff --git a/src/main/java/org/apache/commons/jxpath/Container.java b/src/main/java/org/apache/commons/jxpath/Container.java
index 025216b..763cfe0 100644
--- a/src/main/java/org/apache/commons/jxpath/Container.java
+++ b/src/main/java/org/apache/commons/jxpath/Container.java
@@ -27,14 +27,14 @@ public interface Container extends Serializable {
 
     /**
      * Returns the contained value.
-     * 
+     *
      * @return Object value
      */
     Object getValue();
 
     /**
      * Modifies the value contained by this container. May throw UnsupportedOperationException.
-     * 
+     *
      * @param value Object value to set.
      */
     void setValue(Object value);
diff --git a/src/main/java/org/apache/commons/jxpath/DynamicPropertyHandler.java b/src/main/java/org/apache/commons/jxpath/DynamicPropertyHandler.java
index c82bd55..2cdcfb0 100644
--- a/src/main/java/org/apache/commons/jxpath/DynamicPropertyHandler.java
+++ b/src/main/java/org/apache/commons/jxpath/DynamicPropertyHandler.java
@@ -35,7 +35,7 @@ public interface DynamicPropertyHandler {
 
     /**
      * Returns the value of the specified dynamic property.
-     * 
+     *
      * @param object       to search
      * @param propertyName to retrieve
      * @return Object
@@ -44,7 +44,7 @@ public interface DynamicPropertyHandler {
 
     /**
      * Returns a list of dynamic property names for the supplied object.
-     * 
+     *
      * @param object to inspect
      * @return String[]
      */
@@ -52,7 +52,7 @@ public interface DynamicPropertyHandler {
 
     /**
      * Modifies the value of the specified dynamic property.
-     * 
+     *
      * @param object       to modify
      * @param propertyName to modify
      * @param value        to set
diff --git a/src/main/java/org/apache/commons/jxpath/ExceptionHandler.java b/src/main/java/org/apache/commons/jxpath/ExceptionHandler.java
index 75f572b..3cae709 100644
--- a/src/main/java/org/apache/commons/jxpath/ExceptionHandler.java
+++ b/src/main/java/org/apache/commons/jxpath/ExceptionHandler.java
@@ -19,14 +19,14 @@ package org.apache.commons.jxpath;
 
 /**
  * Exception handler interface. Actually handles Throwables.
- * 
+ *
  * @since 1.4
  */
 public interface ExceptionHandler {
 
     /**
      * Handle an encountered Throwable.
-     * 
+     *
      * @param t   to handle
      * @param ptr specific context
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ExpressionContext.java b/src/main/java/org/apache/commons/jxpath/ExpressionContext.java
index 2360ea7..470c2c0 100644
--- a/src/main/java/org/apache/commons/jxpath/ExpressionContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ExpressionContext.java
@@ -23,10 +23,10 @@ import java.util.List;
  * If an extenstion function has an argument of type ExpressionContext, it can gain access to the current node of an XPath expression context.
  * <p>
  * Example: <blockquote>
- * 
+ *
  * <pre>
  * public class MyExtenstionFunctions {
- * 
+ *
  *     public static String objectType(ExpressionContext context) {
  *         Object value = context.getContextNodePointer().getValue();
  *         if (value == null) {
@@ -36,15 +36,15 @@ import java.util.List;
  *     }
  * }
  * </pre>
- * 
+ *
  * </blockquote>
  *
  * You can then register this extension function using a {@link ClassFunctions ClassFunctions} object and call it like this: <blockquote>
- * 
+ *
  * <pre>
  * "/descendent-or-self::node()[ns:objectType() = 'java.util.Date']"
  * </pre>
- * 
+ *
  * </blockquote> This expression will find all nodes of the graph that are dates.
  */
 public interface ExpressionContext {
@@ -72,7 +72,7 @@ public interface ExpressionContext {
 
     /**
      * Returns the current context position.
-     * 
+     *
      * @return int
      */
     int getPosition();
diff --git a/src/main/java/org/apache/commons/jxpath/ExtendedKeyManager.java b/src/main/java/org/apache/commons/jxpath/ExtendedKeyManager.java
index 675c9ef..115212b 100644
--- a/src/main/java/org/apache/commons/jxpath/ExtendedKeyManager.java
+++ b/src/main/java/org/apache/commons/jxpath/ExtendedKeyManager.java
@@ -20,14 +20,14 @@ package org.apache.commons.jxpath;
 /**
  * More complete implementation for the XPath {@code "key()"} function. Returns NodeSet results and allows Object values for better compatibility with non-XML
  * graphs.
- * 
+ *
  * @since JXPath 1.3
  */
 public interface ExtendedKeyManager extends KeyManager {
 
     /**
      * Find a NodeSet by key/value.
-     * 
+     *
      * @param context base
      * @param key     String
      * @param value   Object
diff --git a/src/main/java/org/apache/commons/jxpath/Functions.java b/src/main/java/org/apache/commons/jxpath/Functions.java
index c55d733..ddc7fc2 100644
--- a/src/main/java/org/apache/commons/jxpath/Functions.java
+++ b/src/main/java/org/apache/commons/jxpath/Functions.java
@@ -27,7 +27,7 @@ public interface Functions {
 
     /**
      * Gets a Function, if any, for the specified namespace, name and parameter types.
-     * 
+     *
      * @param namespace  ns
      * @param name       function name
      * @param parameters Object[]
diff --git a/src/main/java/org/apache/commons/jxpath/IdentityManager.java b/src/main/java/org/apache/commons/jxpath/IdentityManager.java
index b0efbd2..9f754e9 100644
--- a/src/main/java/org/apache/commons/jxpath/IdentityManager.java
+++ b/src/main/java/org/apache/commons/jxpath/IdentityManager.java
@@ -25,7 +25,7 @@ public interface IdentityManager {
 
     /**
      * Finds a node by its ID.
-     * 
+     *
      * @param context JXPathContext
      * @param id      String
      * @return Pointer
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathAbstractFactoryException.java b/src/main/java/org/apache/commons/jxpath/JXPathAbstractFactoryException.java
index 8ccb779..007ee45 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathAbstractFactoryException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathAbstractFactoryException.java
@@ -26,7 +26,7 @@ public class JXPathAbstractFactoryException extends JXPathException {
 
     /**
      * Constructs a new JXPathAbstractFactoryException.
-     * 
+     *
      * @param message exception message
      */
     public JXPathAbstractFactoryException(final String message) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathContext.java b/src/main/java/org/apache/commons/jxpath/JXPathContext.java
index 1f6d5c7..16a8519 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathContext.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathContext.java
@@ -85,9 +85,9 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  * <p>
  * A property identified by the xpath does not have to be a "leaf" property. For instance, we can extract the whole Address object in above example:
  * </p>
- * 
+ *
  * <pre>
- * 
+ *
  * Address addr = (Address) context.getValue("homeAddress");
  * </pre>
  *
@@ -106,7 +106,7 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  * JXPathContext context = JXPathContext.newContext(ints);
  * Integer thirdInt = (Integer)context.getValue("numbers[3]");
  * </pre>
- * 
+ *
  * A collection can be an arbitrary array or an instance of java.util. Collection.
  * <p>
  * Note: in XPath the first element of a collection has index 1, not 0.<br>
@@ -139,7 +139,7 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  * Often you will need to use the alternative syntax for accessing Map elements:
  *
  * <pre>
- * 
+ *
  * String homeZipCode = (String) context.getValue("addresses[@name='home']/zipCode");
  * </pre>
  *
@@ -241,7 +241,7 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  *
  * <p>
  * When a variable contains a JavaBean or a collection, you can traverse the bean or collection as well:
- * 
+ *
  * <pre>
  * ...
  * context.getVariables().declareVariable("book", myBook);
@@ -272,33 +272,33 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  * and create objects using any constructor. The class names should be fully qualified.
  * <p>
  * Here's how you can create new objects:
- * 
+ *
  * <pre>
- * 
+ *
  * Book book = (Book) context.getValue("org.apache.commons.jxpath.example.Book.new ('John Updike')");
  * </pre>
  *
  * Here's how you can call static methods:
- * 
+ *
  * <pre>
- * 
+ *
  * Book book = (Book) context.getValue("org. apache.commons.jxpath.example.Book.getBestBook('John Updike')");
  * </pre>
  *
  * Here's how you can call regular methods:
- * 
+ *
  * <pre>
- * 
+ *
  * String firstName = (String) context.getValue("getAuthorsFirstName($book)");
  * </pre>
- * 
+ *
  * As you can see, the target of the method is specified as the first parameter of the function.
  *
  * <h3>Example 11: Using Custom Extension Functions</h3> Collections of custom extension functions can be implemented as {@link Functions Functions} objects or
  * as Java classes, whose methods become extenstion functions.
  * <p>
  * Let's say the following class implements various formatting operations:
- * 
+ *
  * <pre>
  * public class Formats {
  *    public static String date(Date d, String pattern){
@@ -318,7 +318,7 @@ import org.apache.commons.jxpath.util.KeyManagerUtils;
  * String today = (String)context.getValue("format:date($today, 'MM/dd/yyyy')");
  *
  * </pre>
- * 
+ *
  * You can also register whole packages of Java classes using PackageFunctions.
  * <p>
  * Also, see {@link FunctionLibrary FunctionLibrary}, which is a class that allows you to register multiple sets of extension functions with the same
@@ -366,7 +366,7 @@ public abstract class JXPathContext {
     /**
      * Compiles the supplied XPath and returns an internal representation of the path that can then be evaluated. Use CompiledExpressions when you need to
      * evaluate the same expression multiple times and there is a convenient place to cache CompiledExpression between invocations.
-     * 
+     *
      * @param xpath to compile
      * @return CompiledExpression
      */
@@ -379,7 +379,7 @@ public abstract class JXPathContext {
 
     /**
      * Acquires a context factory and caches it.
-     * 
+     *
      * @return JXPathContextFactory
      */
     private static JXPathContextFactory getContextFactory() {
@@ -392,7 +392,7 @@ public abstract class JXPathContext {
     /**
      * Creates a new JXPathContext with the specified bean as the root node and the specified parent context. Variables defined in a parent context can be
      * referenced in XPaths passed to the child context.
-     * 
+     *
      * @param parentContext parent context
      * @param contextBean   Object
      * @return JXPathContext
@@ -403,7 +403,7 @@ public abstract class JXPathContext {
 
     /**
      * Creates a new JXPathContext with the specified object as the root node.
-     * 
+     *
      * @param contextBean Object
      * @return JXPathContext
      */
@@ -433,7 +433,7 @@ public abstract class JXPathContext {
 
     /**
      * This constructor should remain protected - it is to be overridden by subclasses, but never explicitly invoked by clients.
-     * 
+     *
      * @param parentContext parent context
      * @param contextBean   Object
      */
@@ -444,7 +444,7 @@ public abstract class JXPathContext {
 
     /**
      * Overridden by each concrete implementation of JXPathContext to perform compilation. Is called by {@code compile()}.
-     * 
+     *
      * @param xpath to compile
      * @return CompiledExpression
      */
@@ -455,7 +455,7 @@ public abstract class JXPathContext {
      * {@link #setFactory}.
      * <p>
      * Will throw an exception if the AbstractFactory fails to create an instance for a path element.
-     * 
+     *
      * @param xpath indicating destination to create
      * @return pointer to new location
      */
@@ -471,7 +471,7 @@ public abstract class JXPathContext {
      * <li>The AbstractFactory fails to create an instance for an intermediate element.
      * <li>The property is not writable (no public, non-static set method)
      * </ul>
-     * 
+     *
      * @param xpath indicating position to create
      * @param value to set
      * @return pointer to new location
@@ -480,7 +480,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns the JavaBean associated with this context.
-     * 
+     *
      * @return Object
      */
     public Object getContextBean() {
@@ -489,14 +489,14 @@ public abstract class JXPathContext {
 
     /**
      * Returns a Pointer for the context bean.
-     * 
+     *
      * @return Pointer
      */
     public abstract Pointer getContextPointer();
 
     /**
      * Gets the named DecimalFormatSymbols.
-     * 
+     *
      * @param name key
      * @return DecimalFormatSymbols
      * @see #setDecimalFormatSymbols(String, DecimalFormatSymbols)
@@ -511,7 +511,7 @@ public abstract class JXPathContext {
     /**
      * Returns the AbstractFactory installed on this context. If none has been installed and this context has a parent context, returns the parent's factory.
      * Otherwise returns null.
-     * 
+     *
      * @return AbstractFactory
      */
     public AbstractFactory getFactory() {
@@ -523,7 +523,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns the set of functions installed on the context.
-     * 
+     *
      * @return Functions
      */
     public Functions getFunctions() {
@@ -538,7 +538,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns this context's identity manager. If none has been installed, returns the identity manager of the parent context.
-     * 
+     *
      * @return IdentityManager
      */
     public IdentityManager getIdentityManager() {
@@ -550,7 +550,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns this context's key manager. If none has been installed, returns the key manager of the parent context.
-     * 
+     *
      * @return KeyManager
      */
     public KeyManager getKeyManager() {
@@ -562,7 +562,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns the locale set with setLocale. If none was set and the context has a parent, returns the parent's locale. Otherwise, returns Locale.getDefault().
-     * 
+     *
      * @return Locale
      */
     public synchronized Locale getLocale() {
@@ -598,7 +598,7 @@ public abstract class JXPathContext {
 
     /**
      * Locates a NodeSet by key/value.
-     * 
+     *
      * @param key   string
      * @param value object
      * @return NodeSet found
@@ -613,7 +613,7 @@ public abstract class JXPathContext {
 
     /**
      * Returns the parent context of this context or null.
-     * 
+     *
      * @return JXPathContext
      */
     public JXPathContext getParentContext() {
@@ -653,7 +653,7 @@ public abstract class JXPathContext {
 
     /**
      * Locates a Node by a key value.
-     * 
+     *
      * @param key   string
      * @param value string
      * @return Pointer found
@@ -668,7 +668,7 @@ public abstract class JXPathContext {
 
     /**
      * Gets the prefix associated with the specifed namespace URI.
-     * 
+     *
      * @param namespaceURI the ns URI to check.
      * @return String prefix
      * @since JXPath 1.3
@@ -680,7 +680,7 @@ public abstract class JXPathContext {
     /**
      * Returns a JXPathContext that is relative to the current JXPathContext. The supplied pointer becomes the context pointer of the new context. The relative
      * context inherits variables, extension functions, locale etc from the parent context.
-     * 
+     *
      * @param pointer Pointer
      * @return JXPathContext
      */
@@ -688,7 +688,7 @@ public abstract class JXPathContext {
 
     /**
      * Evaluates the xpath and returns the resulting object. Primitive types are wrapped into objects.
-     * 
+     *
      * @param xpath to evaluate
      * @return Object found
      */
@@ -696,7 +696,7 @@ public abstract class JXPathContext {
 
     /**
      * Evaluates the xpath, converts the result to the specified class and returns the resulting object.
-     * 
+     *
      * @param xpath        to evaluate
      * @param requiredType required type
      * @return Object found
@@ -706,7 +706,7 @@ public abstract class JXPathContext {
     /**
      * Returns the variable pool associated with the context. If no such pool was specified with the {@link #setVariables} method, returns the default
      * implementation of Variables, {@link BasicVariables BasicVariables}.
-     * 
+     *
      * @return Variables
      */
     public Variables getVariables() {
@@ -718,7 +718,7 @@ public abstract class JXPathContext {
 
     /**
      * Learn whether this JXPathContext is lenient.
-     * 
+     *
      * @return boolean
      * @see #setLenient(boolean)
      */
@@ -742,7 +742,7 @@ public abstract class JXPathContext {
     /**
      * Traverses the xpath and returns an Iterator of Pointers. A Pointer provides easy access to a property. If the xpath matches no properties in the graph,
      * the Iterator be empty, but not null.
-     * 
+     *
      * @param xpath to iterate
      * @return Iterator
      */
@@ -760,14 +760,14 @@ public abstract class JXPathContext {
 
     /**
      * Removes all elements of the object graph described by the xpath.
-     * 
+     *
      * @param xpath indicating positions to remove
      */
     public abstract void removeAll(String xpath);
 
     /**
      * Removes the element of the object graph described by the xpath.
-     * 
+     *
      * @param xpath indicating position to remove
      */
     public abstract void removePath(String xpath);
@@ -817,7 +817,7 @@ public abstract class JXPathContext {
 
     /**
      * Sets the ExceptionHandler used by this context, if any.
-     * 
+     *
      * @param exceptionHandler to set
      * @since 1.4
      */
@@ -827,7 +827,7 @@ public abstract class JXPathContext {
 
     /**
      * Install an abstract factory that should be used by the {@code createPath()} and {@code createPathAndSetValue()} methods.
-     * 
+     *
      * @param factory AbstractFactory
      */
     public void setFactory(final AbstractFactory factory) {
@@ -836,7 +836,7 @@ public abstract class JXPathContext {
 
     /**
      * Install a library of extension functions.
-     * 
+     *
      * @param functions Functions
      * @see FunctionLibrary
      */
@@ -846,7 +846,7 @@ public abstract class JXPathContext {
 
     /**
      * Install an identity manager that will be used by the context to look up a node by its ID.
-     * 
+     *
      * @param idManager IdentityManager to set
      */
     public void setIdentityManager(final IdentityManager idManager) {
@@ -855,7 +855,7 @@ public abstract class JXPathContext {
 
     /**
      * Install a key manager that will be used by the context to look up a node by a key value.
-     * 
+     *
      * @param keyManager KeyManager
      */
     public void setKeyManager(final KeyManager keyManager) {
@@ -867,7 +867,7 @@ public abstract class JXPathContext {
      * will throw an exception. Note that if the property exists, but its value is null, the exception is <em>not</em> thrown.
      * <p>
      * By default, lenient = false
-     * 
+     *
      * @param lenient flag
      */
     public synchronized void setLenient(final boolean lenient) {
@@ -878,7 +878,7 @@ public abstract class JXPathContext {
     /**
      * Sets the locale for this context. The value of the "lang" attribute as well as the lang() function will be affected by the locale. By default, JXPath
      * uses {@code Locale.getDefault()}
-     * 
+     *
      * @param locale Locale
      */
     public synchronized void setLocale(final Locale locale) {
@@ -901,7 +901,7 @@ public abstract class JXPathContext {
      * <li>The xpath does not in fact describe an existing property
      * <li>The property is not writable (no public, non-static set method)
      * </ul>
-     * 
+     *
      * @param xpath indicating position
      * @param value to set
      */
@@ -909,7 +909,7 @@ public abstract class JXPathContext {
 
     /**
      * Installs a custom implementation of the Variables interface.
-     * 
+     *
      * @param vars Variables
      */
     public void setVariables(final Variables vars) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathContextFactory.java b/src/main/java/org/apache/commons/jxpath/JXPathContextFactory.java
index c999848..ccb234f 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathContextFactory.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathContextFactory.java
@@ -61,7 +61,7 @@ public abstract class JXPathContextFactory {
 
     /**
      * Private implementation method - will find the implementation class in the specified order.
-     * 
+     *
      * @param property       Property name
      * @param defaultFactory Default implementation, if nothing else is found
      * @return class name of the JXPathContextFactory
@@ -191,7 +191,7 @@ public abstract class JXPathContextFactory {
 
     /**
      * Creates a new instance of a JXPathContext using the currently configured parameters.
-     * 
+     *
      * @param parentContext parent context
      * @param contextBean   Object bean
      * @return JXPathContext
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathFunctionNotFoundException.java b/src/main/java/org/apache/commons/jxpath/JXPathFunctionNotFoundException.java
index a225ba9..c9fb3cf 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathFunctionNotFoundException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathFunctionNotFoundException.java
@@ -26,7 +26,7 @@ public class JXPathFunctionNotFoundException extends JXPathException {
 
     /**
      * Constructs a new JXPathFunctionNotFoundException.
-     * 
+     *
      * @param message exception message
      */
     public JXPathFunctionNotFoundException(final String message) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathIntrospector.java b/src/main/java/org/apache/commons/jxpath/JXPathIntrospector.java
index b01dde2..7e5176f 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathIntrospector.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathIntrospector.java
@@ -59,7 +59,7 @@ public class JXPathIntrospector {
 
     /**
      * Find a dynamic bean info if available for any superclasses or interfaces.
-     * 
+     *
      * @param beanClass to search for
      * @return JXPathBeanInfo
      */
@@ -94,7 +94,7 @@ public class JXPathIntrospector {
     /**
      * find a JXPathBeanInfo instance for the specified class. Similar to javax.beans property handler discovery; search for a class with "XBeanInfo" appended
      * to beanClass.name, then check whether beanClass implements JXPathBeanInfo for itself. Invokes the default constructor for any class it finds.
-     * 
+     *
      * @param beanClass for which to look for an info provider
      * @return JXPathBeanInfo instance or null if none found
      */
@@ -125,7 +125,7 @@ public class JXPathIntrospector {
      * <li>If class named {@code <beanClass>XBeanInfo} exists, an instance of that class is allocated.
      * <li>Otherwise, an instance of {@link JXPathBasicBeanInfo JXPathBasicBeanInfo} is allocated.
      * </ul>
-     * 
+     *
      * @param beanClass whose info to get
      * @return JXPathBeanInfo
      */
@@ -148,7 +148,7 @@ public class JXPathIntrospector {
 
     /**
      * Try to create an instance of a named class. First try the classloader of "sibling", then try the system classloader.
-     * 
+     *
      * @param sibling   Class
      * @param className to instantiate
      * @return new Object
@@ -172,7 +172,7 @@ public class JXPathIntrospector {
 
     /**
      * Automatically creates and registers a JXPathBeanInfo object for the specified class. That object returns true to isAtomic().
-     * 
+     *
      * @param beanClass to register
      */
     public static void registerAtomicClass(final Class beanClass) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathInvalidAccessException.java b/src/main/java/org/apache/commons/jxpath/JXPathInvalidAccessException.java
index f0d6bc5..f9a5182 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathInvalidAccessException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathInvalidAccessException.java
@@ -27,7 +27,7 @@ public class JXPathInvalidAccessException extends JXPathException {
 
     /**
      * Constructs a new JXPathInvalidAccessException.
-     * 
+     *
      * @param message exception message
      */
     public JXPathInvalidAccessException(final String message) {
@@ -36,7 +36,7 @@ public class JXPathInvalidAccessException extends JXPathException {
 
     /**
      * Constructs a new JXPathInvalidAccessException.
-     * 
+     *
      * @param message exception message
      * @param ex      precipitating exception
      */
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathInvalidSyntaxException.java b/src/main/java/org/apache/commons/jxpath/JXPathInvalidSyntaxException.java
index 9393b17..6f25a7a 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathInvalidSyntaxException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathInvalidSyntaxException.java
@@ -26,7 +26,7 @@ public class JXPathInvalidSyntaxException extends JXPathException {
 
     /**
      * Constructs a new JXPathInvalidSyntaxException.
-     * 
+     *
      * @param message relevant message
      */
     public JXPathInvalidSyntaxException(final String message) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathNotFoundException.java b/src/main/java/org/apache/commons/jxpath/JXPathNotFoundException.java
index 0db4140..b712fdc 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathNotFoundException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathNotFoundException.java
@@ -26,7 +26,7 @@ public class JXPathNotFoundException extends JXPathException {
 
     /**
      * Constructs a new JXPathNotFoundException.
-     * 
+     *
      * @param message exception detail
      */
     public JXPathNotFoundException(final String message) {
diff --git a/src/main/java/org/apache/commons/jxpath/JXPathTypeConversionException.java b/src/main/java/org/apache/commons/jxpath/JXPathTypeConversionException.java
index a21057b..7b4c1ba 100644
--- a/src/main/java/org/apache/commons/jxpath/JXPathTypeConversionException.java
+++ b/src/main/java/org/apache/commons/jxpath/JXPathTypeConversionException.java
@@ -26,7 +26,7 @@ public class JXPathTypeConversionException extends JXPathException {
 
     /**
      * Constructs a new JXPathTypeConversionException.
-     * 
+     *
      * @param message exception text
      */
     public JXPathTypeConversionException(final String message) {
@@ -35,7 +35,7 @@ public class JXPathTypeConversionException extends JXPathException {
 
     /**
      * Constructs a new JXPathTypeConversionException.
-     * 
+     *
      * @param message exception text
      * @param ex      underlying cause
      */
diff --git a/src/main/java/org/apache/commons/jxpath/NodeSet.java b/src/main/java/org/apache/commons/jxpath/NodeSet.java
index 2e47b88..48ef764 100644
--- a/src/main/java/org/apache/commons/jxpath/NodeSet.java
+++ b/src/main/java/org/apache/commons/jxpath/NodeSet.java
@@ -27,21 +27,21 @@ public interface NodeSet {
 
     /**
      * Returns a list of nodes.
-     * 
+     *
      * @return List
      */
     List getNodes();
 
     /**
      * Returns a list of pointers for all nodes in the set.
-     * 
+     *
      * @return List
      */
     List<Pointer> getPointers();
 
     /**
      * Returns a list of values of all contained pointers.
-     * 
+     *
      * @return List
      */
     List getValues();
diff --git a/src/main/java/org/apache/commons/jxpath/PackageFunctions.java b/src/main/java/org/apache/commons/jxpath/PackageFunctions.java
index 144d568..0d8038f 100644
--- a/src/main/java/org/apache/commons/jxpath/PackageFunctions.java
+++ b/src/main/java/org/apache/commons/jxpath/PackageFunctions.java
@@ -36,11 +36,11 @@ import org.apache.commons.jxpath.util.TypeUtils;
  * a class prefix is a package name (hence the name of this class).
  *
  * Let's say, we declared a PackageFunction like this: <blockquote>
- * 
+ *
  * <pre>
  * new PackageFunctions("java.util.", "util")
  * </pre>
- * 
+ *
  * </blockquote>
  *
  * We can now use XPaths like:
@@ -72,7 +72,7 @@ public class PackageFunctions implements Functions {
 
     /**
      * Constructs a new PackageFunctions.
-     * 
+     *
      * @param classPrefix class prefix
      * @param namespace   namespace String
      */
@@ -166,7 +166,7 @@ public class PackageFunctions implements Functions {
 
     /**
      * Returns the namespace specified in the constructor
-     * 
+     *
      * @return (singleton) namespace Set
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/Pointer.java b/src/main/java/org/apache/commons/jxpath/Pointer.java
index 524b1f8..437a756 100644
--- a/src/main/java/org/apache/commons/jxpath/Pointer.java
+++ b/src/main/java/org/apache/commons/jxpath/Pointer.java
@@ -39,14 +39,14 @@ public interface Pointer extends Cloneable, Comparable, Serializable {
      * of the result of a search performed by JXPath. If an object in the pointer's path is a Dynamic Property object (like a Map), the asPath method generates
      * an XPath that looks like this: {@code "
      * /departments[@name = 'HR']/employees[3]"}.
-     * 
+     *
      * @return String path
      */
     String asPath();
 
     /**
      * Pointers are cloneable.
-     * 
+     *
      * @return cloned Object
      */
     Object clone();
@@ -56,14 +56,14 @@ public interface Pointer extends Cloneable, Comparable, Serializable {
      * is.
      *
      * For example, for an XML element, getNode() will return the element itself rather than the text it contains.
-     * 
+     *
      * @return Object node
      */
     Object getNode();
 
     /**
      * Returns the node this pointer is based on.
-     * 
+     *
      * @return Object
      */
     Object getRootNode();
@@ -73,14 +73,14 @@ public interface Pointer extends Cloneable, Comparable, Serializable {
      * String, Number, Boolean, Set.
      *
      * For example, in the case of an XML element, getValue() will return the text contained by the element rather than the element itself.
-     * 
+     *
      * @return Object value
      */
     Object getValue();
 
     /**
      * Modifies the value of the object, property or collection element this pointer represents.
-     * 
+     *
      * @param value value to set
      */
     void setValue(Object value);
diff --git a/src/main/java/org/apache/commons/jxpath/Variables.java b/src/main/java/org/apache/commons/jxpath/Variables.java
index e245789..5ef7979 100644
--- a/src/main/java/org/apache/commons/jxpath/Variables.java
+++ b/src/main/java/org/apache/commons/jxpath/Variables.java
@@ -27,7 +27,7 @@ public interface Variables extends Serializable {
 
     /**
      * Defines a new variable with the specified value or modifies the value of an existing variable. May throw UnsupportedOperationException.
-     * 
+     *
      * @param name variable name
      * @param value   to declare
      */
@@ -35,7 +35,7 @@ public interface Variables extends Serializable {
 
     /**
      * Returns the value of the specified variable.
-     * 
+     *
      * @param name variable name
      * @return Object value
      * @throws IllegalArgumentException if there is no such variable.
@@ -44,7 +44,7 @@ public interface Variables extends Serializable {
 
     /**
      * Returns true if the specified variable is declared.
-     * 
+     *
      * @param name variable name
      * @return boolean
      */
diff --git a/src/main/java/org/apache/commons/jxpath/functions/ConstructorFunction.java b/src/main/java/org/apache/commons/jxpath/functions/ConstructorFunction.java
index f22315a..4cdc6cb 100644
--- a/src/main/java/org/apache/commons/jxpath/functions/ConstructorFunction.java
+++ b/src/main/java/org/apache/commons/jxpath/functions/ConstructorFunction.java
@@ -35,7 +35,7 @@ public class ConstructorFunction implements Function {
 
     /**
      * Constructs a new ConstructorFunction.
-     * 
+     *
      * @param constructor the constructor to call.
      */
     public ConstructorFunction(final Constructor constructor) {
@@ -44,7 +44,7 @@ public class ConstructorFunction implements Function {
 
     /**
      * Converts parameters to suitable types and invokes the constructor.
-     * 
+     *
      * @param context    evaluation context
      * @param parameters constructor args
      * @return new instance
diff --git a/src/main/java/org/apache/commons/jxpath/functions/MethodFunction.java b/src/main/java/org/apache/commons/jxpath/functions/MethodFunction.java
index ad5e656..febc0dc 100644
--- a/src/main/java/org/apache/commons/jxpath/functions/MethodFunction.java
+++ b/src/main/java/org/apache/commons/jxpath/functions/MethodFunction.java
@@ -37,7 +37,7 @@ public class MethodFunction implements Function {
 
     /**
      * Constructs a new MethodFunction.
-     * 
+     *
      * @param method implementing Method
      */
     public MethodFunction(final Method method) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/Compiler.java b/src/main/java/org/apache/commons/jxpath/ri/Compiler.java
index caf8588..451b656 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/Compiler.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/Compiler.java
@@ -25,7 +25,7 @@ package org.apache.commons.jxpath.ri;
  * four virtual object types: EXPRESSION, QNAME, STEP and NODE_TEST.
  * <p>
  * The following example illustrates this notion. This sequence compiles the xpath "foo[round(1 div 2)]/text()": <blockquote>
- * 
+ *
  * <pre>
  *      Object qname1 = compiler.qname(null, "foo")
  *      Object expr1 = compiler.number("1");
@@ -40,7 +40,7 @@ package org.apache.commons.jxpath.ri;
  *      Object step2 = compiler.nodeTypeTest(Compiler.AXIS_CHILD, test2, null);
  *      Object expr5 = compiler.locationPath(false, new Object[]{step1, step2});
  * </pre>
- * 
+ *
  * </blockquote>
  */
 public interface Compiler {
@@ -281,7 +281,7 @@ public interface Compiler {
 
     /**
      * Produces an EXPRESSION object that represents a string constant.
-     * 
+     *
      * @param value String literal
      * @return Object
      */
@@ -358,7 +358,7 @@ public interface Compiler {
 
     /**
      * Produces an EXPRESSION object that represents a numeric constant.
-     * 
+     *
      * @param value numeric String
      * @return Object
      */
@@ -382,7 +382,7 @@ public interface Compiler {
 
     /**
      * Produces an QNAME that represents a name with an optional prefix.
-     * 
+     *
      * @param prefix String prefix
      * @param name   String name
      * @return Object
diff --git a/src/main/java/org/apache/commons/jxpath/ri/EvalContext.java b/src/main/java/org/apache/commons/jxpath/ri/EvalContext.java
index b766dd7..f04dfe5 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/EvalContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/EvalContext.java
@@ -55,7 +55,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Constructs a new EvalContext.
-     * 
+     *
      * @param parentContext parent context
      */
     public EvalContext(final EvalContext parentContext) {
@@ -64,7 +64,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Constructs an iterator.
-     * 
+     *
      * @return whether the Iterator was constructed
      */
     private boolean constructIterator() {
@@ -89,7 +89,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns the list of all Pointers in this context for the current position of the parent context.
-     * 
+     *
      * @return List
      */
     @Override
@@ -117,14 +117,14 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns the current context node. Undefined before the beginning of the iteration.
-     * 
+     *
      * @return NodePoiner
      */
     public abstract NodePointer getCurrentNodePointer();
 
     /**
      * Gets the current position.
-     * 
+     *
      * @return int position.
      */
     public int getCurrentPosition() {
@@ -148,7 +148,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
     /**
      * Returns the list of all Pointers in this context for all positions of the parent contexts. If there was an ongoing iteration over this context, the
      * method should not be called.
-     * 
+     *
      * @return NodeSet
      */
     public NodeSet getNodeSet() {
@@ -171,7 +171,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns the root context of the path, which provides easy access to variables and functions.
-     * 
+     *
      * @return RootContext
      */
     public RootContext getRootContext() {
@@ -183,7 +183,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns the first encountered Pointer that matches the current context's criteria.
-     * 
+     *
      * @return Pointer
      */
     public Pointer getSingleNodePointer() {
@@ -199,7 +199,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
     /**
      * Typically returns the NodeSet by calling getNodeSet(), but will be overridden for contexts that more naturally produce individual values, e.g.
      * VariableContext
-     * 
+     *
      * @return Object
      */
     public Object getValue() {
@@ -208,7 +208,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns true if there are mode nodes matching the context's constraints.
-     * 
+     *
      * @return boolean
      */
     @Override
@@ -228,7 +228,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
     /**
      * Even if this context has the natural ordering and therefore does not require collecting and sorting all nodes prior to returning them, such operation may
      * be required for any child context.
-     * 
+     *
      * @return boolean
      */
     public boolean isChildOrderingRequired() {
@@ -239,7 +239,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns the next node pointer in the context
-     * 
+     *
      * @return Object
      */
     @Override
@@ -265,14 +265,14 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Returns true if there is another object in the current set. Switches the current position and node to the next object.
-     * 
+     *
      * @return boolean
      */
     public abstract boolean nextNode();
 
     /**
      * Returns true if there is another sets of objects to interate over. Resets the current position and node.
-     * 
+     *
      * @return boolean
      */
     public boolean nextSet() {
@@ -324,7 +324,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Operation is not supported
-     * 
+     *
      * @throws UnsupportedOperationException Always thrown.
      */
     @Override
@@ -342,7 +342,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
     /**
      * Moves the current position to the specified index. Used with integer predicates to quickly get to the n'th element of the node set. Returns false if the
      * position is out of the node set range. You can call it with 0 as the position argument to restart the iteration.
-     * 
+     *
      * @param position to set
      * @return boolean
      */
@@ -353,7 +353,7 @@ public abstract class EvalContext implements ExpressionContext, Iterator {
 
     /**
      * Sort a list of pointers based on document order.
-     * 
+     *
      * @param l the list to sort.
      */
     protected void sortPointers(final List l) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/InfoSetUtil.java b/src/main/java/org/apache/commons/jxpath/ri/InfoSetUtil.java
index 54f3a96..a0031b3 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/InfoSetUtil.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/InfoSetUtil.java
@@ -32,7 +32,7 @@ public class InfoSetUtil {
 
     /**
      * Converts the supplied object to boolean.
-     * 
+     *
      * @param object to convert
      * @return boolean
      */
@@ -66,7 +66,7 @@ public class InfoSetUtil {
 
     /**
      * Converts the supplied object to double.
-     * 
+     *
      * @param object to convert
      * @return double
      */
@@ -100,7 +100,7 @@ public class InfoSetUtil {
 
     /**
      * Converts the supplied object to Number.
-     * 
+     *
      * @param object to convert
      * @return Number result
      */
@@ -131,7 +131,7 @@ public class InfoSetUtil {
 
     /**
      * Converts the supplied object to String.
-     * 
+     *
      * @param object to convert
      * @return String value
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/JXPathCompiledExpression.java b/src/main/java/org/apache/commons/jxpath/ri/JXPathCompiledExpression.java
index f12b8c7..df76f3f 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/JXPathCompiledExpression.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/JXPathCompiledExpression.java
@@ -34,7 +34,7 @@ public class JXPathCompiledExpression implements CompiledExpression {
 
     /**
      * Constructs a new JXPathCompiledExpression.
-     * 
+     *
      * @param xpath      source
      * @param expression compiled
      */
@@ -55,7 +55,7 @@ public class JXPathCompiledExpression implements CompiledExpression {
 
     /**
      * Gets the compiled expression.
-     * 
+     *
      * @return Expression
      */
     protected Expression getExpression() {
@@ -79,7 +79,7 @@ public class JXPathCompiledExpression implements CompiledExpression {
 
     /**
      * Gets the source expression.
-     * 
+     *
      * @return String
      */
     protected String getXPath() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java b/src/main/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java
index 3fe49c2..7b467bb 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/JXPathContextReferenceImpl.java
@@ -101,7 +101,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
     /**
      * Call this with a custom NodePointerFactory to add support for additional types of objects. Make sure the factory returns a name that puts it in the right
      * position on the list of factories.
-     * 
+     *
      * @param factory NodePointerFactory to add
      */
     public static void addNodePointerFactory(final NodePointerFactory factory) {
@@ -113,7 +113,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Checks if existenceCheckClass exists on the class path. If so, allocates an instance of the specified class, otherwise returns null.
-     * 
+     *
      * @param className               to instantiate
      * @param existenceCheckClassName guard class
      * @return className instance
@@ -148,7 +148,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the registered NodePointerFactories.
-     * 
+     *
      * @return NodePointerFactory[]
      */
     public static NodePointerFactory[] getNodePointerFactories() {
@@ -177,7 +177,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Constructs a new JXPathContextReferenceImpl.
-     * 
+     *
      * @param parentContext parent context
      * @param contextBean   Object
      */
@@ -187,7 +187,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Constructs a new JXPathContextReferenceImpl.
-     * 
+     *
      * @param parentContext  parent context
      * @param contextBean    Object
      * @param contextPointer context pointer
@@ -214,7 +214,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Checks if the path follows the JXPath restrictions on the type of path that can be passed to create... methods.
-     * 
+     *
      * @param expr Expression to check
      */
     private void checkSimplePath(final Expression expr) {
@@ -226,7 +226,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Compile the given expression.
-     * 
+     *
      * @param xpath to compile
      * @return Expression
      */
@@ -307,7 +307,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Create the given path.
-     * 
+     *
      * @param xpath String
      * @param expr  compiled Expression
      * @return resulting Pointer
@@ -334,7 +334,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Create the given path setting its value to value.
-     * 
+     *
      * @param xpath String
      * @param expr  compiled Expression
      * @param value Object
@@ -355,7 +355,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the absolute root context.
-     * 
+     *
      * @return EvalContext
      */
     public EvalContext getAbsoluteRootContext() {
@@ -364,7 +364,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets absolute root pointer.
-     * 
+     *
      * @return NodePointer
      */
     private NodePointer getAbsoluteRootPointer() {
@@ -375,7 +375,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
      * Returns a static instance of TreeCompiler.
      *
      * Override this to return an alternate compiler.
-     * 
+     *
      * @return Compiler
      */
     protected Compiler getCompiler() {
@@ -389,7 +389,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the evaluation context.
-     * 
+     *
      * @return EvalContext
      */
     private EvalContext getEvalContext() {
@@ -398,7 +398,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the named Function.
-     * 
+     *
      * @param functionName name
      * @param parameters   function args
      * @return Function
@@ -429,7 +429,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the namespace resolver.
-     * 
+     *
      * @return NamespaceResolver
      */
     public NamespaceResolver getNamespaceResolver() {
@@ -449,7 +449,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets a pointer to the specified path/expression.
-     * 
+     *
      * @param xpath String
      * @param expr  compiled Expression
      * @return Pointer
@@ -470,7 +470,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * @see org.apache.commons.jxpath.JXPathContext#getPrefix(java.lang.String)
      */
     @Override
@@ -489,7 +489,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Traverses the xpath and returns the resulting object. Primitive types are wrapped into objects.
-     * 
+     *
      * @param xpath expression
      * @return Object found
      */
@@ -532,7 +532,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Calls getValue(xpath), converts the result to the required type and returns the result of the conversion.
-     * 
+     *
      * @param xpath        expression
      * @param requiredType Class
      * @return Object
@@ -545,7 +545,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the value indicated.
-     * 
+     *
      * @param xpath String
      * @param expr  Expression
      * @return Object
@@ -577,7 +577,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets the value indicated.
-     * 
+     *
      * @param xpath        expression
      * @param expr         compiled Expression
      * @param requiredType Class
@@ -597,7 +597,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Gets a VariablePointer for the given variable name.
-     * 
+     *
      * @param qName variable name
      * @return NodePointer
      */
@@ -608,7 +608,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
     /**
      * Traverses the xpath and returns a Iterator of all results found for the path. If the xpath matches no properties in the graph, the Iterator will not be
      * null.
-     * 
+     *
      * @param xpath expression
      * @return Iterator
      */
@@ -620,7 +620,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
     /**
      * Traverses the xpath and returns a Iterator of all results found for the path. If the xpath matches no properties in the graph, the Iterator will not be
      * null.
-     * 
+     *
      * @param xpath expression
      * @param expr  compiled Expression
      * @return Iterator
@@ -632,7 +632,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
     /**
      * Traverses the xpath and returns an Iterator of Pointers. A Pointer provides easy access to a property. If the xpath matches no properties in the graph,
      * the Iterator be empty, but not null.
-     * 
+     *
      * @param xpath expression
      * @return Iterator
      */
@@ -644,7 +644,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
     /**
      * Traverses the xpath and returns an Iterator of Pointers. A Pointer provides easy access to a property. If the xpath matches no properties in the graph,
      * the Iterator be empty, but not null.
-     * 
+     *
      * @param xpath expression
      * @param expr  compiled Expression
      * @return Iterator
@@ -668,7 +668,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Remove all matching nodes.
-     * 
+     *
      * @param xpath expression
      * @param expr  compiled Expression
      */
@@ -700,7 +700,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Remove the specified path.
-     * 
+     *
      * @param xpath expression
      * @param expr  compiled Expression
      */
@@ -735,7 +735,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Sets the value of xpath to value.
-     * 
+     *
      * @param xpath path
      * @param expr  compiled Expression
      * @param value Object
@@ -750,7 +750,7 @@ public class JXPathContextReferenceImpl extends JXPathContext {
 
     /**
      * Sets the specified value.
-     * 
+     *
      * @param xpath  path
      * @param expr   compiled Expression
      * @param value  destination value
diff --git a/src/main/java/org/apache/commons/jxpath/ri/Parser.java b/src/main/java/org/apache/commons/jxpath/ri/Parser.java
index 598a863..cfadce7 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/Parser.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/Parser.java
@@ -30,10 +30,10 @@ import org.apache.commons.jxpath.ri.parser.XPathParser;
 public class Parser {
 
     private static final XPathParser PARSER = new XPathParser(new StringReader(""));
-    
+
     /**
      * Add escapes to the specified String.
-     * 
+     *
      * @param string incoming String
      * @return String
      */
@@ -44,7 +44,7 @@ public class Parser {
 
     /**
      * Describe a parse position.
-     * 
+     *
      * @param expression to parse
      * @param position   parse position
      * @return String
@@ -61,7 +61,7 @@ public class Parser {
 
     /**
      * Parses the XPath expression. Throws a JXPathException in case of a syntax error.
-     * 
+     *
      * @param expression to parse
      * @param compiler   the compiler
      * @return parsed Object
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/AncestorContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/AncestorContext.java
index 847fead..c98c1a0 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/AncestorContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/AncestorContext.java
@@ -33,7 +33,7 @@ public class AncestorContext extends EvalContext {
 
     /**
      * Constructs a new AncestorContext.
-     * 
+     *
      * @param parentContext represents the previous step on the path
      * @param includeSelf   differentiates between "ancestor::" and "ancestor-or-self::" axes
      * @param nodeTest      is the name of the element(s) we are looking for
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/AttributeContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/AttributeContext.java
index bcd9b10..a6ba134 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/AttributeContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/AttributeContext.java
@@ -39,7 +39,7 @@ public class AttributeContext extends EvalContext {
 
     /**
      * Constructs a new AttributeContext.
-     * 
+     *
      * @param parentContext represents the previous step on the path
      * @param nodeTest      is the name of the attribute we are looking for
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/ChildContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/ChildContext.java
index a0db244..5bdcc34 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/ChildContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/ChildContext.java
@@ -35,7 +35,7 @@ public class ChildContext extends EvalContext {
 
     /**
      * Constructs a new ChildContext.
-     * 
+     *
      * @param parentContext           parent EvalContext
      * @param nodeTest                NodeTest
      * @param startFromParentLocation whether to start from parent location
@@ -60,7 +60,7 @@ public class ChildContext extends EvalContext {
      * This method is called on the last context on the path when only one value is needed. Note that this will return the whole property, even if it is a
      * collection. It will not extract the first element of the collection. For example, "books" will return the collection of books rather than the first book
      * from that collection.
-     * 
+     *
      * @return Pointer
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/DescendantContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/DescendantContext.java
index 6ac632e..3ff1403 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/DescendantContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/DescendantContext.java
@@ -41,7 +41,7 @@ public class DescendantContext extends EvalContext {
 
     /**
      * Constructs a new DescendantContext.
-     * 
+     *
      * @param parentContext parent context
      * @param includeSelf   whether to include this node
      * @param nodeTest      test
@@ -67,7 +67,7 @@ public class DescendantContext extends EvalContext {
 
     /**
      * Checks if we are reentering a bean we have already seen and if so returns true to prevent infinite recursion.
-     * 
+     *
      * @return boolean
      */
     private boolean isRecursive() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/InitialContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/InitialContext.java
index 6b9043b..83fabc5 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/InitialContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/InitialContext.java
@@ -33,7 +33,7 @@ public class InitialContext extends EvalContext {
 
     /**
      * Constructs a new InitialContext.
-     * 
+     *
      * @param parentContext parent context
      */
     public InitialContext(final EvalContext parentContext) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/NodeSetContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/NodeSetContext.java
index 7058fca..c5e8afd 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/NodeSetContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/NodeSetContext.java
@@ -31,7 +31,7 @@ public class NodeSetContext extends EvalContext {
 
     /**
      * Constructs a new NodeSetContext.
-     * 
+     *
      * @param parentContext parent context
      * @param nodeSet       associated NodeSet
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/ParentContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/ParentContext.java
index 84d12f2..6ff9d25 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/ParentContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/ParentContext.java
@@ -32,7 +32,7 @@ public class ParentContext extends EvalContext {
 
     /**
      * Constructs a new ParentContext.
-     * 
+     *
      * @param parentContext parent context
      * @param nodeTest      test
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/PrecedingOrFollowingContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/PrecedingOrFollowingContext.java
index 6fb9c94..232fb42 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/PrecedingOrFollowingContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/PrecedingOrFollowingContext.java
@@ -38,7 +38,7 @@ public class PrecedingOrFollowingContext extends EvalContext {
 
     /**
      * Constructs a new PrecedingOrFollowingContext.
-     * 
+     *
      * @param parentContext parent context
      * @param nodeTest      test
      * @param reverse       whether to iterate in reverse order
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/PredicateContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/PredicateContext.java
index 38648cd..480fd9d 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/PredicateContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/PredicateContext.java
@@ -39,7 +39,7 @@ public class PredicateContext extends EvalContext {
 
     /**
      * Constructs a new PredicateContext.
-     * 
+     *
      * @param parentContext parent context
      * @param expression    compiled Expression
      */
@@ -148,7 +148,7 @@ public class PredicateContext extends EvalContext {
 
     /**
      * Basic setPosition
-     * 
+     *
      * @param position to set
      * @return whether valid
      */
@@ -166,7 +166,7 @@ public class PredicateContext extends EvalContext {
 
     /**
      * Used for an optimized access to dynamic properties using the "map[@name = 'name']" syntax
-     * 
+     *
      * @return whether valid
      */
     private boolean setupDynamicPropertyPointer() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/RootContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/RootContext.java
index b82fc6d..a89b06a 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/RootContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/RootContext.java
@@ -43,7 +43,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Constructs a new RootContext.
-     * 
+     *
      * @param jxpathContext context
      * @param pointer       pointer
      */
@@ -58,7 +58,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Gets absolute root context
-     * 
+     *
      * @return EvalContext
      */
     public EvalContext getAbsoluteRootContext() {
@@ -67,7 +67,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Gets a context that points to the specified object.
-     * 
+     *
      * @param constant object
      * @return EvalContext
      */
@@ -96,7 +96,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Gets the specified function from the context.
-     * 
+     *
      * @param functionName QName
      * @param parameters   Object[]
      * @return Function
@@ -112,7 +112,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Gets a registered value.
-     * 
+     *
      * @param id int
      * @return Object
      */
@@ -135,7 +135,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Gets variable context.
-     * 
+     *
      * @param variableName variable name
      * @return EvalContext
      */
@@ -160,7 +160,7 @@ public class RootContext extends EvalContext {
 
     /**
      * Sets the next registered value.
-     * 
+     *
      * @param value Object
      * @return the id that can reclaim value.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/SelfContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/SelfContext.java
index b75e7bf..29424fa 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/SelfContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/SelfContext.java
@@ -33,7 +33,7 @@ public class SelfContext extends EvalContext {
 
     /**
      * Constructs a new SelfContext.
-     * 
+     *
      * @param parentContext EvalContext
      * @param nodeTest      guard
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/SimplePathInterpreter.java b/src/main/java/org/apache/commons/jxpath/ri/axes/SimplePathInterpreter.java
index 68889ea..520987e 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/SimplePathInterpreter.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/SimplePathInterpreter.java
@@ -59,7 +59,7 @@ public class SimplePathInterpreter {
 
     /**
      * For a pointer that matches an actual node, returns 0. For a pointer that does not match an actual node, but whose parent pointer does returns -1, etc.
-     * 
+     *
      * @param pointer input pointer
      * @return int match quality code
      */
@@ -74,7 +74,7 @@ public class SimplePathInterpreter {
 
     /**
      * Create the child pointer for a given step.
-     * 
+     *
      * @param parentPointer parent pointer
      * @param step          associated step
      * @return NodePointer
@@ -100,7 +100,7 @@ public class SimplePathInterpreter {
 
     /**
      * Creates a "null pointer" that a) represents the requested path and b) can be used for creation of missing nodes in the path.
-     * 
+     *
      * @param context     evaluation context
      * @param parent      parent pointer
      * @param steps       path steps
@@ -128,7 +128,7 @@ public class SimplePathInterpreter {
 
     /**
      * Creates a "null pointer" that starts with predicates.
-     * 
+     *
      * @param context          evaluation context
      * @param parent           parent pointer
      * @param steps            path steps
@@ -162,7 +162,7 @@ public class SimplePathInterpreter {
 
     /**
      * Evaluates predicates and proceeds with the subsequent steps of the path.
-     * 
+     *
      * @param context          evaluation context
      * @param parent           parent pointer
      * @param steps            path steps
@@ -186,7 +186,7 @@ public class SimplePathInterpreter {
 
     /**
      * Evaluate a subscript predicate: see if the node is a collection and if the index is inside the collection.
-     * 
+     *
      * @param context          evaluation context
      * @param parent           parent pointer
      * @param steps            path steps
@@ -210,7 +210,7 @@ public class SimplePathInterpreter {
 
     /**
      * Execute a NameAttributeTest predicate
-     * 
+     *
      * @param context          evaluation context
      * @param parent           parent pointer
      * @param steps            path steps
@@ -281,7 +281,7 @@ public class SimplePathInterpreter {
 
     /**
      * Called exclusively for standard InfoSet nodes, e.g. DOM nodes to evaluate predicate sequences like [@name=...][@name=...][index].
-     * 
+     *
      * @param context          evaluation context
      * @param parents          List of parent pointers
      * @param steps            path steps
@@ -331,7 +331,7 @@ public class SimplePathInterpreter {
     /**
      * Recursive evaluation of a path. The general plan is: Look at the current step, find nodes that match it, iterate over those nodes and for each of them
      * call doStep again for subsequent steps.
-     * 
+     *
      * @param context     evaluation context
      * @param parent      parent pointer
      * @param steps       path steps
@@ -376,7 +376,7 @@ public class SimplePathInterpreter {
      * We have a step that starts with a property owner (bean, map, etc) and has no predicates. The name test of the step may map to a scalar property or to a
      * collection. If it is a collection, we should apply the tail of the path to each element until we find a match. If we don't find a perfect match, we
      * should return the "best quality" pointer, which has the longest chain of steps mapping to existing nodes and the shortes tail of Null* pointers.
-     * 
+     *
      * @param context       evaluation context
      * @param parentPointer property owner pointer
      * @param steps         path steps
@@ -432,7 +432,7 @@ public class SimplePathInterpreter {
      * A path that starts with a standard InfoSet node (e.g. DOM Node) and has no predicates. Get a child iterator and apply the tail of the path to each
      * element until we find a match. If we don't find a perfect match, we should return the "best quality" pointer, which has the longest chain of steps
      * mapping to existing nodes and the shortes tail of Null* pointers.
-     * 
+     *
      * @param context       evaluation context
      * @param parentPointer parent pointer
      * @param steps         path steps
@@ -472,7 +472,7 @@ public class SimplePathInterpreter {
     /**
      * A path that starts with a property owner. The method evaluates the first predicate in a special way and then forwards to a general predicate processing
      * method.
-     * 
+     *
      * @param context       evaluation context
      * @param parentPointer parent pointer
      * @param steps         path steps
@@ -495,7 +495,7 @@ public class SimplePathInterpreter {
     /**
      * A path that starts with a standard InfoSet node, e.g. a DOM Node. The method evaluates the first predicate in a special way and then forwards to a
      * general predicate processing method.
-     * 
+     *
      * @param context     evaluation context
      * @param parent      parent pointer
      * @param steps       path steps
@@ -556,7 +556,7 @@ public class SimplePathInterpreter {
 
     /**
      * Gets a NodeIterator.
-     * 
+     *
      * @param context evaluation context
      * @param pointer owning pointer
      * @param step    triggering step
@@ -582,7 +582,7 @@ public class SimplePathInterpreter {
 
     /**
      * Extract an integer from a subscript predicate. The returned index starts with 0, even though the subscript starts with 1.
-     * 
+     *
      * @param context   evaluation context
      * @param predicate to evaluate
      * @return calculated index
@@ -609,7 +609,7 @@ public class SimplePathInterpreter {
      * Interpret the steps of a simple expression path that starts with the given root, which is the result of evaluation of the root expression of the
      * expression path, applies the given predicates to it and then follows the given steps. All steps must have the axis "child::" or "attribute::" and a name
      * test. They can also optionally have predicates of type [@name=...] or simply [...] interpreted as an index.
-     * 
+     *
      * @param context    evaluation context
      * @param root       root pointer
      * @param predicates predicates corresponding to {@code steps}
@@ -628,7 +628,7 @@ public class SimplePathInterpreter {
     /**
      * Interpret a simple path that starts with the given root and follows the given steps. All steps must have the axis "child::" and a name test. They can
      * also optionally have predicates of type [@name=expression] or simply [expression] interpreted as an index.
-     * 
+     *
      * @param context evaluation context
      * @param root    root pointer
      * @param steps   path steps
@@ -643,7 +643,7 @@ public class SimplePathInterpreter {
 
     /**
      * Returns true if the pointer is a collection and the index is withing the bounds of the collection.
-     * 
+     *
      * @param pointer input pointer
      * @param index   to check
      * @return boolean
@@ -654,7 +654,7 @@ public class SimplePathInterpreter {
 
     /**
      * Learn whether {@code name} is a lang attribute.
-     * 
+     *
      * @param qName to compare
      * @return boolean
      */
@@ -664,7 +664,7 @@ public class SimplePathInterpreter {
 
     /**
      * Returns true if the pointer has an attribute called "name" and its value is equal to the supplied string.
-     * 
+     *
      * @param pointer input pointer
      * @param name    name to check
      * @return boolean
@@ -676,7 +676,7 @@ public class SimplePathInterpreter {
 
     /**
      * Extracts the string value of the expression from a predicate like [@name=expression].
-     * 
+     *
      * @param context   evaluation context
      * @param predicate predicate to evaluate
      * @return String key extracted
@@ -688,14 +688,14 @@ public class SimplePathInterpreter {
 
     /**
      * For an intermediate pointer (e.g. PropertyPointer, ContainerPointer) returns a pointer for the contained value.
-     * 
+     *
      * @param pointer input pointer
      * @return NodePointer
      */
     private static NodePointer valuePointer(final NodePointer pointer) {
         return pointer == null ? null : pointer.getValuePointer();
     }
-    
+
     /**
      * Constructs a new instance.
      *
diff --git a/src/main/java/org/apache/commons/jxpath/ri/axes/UnionContext.java b/src/main/java/org/apache/commons/jxpath/ri/axes/UnionContext.java
index 37c311e..3658451 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/axes/UnionContext.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/axes/UnionContext.java
@@ -34,7 +34,7 @@ public class UnionContext extends NodeSetContext {
 
     /**
      * Constructs a new UnionContext.
-     * 
+     *
      * @param parentContext parent context
      * @param contexts      child contexts
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/Constant.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/Constant.java
index 24a4b4f..8dbf679 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/Constant.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/Constant.java
@@ -29,7 +29,7 @@ public class Constant extends Expression {
 
     /**
      * Constructs a new Constant.
-     * 
+     *
      * @param number constant
      */
     public Constant(final Number number) {
@@ -38,7 +38,7 @@ public class Constant extends Expression {
 
     /**
      * Constructs a new Constant.
-     * 
+     *
      * @param string constant
      */
     public Constant(final String string) {
@@ -52,7 +52,7 @@ public class Constant extends Expression {
 
     /**
      * Returns false
-     * 
+     *
      * @return false
      */
     @Override
@@ -67,7 +67,7 @@ public class Constant extends Expression {
 
     /**
      * Returns false
-     * 
+     *
      * @return false
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreFunction.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreFunction.java
index b892710..ce5b7ed 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreFunction.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreFunction.java
@@ -44,7 +44,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Constructs a new CoreFunction.
-     * 
+     *
      * @param functionCode int function code
      * @param args         argument Expressions
      */
@@ -55,7 +55,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Assert {@code count} args.
-     * 
+     *
      * @param count int
      */
     private void assertArgCount(final int count) {
@@ -64,7 +64,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Assert at least {@code min}/at most {@code max} args.
-     * 
+     *
      * @param min int
      * @param max int
      */
@@ -82,7 +82,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Returns true if any argument is context dependent or if the function is last(), position(), boolean(), local-name(), name(), string(), lang(), number().
-     * 
+     *
      * @return boolean
      */
     @Override
@@ -200,7 +200,7 @@ public class CoreFunction extends Operation {
 
     /**
      * boolean() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      */
@@ -211,7 +211,7 @@ public class CoreFunction extends Operation {
 
     /**
      * ceiling() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -226,7 +226,7 @@ public class CoreFunction extends Operation {
 
     /**
      * concat() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -244,7 +244,7 @@ public class CoreFunction extends Operation {
 
     /**
      * contains() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      */
@@ -257,7 +257,7 @@ public class CoreFunction extends Operation {
 
     /**
      * count() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -287,7 +287,7 @@ public class CoreFunction extends Operation {
 
     /**
      * ends-with() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      * @since 1.4
@@ -301,7 +301,7 @@ public class CoreFunction extends Operation {
 
     /**
      * false() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean.FALSE
      */
@@ -312,7 +312,7 @@ public class CoreFunction extends Operation {
 
     /**
      * floor() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -327,7 +327,7 @@ public class CoreFunction extends Operation {
 
     /**
      * format-number() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -359,7 +359,7 @@ public class CoreFunction extends Operation {
 
     /**
      * id() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Pointer
      */
@@ -373,7 +373,7 @@ public class CoreFunction extends Operation {
 
     /**
      * key() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return various Object
      */
@@ -405,7 +405,7 @@ public class CoreFunction extends Operation {
 
     /**
      * lang() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      */
@@ -421,7 +421,7 @@ public class CoreFunction extends Operation {
 
     /**
      * last() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -444,7 +444,7 @@ public class CoreFunction extends Operation {
 
     /**
      * local-name() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -467,7 +467,7 @@ public class CoreFunction extends Operation {
 
     /**
      * name() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -490,7 +490,7 @@ public class CoreFunction extends Operation {
 
     /**
      * namespace-uri() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -515,7 +515,7 @@ public class CoreFunction extends Operation {
 
     /**
      * normalize-space() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -549,7 +549,7 @@ public class CoreFunction extends Operation {
 
     /**
      * not() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      */
@@ -560,7 +560,7 @@ public class CoreFunction extends Operation {
 
     /**
      * null() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return null
      */
@@ -571,7 +571,7 @@ public class CoreFunction extends Operation {
 
     /**
      * number() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -585,7 +585,7 @@ public class CoreFunction extends Operation {
 
     /**
      * position() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -596,7 +596,7 @@ public class CoreFunction extends Operation {
 
     /**
      * round() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -611,7 +611,7 @@ public class CoreFunction extends Operation {
 
     /**
      * starts-with() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean
      */
@@ -624,7 +624,7 @@ public class CoreFunction extends Operation {
 
     /**
      * string() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -638,7 +638,7 @@ public class CoreFunction extends Operation {
 
     /**
      * string-length() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -655,7 +655,7 @@ public class CoreFunction extends Operation {
 
     /**
      * substring() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -702,7 +702,7 @@ public class CoreFunction extends Operation {
 
     /**
      * substring-after() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -719,7 +719,7 @@ public class CoreFunction extends Operation {
 
     /**
      * substring-before() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -736,7 +736,7 @@ public class CoreFunction extends Operation {
 
     /**
      * sum() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Number
      */
@@ -760,7 +760,7 @@ public class CoreFunction extends Operation {
 
     /**
      * translate() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return String
      */
@@ -788,7 +788,7 @@ public class CoreFunction extends Operation {
 
     /**
      * true() implementation.
-     * 
+     *
      * @param context evaluation context
      * @return Boolean.TRUE
      */
@@ -799,7 +799,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Convenience method to return the first argument.
-     * 
+     *
      * @return Expression
      */
     public Expression getArg1() {
@@ -808,7 +808,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Convenience method to return the second argument.
-     * 
+     *
      * @return Expression
      */
     public Expression getArg2() {
@@ -817,7 +817,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Convenience method to return the third argument.
-     * 
+     *
      * @return Expression
      */
     public Expression getArg3() {
@@ -826,7 +826,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Gets the number of argument Expressions.
-     * 
+     *
      * @return int count
      */
     public int getArgumentCount() {
@@ -838,7 +838,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Gets the function code.
-     * 
+     *
      * @return int function code
      */
     public int getFunctionCode() {
@@ -847,7 +847,7 @@ public class CoreFunction extends Operation {
 
     /**
      * Gets the name of this function.
-     * 
+     *
      * @return String function name
      */
     protected String getFunctionName() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperation.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperation.java
index b257b91..07d9677 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperation.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperation.java
@@ -43,7 +43,7 @@ public abstract class CoreOperation extends Operation {
 
     /**
      * Constructs a new CoreOperation.
-     * 
+     *
      * @param args Expression[]
      */
     public CoreOperation(final Expression[] args) {
@@ -60,28 +60,28 @@ public abstract class CoreOperation extends Operation {
 
     /**
      * Computes the precedence of the operation.
-     * 
+     *
      * @return int precedence
      */
     protected abstract int getPrecedence();
 
     /**
      * Returns the XPath symbol for this operation, e.g. "+", "div", etc.
-     * 
+     *
      * @return String symbol
      */
     public abstract String getSymbol();
 
     /**
      * Returns true if the operation is not sensitive to the order of arguments, e.g. "=", "and" etc, and false if it is, e.g. "&lt;=", "div".
-     * 
+     *
      * @return boolean
      */
     protected abstract boolean isSymmetric();
 
     /**
      * Wrap an expression in parens if necessary.
-     * 
+     *
      * @param expression other Expression
      * @param left       whether {@code expression} is left of this one.
      * @return String
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAdd.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAdd.java
index 31cde4e..bca33d9 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAdd.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAdd.java
@@ -27,7 +27,7 @@ public class CoreOperationAdd extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationAdd.
-     * 
+     *
      * @param args Expression arguments to add together.
      */
     public CoreOperationAdd(final Expression[] args) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAnd.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAnd.java
index d00fffd..ccb46ff 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAnd.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationAnd.java
@@ -27,7 +27,7 @@ public class CoreOperationAnd extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationAnd.
-     * 
+     *
      * @param args to combine
      */
     public CoreOperationAnd(final Expression[] args) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationCompare.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationCompare.java
index fed9e2c..a111ecf 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationCompare.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationCompare.java
@@ -36,7 +36,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationCompare.
-     * 
+     *
      * @param arg1 left operand
      * @param arg2 right operand
      */
@@ -46,7 +46,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationCompare.
-     * 
+     *
      * @param arg1   left operand
      * @param arg2   right operand
      * @param invert whether to invert (not) the comparison
@@ -63,7 +63,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Learn whether it contains value.
-     * 
+     *
      * @param it    Iterator to check
      * @param value for which to look
      * @return whether value was found
@@ -80,7 +80,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Compares two values.
-     * 
+     *
      * @param context evaluation context
      * @param left    operand
      * @param right   operand
@@ -121,7 +121,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Learn whether l equals r in XPath terms.
-     * 
+     *
      * @param l left operand
      * @param r right operand
      * @return whether l = r
@@ -159,7 +159,7 @@ public abstract class CoreOperationCompare extends CoreOperation {
 
     /**
      * Learn whether lit intersects rit.
-     * 
+     *
      * @param lit left Iterator
      * @param rit right Iterator
      * @return boolean
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationDivide.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationDivide.java
index b80adcf..da4cc4f 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationDivide.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationDivide.java
@@ -27,7 +27,7 @@ public class CoreOperationDivide extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationDivide.
-     * 
+     *
      * @param arg1 dividend
      * @param arg2 divisor
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationEqual.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationEqual.java
index 83f0d0c..98fff5a 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationEqual.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationEqual.java
@@ -24,7 +24,7 @@ public class CoreOperationEqual extends CoreOperationCompare {
 
     /**
      * Constructs a new CoreOperationEqual
-     * 
+     *
      * @param arg1 first comparison Expression
      * @param arg2 second comparison Expression
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThan.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThan.java
index bc652d2..eadc43a 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThan.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThan.java
@@ -24,7 +24,7 @@ public class CoreOperationGreaterThan extends CoreOperationRelationalExpression
 
     /**
      * Constructs a new CoreOperationGreaterThan.
-     * 
+     *
      * @param arg1 left operand
      * @param arg2 right operand
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThanOrEqual.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThanOrEqual.java
index 837ba42..5a07d57 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThanOrEqual.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationGreaterThanOrEqual.java
@@ -24,7 +24,7 @@ public class CoreOperationGreaterThanOrEqual extends CoreOperationRelationalExpr
 
     /**
      * Constructs a new CoreOperationGreaterThanOrEqual.
-     * 
+     *
      * @param arg1 operand 1
      * @param arg2 operand 2
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThan.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThan.java
index b8fa880..5debe32 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThan.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThan.java
@@ -24,7 +24,7 @@ public class CoreOperationLessThan extends CoreOperationRelationalExpression {
 
     /**
      * Constructs a new CoreOperationLessThan.
-     * 
+     *
      * @param arg1 left Expression
      * @param arg2 right Expression
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThanOrEqual.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThanOrEqual.java
index 700fba6..0d7a2f9 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThanOrEqual.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationLessThanOrEqual.java
@@ -24,7 +24,7 @@ public class CoreOperationLessThanOrEqual extends CoreOperationRelationalExpress
 
     /**
      * Constructs a new CoreOperationLessThanOrEqual.
-     * 
+     *
      * @param arg1 left Expression
      * @param arg2 right Expression
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMod.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMod.java
index eaac9f8..c568161 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMod.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMod.java
@@ -27,7 +27,7 @@ public class CoreOperationMod extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationMod.
-     * 
+     *
      * @param arg1 dividend
      * @param arg2 divisor
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMultiply.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMultiply.java
index 5a0b04f..add672a 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMultiply.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationMultiply.java
@@ -27,7 +27,7 @@ public class CoreOperationMultiply extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationMultiply.
-     * 
+     *
      * @param arg1 factor 1
      * @param arg2 factor 2
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNegate.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNegate.java
index 2dcd932..7660c69 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNegate.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNegate.java
@@ -27,7 +27,7 @@ public class CoreOperationNegate extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationNegate.
-     * 
+     *
      * @param arg the Expression to negate
      */
     public CoreOperationNegate(final Expression arg) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNotEqual.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNotEqual.java
index c2be065..6f6a012 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNotEqual.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationNotEqual.java
@@ -24,7 +24,7 @@ public class CoreOperationNotEqual extends CoreOperationCompare {
 
     /**
      * Constructs a new CoreOperationNotEqual.
-     * 
+     *
      * @param arg1 left operand
      * @param arg2 right operand
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationOr.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationOr.java
index e8ee6cd..ae130ba 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationOr.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationOr.java
@@ -27,7 +27,7 @@ public class CoreOperationOr extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationOr.
-     * 
+     *
      * @param args or'd Expression components
      */
     public CoreOperationOr(final Expression[] args) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationRelationalExpression.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationRelationalExpression.java
index d29073a..4a6fdd9 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationRelationalExpression.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationRelationalExpression.java
@@ -28,14 +28,14 @@ import org.apache.commons.jxpath.ri.axes.SelfContext;
 
 /**
  * Base implementation of Expression for the operations "&gt;", "&gt;=", "&lt;", "&lt;=".
- * 
+ *
  * @since JXPath 1.3
  */
 public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationRelationalExpression.
-     * 
+     *
      * @param args arguments
      */
     protected CoreOperationRelationalExpression(final Expression[] args) {
@@ -44,7 +44,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Compare left to right.
-     * 
+     *
      * @param left  left operand
      * @param right right operand
      * @return operation success/failure
@@ -85,7 +85,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Learn whether any element returned from an Iterator matches a given value.
-     * 
+     *
      * @param it    Iterator
      * @param value to look for
      * @return whether a match was found
@@ -102,7 +102,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Learn whether any element returned from an Iterator matches a given value.
-     * 
+     *
      * @param it    Iterator
      * @param value to look for
      * @return whether a match was found
@@ -119,7 +119,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Template method for subclasses to evaluate the result of a comparison.
-     * 
+     *
      * @param compare result of comparison to evaluate
      * @return ultimate operation success/failure
      */
@@ -127,7 +127,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Learn whether there is an intersection between two Iterators.
-     * 
+     *
      * @param lit left Iterator
      * @param rit right Iterator
      * @return whether a match was found
@@ -157,7 +157,7 @@ public abstract class CoreOperationRelationalExpression extends CoreOperation {
 
     /**
      * Reduce an operand for comparison.
-     * 
+     *
      * @param o Object to reduce
      * @return reduced operand
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationSubtract.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationSubtract.java
index 109555c..b33c9f0 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationSubtract.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationSubtract.java
@@ -27,7 +27,7 @@ public class CoreOperationSubtract extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationSubtract.
-     * 
+     *
      * @param arg1 minuend
      * @param arg2 subtrahend
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationUnion.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationUnion.java
index 94def81..6469630 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationUnion.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/CoreOperationUnion.java
@@ -27,7 +27,7 @@ public class CoreOperationUnion extends CoreOperation {
 
     /**
      * Constructs a new CoreOperationUnion.
-     * 
+     *
      * @param args Expression[]
      */
     public CoreOperationUnion(final Expression[] args) {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/Expression.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/Expression.java
index b9dd66f..712afa0 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/Expression.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/Expression.java
@@ -46,7 +46,7 @@ public abstract class Expression {
         // to what method does the following comment refer?
         /**
          * Constructs a new PointerIterator
-         * 
+         *
          * @param it     underlying Iterator
          * @param qname  name
          * @param locale Locale
@@ -88,7 +88,7 @@ public abstract class Expression {
 
         /**
          * Constructs a new ValueIterator.
-         * 
+         *
          * @param it underlying Iterator, may contain pointers
          */
         public ValueIterator(final Iterator it) {
@@ -133,7 +133,7 @@ public abstract class Expression {
 
     /**
      * Evaluates the expression. If the result is a node set, returns the first element of the node set.
-     * 
+     *
      * @param context evaluation context
      * @return Object
      */
@@ -141,14 +141,14 @@ public abstract class Expression {
 
     /**
      * Implemented by subclasses and result is cached by isContextDependent()
-     * 
+     *
      * @return calculated context-dependentness as boolean
      */
     public abstract boolean computeContextDependent();
 
     /**
      * Evaluates the expression. If the result is a node set, returns the first element of the node set.
-     * 
+     *
      * @param context evaluation context
      * @return Object
      */
@@ -156,7 +156,7 @@ public abstract class Expression {
 
     /**
      * Returns true if this expression should be re-evaluated each time the current position in the context changes.
-     * 
+     *
      * @return boolean
      */
     public synchronized boolean isContextDependent() {
@@ -169,7 +169,7 @@ public abstract class Expression {
 
     /**
      * Iterate over the values from the specified context.
-     * 
+     *
      * @param context evaluation context
      * @return value Iterator
      */
@@ -186,7 +186,7 @@ public abstract class Expression {
 
     /**
      * Iterate over the pointers from the specified context.
-     * 
+     *
      * @param context evaluation context
      * @return pointer Iterator
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/ExpressionPath.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/ExpressionPath.java
index 2a05acc..399e5ad 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/ExpressionPath.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/ExpressionPath.java
@@ -38,7 +38,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Constructs a new ExpressionPath.
-     * 
+     *
      * @param expression Expression
      * @param predicates to execute
      * @param steps      navigation
@@ -56,7 +56,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Returns true if the root expression or any of the predicates or the path steps are context dependent.
-     * 
+     *
      * @return boolean
      */
     @Override
@@ -81,7 +81,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Walks an expression path (a path that starts with an expression)
-     * 
+     *
      * @param evalContext base context
      * @param firstMatch  whether to return the first match found
      * @return Object found
@@ -120,7 +120,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Gets the expression.
-     * 
+     *
      * @return Expression
      */
     public Expression getExpression() {
@@ -129,7 +129,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Predicates are the expressions in brackets that may follow the root expression of the path.
-     * 
+     *
      * @return Expression[]
      */
     public Expression[] getPredicates() {
@@ -138,7 +138,7 @@ public class ExpressionPath extends Path {
 
     /**
      * Recognized paths formatted as {@code $x[3]/foo[2]}. The evaluation of such "simple" paths is optimized and streamlined.
-     * 
+     *
      * @return boolean
      */
     public synchronized boolean isSimpleExpressionPath() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/ExtensionFunction.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/ExtensionFunction.java
index ee67c47..386fbbe 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/ExtensionFunction.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/ExtensionFunction.java
@@ -35,7 +35,7 @@ public class ExtensionFunction extends Operation {
 
     /**
      * Constructs a new ExtensionFunction.
-     * 
+     *
      * @param functionName name of the function
      * @param args         Expression[] of function args
      */
@@ -51,7 +51,7 @@ public class ExtensionFunction extends Operation {
 
     /**
      * An extension function gets the current context, therefore it MAY be context dependent.
-     * 
+     *
      * @return true
      */
     @Override
@@ -78,7 +78,7 @@ public class ExtensionFunction extends Operation {
 
     /**
      * Convert any incoming context to a value.
-     * 
+     *
      * @param object Object to convert
      * @return context value or {@code object} unscathed.
      */
@@ -88,7 +88,7 @@ public class ExtensionFunction extends Operation {
 
     /**
      * Gets the function name
-     * 
+     *
      * @return QName
      */
     public QName getFunctionName() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/LocationPath.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/LocationPath.java
index 59c72f7..8f6e571 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/LocationPath.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/LocationPath.java
@@ -29,7 +29,7 @@ public class LocationPath extends Path {
 
     /**
      * Constructs a new LocationPath.
-     * 
+     *
      * @param absolute whether this is an absolute path
      * @param steps    to evaluate
      */
@@ -69,7 +69,7 @@ public class LocationPath extends Path {
 
     /**
      * Learn whether this LocationPath is absolute.
-     * 
+     *
      * @return boolean
      */
     public boolean isAbsolute() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/NameAttributeTest.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/NameAttributeTest.java
index 9615948..ec2467d 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/NameAttributeTest.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/NameAttributeTest.java
@@ -24,7 +24,7 @@ public class NameAttributeTest extends CoreOperationEqual {
 
     /**
      * Constructs a new NameAttributeTest.
-     * 
+     *
      * @param namePath  Expression
      * @param nameValue Expression
      */
@@ -39,7 +39,7 @@ public class NameAttributeTest extends CoreOperationEqual {
 
     /**
      * Gets the name test expression.
-     * 
+     *
      * @return Expression
      */
     public Expression getNameTestExpression() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeNameTest.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeNameTest.java
index 6ffde73..bb78c58 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeNameTest.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeNameTest.java
@@ -29,7 +29,7 @@ public class NodeNameTest extends NodeTest {
 
     /**
      * Constructs a new NodeNameTest.
-     * 
+     *
      * @param qname name to match
      */
     public NodeNameTest(final QName qname) {
@@ -38,7 +38,7 @@ public class NodeNameTest extends NodeTest {
 
     /**
      * Constructs a new NodeNameTest.
-     * 
+     *
      * @param qname        name to match
      * @param namespaceURI uri to match
      */
@@ -49,7 +49,7 @@ public class NodeNameTest extends NodeTest {
 
     /**
      * Gets the ns URI.
-     * 
+     *
      * @return String
      */
     public String getNamespaceURI() {
@@ -58,7 +58,7 @@ public class NodeNameTest extends NodeTest {
 
     /**
      * Gets the node name.
-     * 
+     *
      * @return QName
      */
     public QName getNodeName() {
@@ -67,7 +67,7 @@ public class NodeNameTest extends NodeTest {
 
     /**
      * Learn whether this is a wildcard test.
-     * 
+     *
      * @return {@code true} if the node name is "*".
      */
     public boolean isWildcard() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTest.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTest.java
index 20ed7b2..5016cd2 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTest.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTest.java
@@ -21,7 +21,7 @@ package org.apache.commons.jxpath.ri.compiler;
  * Node test.
  */
 public abstract class NodeTest {
-    
+
     /**
      * Constructs a new instance for subclasses.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTypeTest.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTypeTest.java
index 6a45064..fb72e1b 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTypeTest.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/NodeTypeTest.java
@@ -26,7 +26,7 @@ public class NodeTypeTest extends NodeTest {
 
     /**
      * Render the given node type as a String.
-     * 
+     *
      * @param code int
      * @return String
      */
@@ -49,7 +49,7 @@ public class NodeTypeTest extends NodeTest {
 
     /**
      * Constructs a new NodeTypeTest.
-     * 
+     *
      * @param nodeType to match
      */
     public NodeTypeTest(final int nodeType) {
@@ -58,7 +58,7 @@ public class NodeTypeTest extends NodeTest {
 
     /**
      * Gets the nodeType.
-     * 
+     *
      * @return int
      */
     public int getNodeType() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/Operation.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/Operation.java
index f759ab6..88b3d9c 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/Operation.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/Operation.java
@@ -27,7 +27,7 @@ public abstract class Operation extends Expression {
 
     /**
      * Constructs a new Operation.
-     * 
+     *
      * @param args Expression[]
      */
     public Operation(final Expression[] args) {
@@ -48,7 +48,7 @@ public abstract class Operation extends Expression {
 
     /**
      * Gets the arguments.
-     * 
+     *
      * @return Expression[]
      */
     public Expression[] getArguments() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/Path.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/Path.java
index 1784dc4..9bc5dbc 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/Path.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/Path.java
@@ -46,7 +46,7 @@ public abstract class Path extends Expression {
 
     /**
      * Constructs a new Path.
-     * 
+     *
      * @param steps that compose the Path
      */
     public Path(final Step[] steps) {
@@ -55,7 +55,7 @@ public abstract class Path extends Expression {
 
     /**
      * Learn whether the elements of the specified array are "basic" predicates.
-     * 
+     *
      * @param predicates the Expression[] to check
      * @return boolean
      */
@@ -82,7 +82,7 @@ public abstract class Path extends Expression {
 
     /**
      * Build a context from a chain of contexts.
-     * 
+     *
      * @param context              evaluation context
      * @param stepCount            number of steps to descend
      * @param createInitialContext whether to create the initial context
@@ -124,7 +124,7 @@ public abstract class Path extends Expression {
 
     /**
      * Different axes are serviced by different contexts. This method allocates the right context for the supplied step.
-     * 
+     *
      * @param context  evaluation context
      * @param axis     code
      * @param nodeTest node test
@@ -173,7 +173,7 @@ public abstract class Path extends Expression {
 
     /**
      * Given a root context, walks a path therefrom and builds a context that contains all nodes matching the path.
-     * 
+     *
      * @param context evaluation context
      * @return EvaluationContext
      */
@@ -183,7 +183,7 @@ public abstract class Path extends Expression {
 
     /**
      * Given a root context, walks a path therefrom and finds the pointer to the first element matching the path.
-     * 
+     *
      * @param context evaluation context
      * @return Pointer
      */
@@ -200,7 +200,7 @@ public abstract class Path extends Expression {
 
     /**
      * Gets the steps.
-     * 
+     *
      * @return Step[]
      */
     public Step[] getSteps() {
@@ -209,7 +209,7 @@ public abstract class Path extends Expression {
 
     /**
      * Recognizes paths formatted as {@code foo/bar[3]/baz[@name = 'biz']}. The evaluation of such "simple" paths is optimized and streamlined.
-     * 
+     *
      * @return {@code true} if this path is simple
      */
     public synchronized boolean isSimplePath() {
@@ -230,7 +230,7 @@ public abstract class Path extends Expression {
     /**
      * A Step is "simple" if it takes one of these forms: ".", "/foo", "@bar", "/foo[3]". If there are predicates, they should be context independent for the
      * step to still be considered simple.
-     * 
+     *
      * @param step the step to check
      * @return boolean
      */
@@ -270,7 +270,7 @@ public abstract class Path extends Expression {
      * child:: or attribute:: and try to evaluate the truncated path. If it finds exactly one node - create a NullPointer and return. If it fails, chop off
      * another step and repeat. If it finds more than one location - return null.
      * </p>
-     * 
+     *
      * @param context evaluation context
      * @return Pointer
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/ProcessingInstructionTest.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/ProcessingInstructionTest.java
index 43ab65a..51f8642 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/ProcessingInstructionTest.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/ProcessingInstructionTest.java
@@ -26,7 +26,7 @@ public class ProcessingInstructionTest extends NodeTest {
 
     /**
      * Constructs a new ProcessingInstructionTest.
-     * 
+     *
      * @param target string
      */
     public ProcessingInstructionTest(final String target) {
@@ -35,7 +35,7 @@ public class ProcessingInstructionTest extends NodeTest {
 
     /**
      * Gets the target.
-     * 
+     *
      * @return String
      */
     public String getTarget() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/Step.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/Step.java
index c4e0982..5595311 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/Step.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/Step.java
@@ -26,7 +26,7 @@ public class Step {
 
     /**
      * Decode an axis code to its name.
-     * 
+     *
      * @param axis int code
      * @return String name.
      * @see Compiler
@@ -71,7 +71,7 @@ public class Step {
 
     /**
      * Constructs a new Step.
-     * 
+     *
      * @param axis       axis code
      * @param nodeTest   step test
      * @param predicates predicate expressions
@@ -84,7 +84,7 @@ public class Step {
 
     /**
      * Gets the axis code.
-     * 
+     *
      * @return int
      */
     public int getAxis() {
@@ -93,7 +93,7 @@ public class Step {
 
     /**
      * Gets the step test.
-     * 
+     *
      * @return NodeTest
      */
     public NodeTest getNodeTest() {
@@ -102,7 +102,7 @@ public class Step {
 
     /**
      * Gets the predicates.
-     * 
+     *
      * @return Expression[]
      */
     public Expression[] getPredicates() {
@@ -111,7 +111,7 @@ public class Step {
 
     /**
      * Learn whether this step contains any predicate that is context dependent.
-     * 
+     *
      * @return boolean
      */
     public boolean isContextDependent() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/TreeCompiler.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/TreeCompiler.java
index d7e4c39..4a24acf 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/TreeCompiler.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/TreeCompiler.java
@@ -77,7 +77,7 @@ public class TreeCompiler implements Compiler {
 
     /**
      * Learn whether arg is a name attribute test.
-     * 
+     *
      * @param arg Expression to test
      * @return boolean
      */
@@ -189,7 +189,7 @@ public class TreeCompiler implements Compiler {
 
     /**
      * Gets an Object[] as an Expression[].
-     * 
+     *
      * @param array Object[]
      * @return Expression[]
      */
@@ -206,7 +206,7 @@ public class TreeCompiler implements Compiler {
 
     /**
      * Gets an Object[] as a Step[].
-     * 
+     *
      * @param array Object[]
      * @return Step[]
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/compiler/VariableReference.java b/src/main/java/org/apache/commons/jxpath/ri/compiler/VariableReference.java
index 6824ed7..0438e38 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/compiler/VariableReference.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/compiler/VariableReference.java
@@ -29,7 +29,7 @@ public class VariableReference extends Expression {
 
     /**
      * Constructs a new VariableReference.
-     * 
+     *
      * @param varName variable name
      */
     public VariableReference(final QName varName) {
@@ -48,7 +48,7 @@ public class VariableReference extends Expression {
 
     /**
      * Returns the value of the variable.
-     * 
+     *
      * @param context EvalContext against which to compute the variable's value.
      * @return Object
      */
@@ -59,7 +59,7 @@ public class VariableReference extends Expression {
 
     /**
      * Gets the variable name.
-     * 
+     *
      * @return QName
      */
     public QName getVariableName() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/NodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/NodeIterator.java
index 02fedf6..cf812bc 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/NodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/NodeIterator.java
@@ -24,21 +24,21 @@ public interface NodeIterator {
 
     /**
      * Gets the NodePointer at the current position.
-     * 
+     *
      * @return NodePointer
      */
     NodePointer getNodePointer();
 
     /**
      * Gets the current iterator position.
-     * 
+     *
      * @return int position
      */
     int getPosition();
 
     /**
      * Sets the new current position.
-     * 
+     *
      * @param position the position to set
      * @return {@code true} if there is a node at {@code position}.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/NodePointerFactory.java b/src/main/java/org/apache/commons/jxpath/ri/model/NodePointerFactory.java
index 7168ad7..96318ee 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/NodePointerFactory.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/NodePointerFactory.java
@@ -49,7 +49,7 @@ public interface NodePointerFactory {
 
     /**
      * The factory order number determines its position between other factories.
-     * 
+     *
      * @return int order
      */
     int getOrder();
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/VariablePointerFactory.java b/src/main/java/org/apache/commons/jxpath/ri/model/VariablePointerFactory.java
index d9b707d..5678ed8 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/VariablePointerFactory.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/VariablePointerFactory.java
@@ -25,7 +25,7 @@ import org.apache.commons.jxpath.ri.QName;
 
 /**
  * NodePointerFactory to create {@link VariablePointer VariablePointers}.
- * 
+ *
  * @since JXPath 1.3
  */
 public class VariablePointerFactory implements NodePointerFactory {
@@ -39,7 +39,7 @@ public class VariablePointerFactory implements NodePointerFactory {
 
         /**
          * Constructs a new VariableContextWrapper.
-         * 
+         *
          * @param context to wrap
          */
         private VariableContextWrapper(final JXPathContext context) {
@@ -68,7 +68,7 @@ public class VariablePointerFactory implements NodePointerFactory {
 
     /**
      * VariableContextWrapper factory method.
-     * 
+     *
      * @param context the JXPathContext to wrap.
      * @return VariableContextWrapper.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanAttributeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanAttributeIterator.java
index 6a448ab..7c4e557 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanAttributeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanAttributeIterator.java
@@ -31,7 +31,7 @@ public class BeanAttributeIterator extends PropertyIterator {
 
     /**
      * Constructs a new BeanAttributeIterator.
-     * 
+     *
      * @param parent parent pointer
      * @param qName   name of this bean
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointer.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointer.java
index 398451a..061aad8 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointer.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointer.java
@@ -31,17 +31,17 @@ import org.apache.commons.jxpath.ri.model.NodePointer;
 public class BeanPointer extends PropertyOwnerPointer {
 
     private static final long serialVersionUID = -8227317938284982440L;
-    
+
     /**
      * Qualified name.
      */
     private final QName qName;
-    
+
     /**
      * Bean.
      */
     private final Object bean;
-    
+
     /**
      * Bean info.
      */
@@ -49,7 +49,7 @@ public class BeanPointer extends PropertyOwnerPointer {
 
     /**
      * BeanPointer a new BeanPointer.
-     * 
+     *
      * @param parent   pointer
      * @param qName     is the name given to the first node
      * @param bean     pointed
@@ -64,7 +64,7 @@ public class BeanPointer extends PropertyOwnerPointer {
 
     /**
      * Constructs a new BeanPointer.
-     * 
+     *
      * @param qName     is the name given to the first node
      * @param bean     pointed
      * @param beanInfo JXPathBeanInfo
@@ -138,7 +138,7 @@ public class BeanPointer extends PropertyOwnerPointer {
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * @return 1
      */
     @Override
@@ -163,7 +163,7 @@ public class BeanPointer extends PropertyOwnerPointer {
 
     /**
      * {@inheritDoc}
-     * 
+     *
      * @return false
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointerFactory.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointerFactory.java
index 81faddb..9d86ab7 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointerFactory.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/BeanPointerFactory.java
@@ -32,7 +32,7 @@ public class BeanPointerFactory implements NodePointerFactory {
 
     /** Factory order constant */
     public static final int BEAN_POINTER_FACTORY_ORDER = 900;
-    
+
     /**
      * Constructs a new instance.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionAttributeNodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionAttributeNodeIterator.java
index a971eab..52bf874 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionAttributeNodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionAttributeNodeIterator.java
@@ -30,7 +30,7 @@ public class CollectionAttributeNodeIterator extends CollectionNodeIterator {
 
     /**
      * Constructs a new CollectionAttributeNodeIterator.
-     * 
+     *
      * @param pointer collection pointer
      * @param qName    attribute name
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionChildNodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionChildNodeIterator.java
index d2cde7f..9940fbb 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionChildNodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionChildNodeIterator.java
@@ -30,7 +30,7 @@ public class CollectionChildNodeIterator extends CollectionNodeIterator {
 
     /**
      * Constructs a new CollectionChildNodeIterator.
-     * 
+     *
      * @param pointer   CollectionPointer
      * @param test      child test
      * @param reverse   iteration order
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionNodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionNodeIterator.java
index b27d44f..faaecb5 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionNodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/CollectionNodeIterator.java
@@ -37,7 +37,7 @@ public abstract class CollectionNodeIterator implements NodeIterator {
 
     /**
      * Constructs a new CollectionNodeIterator.
-     * 
+     *
      * @param pointer   collection pointer
      * @param reverse   iteration order
      * @param startWith starting pointer
@@ -50,7 +50,7 @@ public abstract class CollectionNodeIterator implements NodeIterator {
 
     /**
      * Implemented by subclasses to produce child/attribute node iterators.
-     * 
+     *
      * @param elementPointer owning pointer
      * @return NodeIterator
      */
@@ -61,7 +61,7 @@ public abstract class CollectionNodeIterator implements NodeIterator {
         if (position == 0) {
             return null;
         }
-        return (NodePointer) collection.get(position - 1);
+        return collection.get(position - 1);
     }
 
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/LangAttributePointer.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/LangAttributePointer.java
index 50475a1..41879e7 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/LangAttributePointer.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/LangAttributePointer.java
@@ -30,7 +30,7 @@ public class LangAttributePointer extends NodePointer {
 
     /**
      * Constructs a new LangAttributePointer.
-     * 
+     *
      * @param parent parent pointer.
      */
     public LangAttributePointer(final NodePointer parent) {
@@ -105,7 +105,7 @@ public class LangAttributePointer extends NodePointer {
      * {@inheritDoc}
      *
      * Throws UnsupportedOperationException.
-     * 
+     *
      * @param value Object
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/NullElementPointer.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/NullElementPointer.java
index 5bb4d41..9b8f264 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/NullElementPointer.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/NullElementPointer.java
@@ -32,7 +32,7 @@ public class NullElementPointer extends CollectionPointer {
 
     /**
      * Constructs a new NullElementPointer.
-     * 
+     *
      * @param parent parent pointer
      * @param index  int
      */
@@ -104,7 +104,7 @@ public class NullElementPointer extends CollectionPointer {
 
     /**
      * Gets the property pointer for this.
-     * 
+     *
      * @return PropertyPointer
      */
     public PropertyPointer getPropertyPointer() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/beans/PropertyIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/beans/PropertyIterator.java
index e6df16f..3692974 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/beans/PropertyIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/beans/PropertyIterator.java
@@ -39,7 +39,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Constructs a new PropertyIterator.
-     * 
+     *
      * @param pointer   owning pointer
      * @param name      property name
      * @param reverse   iteration order
@@ -75,7 +75,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Computes length for the current pointer - ignores any exceptions.
-     * 
+     *
      * @return length
      */
     private int getLength() {
@@ -125,7 +125,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Gets the property pointer.
-     * 
+     *
      * @return NodePointer
      */
     protected NodePointer getPropertyPointer() {
@@ -134,7 +134,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Prepare for an individual property.
-     * 
+     *
      * @param name property name
      */
     protected void prepareForIndividualProperty(final String name) {
@@ -195,7 +195,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Sets position for all properties
-     * 
+     *
      * @param position int position
      * @return whether this was a valid position
      */
@@ -264,7 +264,7 @@ public class PropertyIterator implements NodeIterator {
 
     /**
      * Sets position for an individual property.
-     * 
+     *
      * @param position int position
      * @return whether this was a valid position
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributeIterator.java
index 6eb6a41..b0d9baa 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributeIterator.java
@@ -41,7 +41,7 @@ public class DOMAttributeIterator implements NodeIterator {
 
     /**
      * Constructs a new DOMAttributeIterator.
-     * 
+     *
      * @param parent pointer
      * @param qName   to test
      */
@@ -72,7 +72,7 @@ public class DOMAttributeIterator implements NodeIterator {
 
     /**
      * Gets the named attribute.
-     * 
+     *
      * @param element to search
      * @param qName    to match
      * @return Attr found
@@ -115,7 +115,7 @@ public class DOMAttributeIterator implements NodeIterator {
         if (index < 0) {
             index = 0;
         }
-        return new DOMAttributePointer(parent, (Attr) attributes.get(index));
+        return new DOMAttributePointer(parent, attributes.get(index));
     }
 
     @Override
@@ -131,7 +131,7 @@ public class DOMAttributeIterator implements NodeIterator {
 
     /**
      * Test an attribute.
-     * 
+     *
      * @param attr to test
      * @return whether test succeeded
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributePointer.java b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributePointer.java
index 67dedbe..de2d518 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributePointer.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMAttributePointer.java
@@ -31,7 +31,7 @@ import org.w3c.dom.Attr;
 public class DOMAttributePointer extends NodePointer {
 
     private static final long serialVersionUID = 1115085175427555951L;
-    
+
     /**
      * A DOM {@link Attr} node.
      */
@@ -39,7 +39,7 @@ public class DOMAttributePointer extends NodePointer {
 
     /**
      * Constructs a new DOMAttributePointer.
-     * 
+     *
      * @param parent pointer
      * @param attr   pointed
      */
@@ -135,7 +135,7 @@ public class DOMAttributePointer extends NodePointer {
 
     /**
      * Sets the value of this attribute.
-     * 
+     *
      * @param value to set
      */
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNamespaceIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNamespaceIterator.java
index b2b043e..3f1cd54 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNamespaceIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNamespaceIterator.java
@@ -38,7 +38,7 @@ public class DOMNamespaceIterator implements NodeIterator {
 
     /**
      * Constructs a new DOMNamespaceIterator.
-     * 
+     *
      * @param parent parent pointer
      */
     public DOMNamespaceIterator(final NodePointer parent) {
@@ -49,7 +49,7 @@ public class DOMNamespaceIterator implements NodeIterator {
 
     /**
      * Collect namespaces from attribute nodes.
-     * 
+     *
      * @param attributes attribute list
      * @param node       target node
      */
@@ -88,7 +88,7 @@ public class DOMNamespaceIterator implements NodeIterator {
             index = 0;
         }
         String prefix = "";
-        final Attr attr = (Attr) attributes.get(index);
+        final Attr attr = attributes.get(index);
         final String name = attr.getPrefix();
         if (name != null && name.equals("xmlns")) {
             prefix = DOMNodePointer.getLocalName(attr);
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNodeIterator.java
index 7f9a22d..b04c5e4 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dom/DOMNodeIterator.java
@@ -36,7 +36,7 @@ public class DOMNodeIterator implements NodeIterator {
 
     /**
      * Constructs a new DOMNodeIterator.
-     * 
+     *
      * @param parent    parent pointer
      * @param nodeTest  test
      * @param reverse   whether to iterate in reverse
@@ -67,7 +67,7 @@ public class DOMNodeIterator implements NodeIterator {
 
     /**
      * Sets the next position.
-     * 
+     *
      * @return whether valid
      */
     private boolean next() {
@@ -96,7 +96,7 @@ public class DOMNodeIterator implements NodeIterator {
 
     /**
      * Sets the previous position.
-     * 
+     *
      * @return whether valid
      */
     private boolean previous() {
@@ -138,7 +138,7 @@ public class DOMNodeIterator implements NodeIterator {
 
     /**
      * Test child.
-     * 
+     *
      * @return result of the test
      */
     private boolean testChild() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicAttributeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicAttributeIterator.java
index 01f704c..1e8d63b 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicAttributeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicAttributeIterator.java
@@ -29,7 +29,7 @@ public class DynamicAttributeIterator extends BeanAttributeIterator {
 
     /**
      * Constructs a new DynamicAttributeIterator.
-     * 
+     *
      * @param parent pointer
      * @param qName  to match properties
      */
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicPropertyIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicPropertyIterator.java
index aa7d9c6..52f1aa2 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicPropertyIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/dynamic/DynamicPropertyIterator.java
@@ -29,7 +29,7 @@ public class DynamicPropertyIterator extends PropertyIterator {
 
     /**
      * Constructs a new DynamicPropertyIterator
-     * 
+     *
      * @param pointer   PropertyOwnerPointer
      * @param name      String
      * @param reverse   iteration order
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMAttributeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMAttributeIterator.java
index 7cb4b0c..16a950b 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMAttributeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMAttributeIterator.java
@@ -39,7 +39,7 @@ public class JDOMAttributeIterator implements NodeIterator {
 
     /**
      * Constructs a new JDOMAttributeIterator.
-     * 
+     *
      * @param parent pointer
      * @param qName   test
      */
@@ -98,7 +98,7 @@ public class JDOMAttributeIterator implements NodeIterator {
         if (index < 0) {
             index = 0;
         }
-        return new JDOMAttributePointer(parent, (Attribute) attributes.get(index));
+        return new JDOMAttributePointer(parent, attributes.get(index));
     }
 
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNamespaceIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNamespaceIterator.java
index de415d1..af6ab75 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNamespaceIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNamespaceIterator.java
@@ -40,7 +40,7 @@ public class JDOMNamespaceIterator implements NodeIterator {
 
     /**
      * Constructs a new JDOMNamespaceIterator.
-     * 
+     *
      * @param parent the parent NodePointer.
      */
     public JDOMNamespaceIterator(final NodePointer parent) {
@@ -58,7 +58,7 @@ public class JDOMNamespaceIterator implements NodeIterator {
 
     /**
      * Collect the namespaces from a JDOM Element.
-     * 
+     *
      * @param element the source Element
      */
     private void collectNamespaces(final Element element) {
@@ -68,8 +68,8 @@ public class JDOMNamespaceIterator implements NodeIterator {
             prefixes.add(ns.getPrefix());
         }
         final List others = element.getAdditionalNamespaces();
-        for (int i = 0; i < others.size(); i++) {
-            ns = (Namespace) others.get(i);
+        for (final Object other : others) {
+            ns = (Namespace) other;
             if (ns != null && !prefixes.contains(ns.getPrefix())) {
                 namespaces.add(ns);
                 prefixes.add(ns.getPrefix());
diff --git a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNodeIterator.java b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNodeIterator.java
index 4343408..f4a1c1f 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNodeIterator.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/model/jdom/JDOMNodeIterator.java
@@ -41,7 +41,7 @@ public class JDOMNodeIterator implements NodeIterator {
 
     /**
      * Constructs a new JDOMNodeIterator.
-     * 
+     *
      * @param parent    pointer
      * @param nodeTest  test
      * @param reverse   whether to iterate in reverse
@@ -83,7 +83,7 @@ public class JDOMNodeIterator implements NodeIterator {
 
     /**
      * Iterate to next pointer.
-     * 
+     *
      * @return whether valid
      */
     private boolean next() {
@@ -125,7 +125,7 @@ public class JDOMNodeIterator implements NodeIterator {
     /**
      * This is actually never invoked during the normal evaluation of xpaths - an iterator is always going forward, never backwards. So, this is implemented
      * only for completeness and perhaps for those who use these iterators outside of XPath evaluation.
-     * 
+     *
      * @return boolean
      */
     private boolean previous() {
@@ -165,7 +165,7 @@ public class JDOMNodeIterator implements NodeIterator {
 
     /**
      * Test a child node.
-     * 
+     *
      * @return whether test passes.
      */
     private boolean testChild() {
diff --git a/src/main/java/org/apache/commons/jxpath/ri/parser/XPathParser.java b/src/main/java/org/apache/commons/jxpath/ri/parser/XPathParser.java
index eaf021b..0a1fd76 100644
--- a/src/main/java/org/apache/commons/jxpath/ri/parser/XPathParser.java
+++ b/src/main/java/org/apache/commons/jxpath/ri/parser/XPathParser.java
@@ -356,16 +356,16 @@ public class XPathParser implements XPathParserConstants {
     /*----------------------------------*/
     /*
      * The following special tokenization rules must be applied in the order specified to disambiguate the grammar:
-     * 
+     *
      * 1. If there is a preceding token and the preceding token is not one of
-     * 
+     *
      * @, ::, (, [, , or an Operator, then a * must be recognized as a MultiplyOperator and an NCName must be recognized as an OperatorName.
-     * 
+     *
      * 2. If the character following an NCName (possibly after intervening ExprWhitespace) is (, then the token must be recognized as a NodeType or a
      * FunctionName.
-     * 
+     *
      * 3. If the two characters following an NCName (possibly after intervening ExprWhitespace) are ::, then the token must be recognized as an AxisName.
-     * 
+     *
      * 4. Otherwise, the token must not be recognized as a MultiplyOperator, an OperatorName, a NodeType, a FunctionName, or an AxisName.
      */
     /*
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/Constants.java b/src/main/java/org/apache/commons/jxpath/servlet/Constants.java
index d7342a4..d20ef4c 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/Constants.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/Constants.java
@@ -42,7 +42,7 @@ public final class Constants {
      * Attribute name used in page context, requst, session, and servlet context to store the corresponding {@link org.apache.commons.jxpath.JXPathContext}.
      */
     public static final String JXPATH_CONTEXT = "org.apache.commons.jxpath.JXPATH_CONTEXT";
-    
+
     /**
      * Constructs a new instance.
      * @deprecated Will be private in the next major version.
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/HttpSessionAndServletContext.java b/src/main/java/org/apache/commons/jxpath/servlet/HttpSessionAndServletContext.java
index bb8de8e..5b8d90f 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/HttpSessionAndServletContext.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/HttpSessionAndServletContext.java
@@ -30,7 +30,7 @@ public class HttpSessionAndServletContext {
 
     /**
      * Constructs a new HttpSessionAndServletContext.
-     * 
+     *
      * @param session HttpSession
      * @param context ServletContext
      */
@@ -41,7 +41,7 @@ public class HttpSessionAndServletContext {
 
     /**
      * Gets the ServletContext.
-     * 
+     *
      * @return ServletContext
      */
     public ServletContext getServletContext() {
@@ -50,7 +50,7 @@ public class HttpSessionAndServletContext {
 
     /**
      * Gets the session.
-     * 
+     *
      * @return HttpSession
      */
     public HttpSession getSession() {
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/JXPathServletContexts.java b/src/main/java/org/apache/commons/jxpath/servlet/JXPathServletContexts.java
index 81921e3..84917b5 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/JXPathServletContexts.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/JXPathServletContexts.java
@@ -65,7 +65,7 @@ public final class JXPathServletContexts {
 
     /**
      * Returns a JXPathContext bound to the "application" scope. Caches that context within the servlet context itself.
-     * 
+     *
      * @param servletContext operative
      * @return JXPathContext
      */
@@ -81,7 +81,7 @@ public final class JXPathServletContexts {
 
     /**
      * Returns a JXPathContext bound to the "page" scope. Caches that context within the PageContext itself.
-     * 
+     *
      * @param pageContext as described
      * @return JXPathContext
      */
@@ -98,7 +98,7 @@ public final class JXPathServletContexts {
 
     /**
      * Returns a JXPathContext bound to the "request" scope. Caches that context within the request itself.
-     * 
+     *
      * @param request        as described
      * @param servletContext operative
      * @return JXPathContext
@@ -132,7 +132,7 @@ public final class JXPathServletContexts {
 
     /**
      * Returns a JXPathContext bound to the "session" scope. Caches that context within the session itself.
-     * 
+     *
      * @param session        as described
      * @param servletContext operative
      * @return JXPathContext
@@ -148,7 +148,7 @@ public final class JXPathServletContexts {
         }
         return context;
     }
-    
+
     /**
      * Constructs a new instance.
      *
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/KeywordVariables.java b/src/main/java/org/apache/commons/jxpath/servlet/KeywordVariables.java
index 0e88447..52abe01 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/KeywordVariables.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/KeywordVariables.java
@@ -25,7 +25,7 @@ import org.apache.commons.jxpath.Variables;
 public class KeywordVariables implements Variables {
 
     private static final long serialVersionUID = 894145608741325442L;
-    
+
     /**
      * The keyword.
      */
@@ -38,7 +38,7 @@ public class KeywordVariables implements Variables {
 
     /**
      * Constructs a new KeywordVariables.
-     * 
+     *
      * @param keyword The keyword.
      * @param value  The value.
      */
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/PageContextHandler.java b/src/main/java/org/apache/commons/jxpath/servlet/PageContextHandler.java
index 0d5a534..11e5ca5 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/PageContextHandler.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/PageContextHandler.java
@@ -38,7 +38,7 @@ public class PageContextHandler implements DynamicPropertyHandler {
 
     /**
      * Returns {@code pageContext.findAttribute(property)}.
-     * 
+     *
      * @param pageContext to search
      * @param property    name
      * @return Object value
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/PageScopeContext.java b/src/main/java/org/apache/commons/jxpath/servlet/PageScopeContext.java
index d5748fd..b2f98da 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/PageScopeContext.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/PageScopeContext.java
@@ -31,7 +31,7 @@ public class PageScopeContext {
 
     /**
      * Constructs a new PageScopeContext.
-     * 
+     *
      * @param pageContext base
      */
     public PageScopeContext(final PageContext pageContext) {
@@ -40,7 +40,7 @@ public class PageScopeContext {
 
     /**
      * Gets the value of the specified attribute.
-     * 
+     *
      * @param attribute name
      * @return Object
      */
@@ -50,7 +50,7 @@ public class PageScopeContext {
 
     /**
      * Returns attributes of the pageContext declared in the "page" scope.
-     * 
+     *
      * @return Enumeration of attribute names
      */
     public Enumeration<String> getAttributeNames() {
@@ -59,7 +59,7 @@ public class PageScopeContext {
 
     /**
      * Sets the specified attribute.
-     * 
+     *
      * @param attribute to set
      * @param value     to set
      */
diff --git a/src/main/java/org/apache/commons/jxpath/servlet/ServletContextHandler.java b/src/main/java/org/apache/commons/jxpath/servlet/ServletContextHandler.java
index 5a45ce2..e5c536f 100644
--- a/src/main/java/org/apache/commons/jxpath/servlet/ServletContextHandler.java
+++ b/src/main/java/org/apache/commons/jxpath/servlet/ServletContextHandler.java
@@ -40,7 +40,7 @@ public class ServletContextHandler implements DynamicPropertyHandler {
 
     /**
      * Collect the property names from bean, storing in set.
-     * 
+     *
      * @param set  destination
      * @param bean to read
      */
@@ -63,7 +63,7 @@ public class ServletContextHandler implements DynamicPropertyHandler {
     public String[] getPropertyNames(final Object context) {
         final HashSet<String> set = new HashSet<>(DEFAULT_PROPERTY_COUNT);
         collectPropertyNames(set, context);
-        return (String[]) set.toArray(new String[set.size()]);
+        return set.toArray(new String[set.size()]);
     }
 
     @Override
diff --git a/src/main/java/org/apache/commons/jxpath/util/BasicTypeConverter.java b/src/main/java/org/apache/commons/jxpath/util/BasicTypeConverter.java
index 2f8ea1c..0eb3ead 100644
--- a/src/main/java/org/apache/commons/jxpath/util/BasicTypeConverter.java
+++ b/src/main/java/org/apache/commons/jxpath/util/BasicTypeConverter.java
@@ -52,7 +52,7 @@ public class BasicTypeConverter implements TypeConverter {
 
         /**
          * Constructs a new ValueNodeSet.
-         * 
+         *
          * @param values to return
          */
         public ValueNodeSet(final List values) {
@@ -68,8 +68,8 @@ public class BasicTypeConverter implements TypeConverter {
         public List<Pointer> getPointers() {
             if (pointers == null) {
                 pointers = new ArrayList();
-                for (int i = 0; i < values.size(); i++) {
-                    pointers.add(new ValuePointer(values.get(i)));
+                for (final Object value : values) {
+                    pointers.add(new ValuePointer(value));
                 }
                 pointers = Collections.unmodifiableList(pointers);
             }
@@ -92,7 +92,7 @@ public class BasicTypeConverter implements TypeConverter {
 
         /**
          * Constructs a new ValuePointer.
-         * 
+         *
          * @param object value
          */
         public ValuePointer(final Object object) {
@@ -151,7 +151,7 @@ public class BasicTypeConverter implements TypeConverter {
         }
     }
 
-    
+
     /**
      * Constructs a new instance.
      */
@@ -161,7 +161,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Create a collection of a given type.
-     * 
+     *
      * @param type destination class
      * @return Collection
      */
@@ -184,7 +184,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Allocate a number of a given type and value.
-     * 
+     *
      * @param type  destination class
      * @param value double
      * @return Number
@@ -236,7 +236,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Returns true if it can convert the supplied object to the specified class.
-     * 
+     *
      * @param object to check
      * @param toType prospective destination class
      * @return boolean
@@ -325,7 +325,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Learn whether this BasicTypeConverter can create a collection of the specified type.
-     * 
+     *
      * @param type prospective destination class
      * @return boolean
      */
@@ -343,7 +343,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Converts the supplied object to the specified type. Throws a runtime exception if the conversion is not possible.
-     * 
+     *
      * @param object to convert
      * @param toType destination class
      * @return converted object
@@ -465,7 +465,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Convert null to a primitive type.
-     * 
+     *
      * @param toType destination class
      * @return a wrapper
      */
@@ -499,7 +499,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Convert a string to a primitive type.
-     * 
+     *
      * @param object String
      * @param toType destination class
      * @return wrapper
@@ -535,7 +535,7 @@ public class BasicTypeConverter implements TypeConverter {
 
     /**
      * Gets an unmodifiable version of a collection.
-     * 
+     *
      * @param collection to wrap
      * @return Collection
      */
diff --git a/src/main/java/org/apache/commons/jxpath/util/KeyManagerUtils.java b/src/main/java/org/apache/commons/jxpath/util/KeyManagerUtils.java
index 5aba704..36a7ffa 100644
--- a/src/main/java/org/apache/commons/jxpath/util/KeyManagerUtils.java
+++ b/src/main/java/org/apache/commons/jxpath/util/KeyManagerUtils.java
@@ -27,7 +27,7 @@ import org.apache.commons.jxpath.ri.InfoSetUtil;
 
 /**
  * Utility class.
- * 
+ *
  * @since JXPath 1.3
  */
 public class KeyManagerUtils {
@@ -41,7 +41,7 @@ public class KeyManagerUtils {
 
         /**
          * Constructs a new SingleNodeExtendedKeyManager.
-         * 
+         *
          * @param delegate KeyManager to wrap
          */
         public SingleNodeExtendedKeyManager(final KeyManager delegate) {
@@ -64,14 +64,14 @@ public class KeyManagerUtils {
 
     /**
      * Gets an ExtendedKeyManager from the specified KeyManager.
-     * 
+     *
      * @param keyManager to adapt, if necessary
      * @return {@code keyManager} if it implements ExtendedKeyManager or a basic single-result ExtendedKeyManager that delegates to {@code keyManager}.
      */
     public static ExtendedKeyManager getExtendedKeyManager(final KeyManager keyManager) {
         return keyManager instanceof ExtendedKeyManager ? (ExtendedKeyManager) keyManager : new SingleNodeExtendedKeyManager(keyManager);
     }
-    
+
     /**
      * Constructs a new instance.
      *
diff --git a/src/main/java/org/apache/commons/jxpath/util/MethodLookupUtils.java b/src/main/java/org/apache/commons/jxpath/util/MethodLookupUtils.java
index 7402069..de3ec8d 100644
--- a/src/main/java/org/apache/commons/jxpath/util/MethodLookupUtils.java
+++ b/src/main/java/org/apache/commons/jxpath/util/MethodLookupUtils.java
@@ -36,7 +36,7 @@ public class MethodLookupUtils {
 
     /**
      * Look up a constructor.
-     * 
+     *
      * @param targetClass the class constructed
      * @param parameters  arguments
      * @return Constructor found if any.
@@ -90,7 +90,7 @@ public class MethodLookupUtils {
 
     /**
      * Look up a method.
-     * 
+     *
      * @param targetClass owning class
      * @param name        method name
      * @param parameters  method parameters
@@ -156,7 +156,7 @@ public class MethodLookupUtils {
 
     /**
      * Look up a static method.
-     * 
+     *
      * @param targetClass the owning class
      * @param name        method name
      * @param parameters  method parameters
@@ -213,7 +213,7 @@ public class MethodLookupUtils {
 
     /**
      * Return a match code of objects to types.
-     * 
+     *
      * @param types      Class[] of expected types
      * @param parameters Object[] to attempt to match
      * @return int code
@@ -242,7 +242,7 @@ public class MethodLookupUtils {
 
     /**
      * Return a match code between an object and type.
-     * 
+     *
      * @param expected class to test
      * @param object   object to test
      * @return int code
@@ -263,7 +263,7 @@ public class MethodLookupUtils {
         }
         return NO_MATCH;
     }
-    
+
     /**
      * Constructs a new instance.
      *
diff --git a/src/main/java/org/apache/commons/jxpath/util/TypeConverter.java b/src/main/java/org/apache/commons/jxpath/util/TypeConverter.java
index 6b2522b..9e590bb 100644
--- a/src/main/java/org/apache/commons/jxpath/util/TypeConverter.java
+++ b/src/main/java/org/apache/commons/jxpath/util/TypeConverter.java
@@ -27,7 +27,7 @@ public interface TypeConverter {
 
     /**
      * Returns true if it can convert the supplied object to the specified class.
-     * 
+     *
      * @param object object to test
      * @param toType target class
      * @return boolean
@@ -36,7 +36,7 @@ public interface TypeConverter {
 
     /**
      * Converts the supplied object to the specified type. Throws a runtime exception if the conversion is not possible.
-     * 
+     *
      * @param object object to convert
      * @param toType target class
      * @return resulting Object
diff --git a/src/main/java/org/apache/commons/jxpath/util/TypeUtils.java b/src/main/java/org/apache/commons/jxpath/util/TypeUtils.java
index b9c4161..10e7f6e 100644
--- a/src/main/java/org/apache/commons/jxpath/util/TypeUtils.java
+++ b/src/main/java/org/apache/commons/jxpath/util/TypeUtils.java
@@ -39,7 +39,7 @@ public class TypeUtils {
 
     /**
      * Returns true if the global converter can convert the supplied object to the specified type.
-     * 
+     *
      * @param object object to test
      * @param toType target class
      * @return boolean
@@ -50,7 +50,7 @@ public class TypeUtils {
 
     /**
      * Converts the supplied object to the specified type. May throw a RuntimeException.
-     * 
+     *
      * @param object object to convert
      * @param toType target class
      * @return resulting Object
@@ -61,7 +61,7 @@ public class TypeUtils {
 
     /**
      * Returns the current type converter.
-     * 
+     *
      * @return TypeConverter
      */
     public static TypeConverter getTypeConverter() {
@@ -70,7 +70,7 @@ public class TypeUtils {
 
     /**
      * Install an alternative type converter.
-     * 
+     *
      * @param converter new TypeConverter
      */
     public static synchronized void setTypeConverter(final TypeConverter converter) {
@@ -79,7 +79,7 @@ public class TypeUtils {
 
     /**
      * Return the appropriate wrapper type for the specified class.
-     * 
+     *
      * @param p Class for which to retrieve a wrapper class.
      * @return the wrapper if {@code p} is primitive, else {@code p}.
      * @since JXPath 1.3
diff --git a/src/main/java/org/apache/commons/jxpath/util/ValueUtils.java b/src/main/java/org/apache/commons/jxpath/util/ValueUtils.java
index b47d9bd..65ee69e 100644
--- a/src/main/java/org/apache/commons/jxpath/util/ValueUtils.java
+++ b/src/main/java/org/apache/commons/jxpath/util/ValueUtils.java
@@ -45,7 +45,7 @@ public class ValueUtils {
 
     /**
      * Convert value to type.
-     * 
+     *
      * @param value Object
      * @param type  destination
      * @return conversion result
@@ -60,7 +60,7 @@ public class ValueUtils {
 
     /**
      * Grows the collection if necessary to the specified size. Returns the new, expanded collection.
-     * 
+     *
      * @param collection to expand
      * @param size       desired size
      * @return collection or array
@@ -166,7 +166,7 @@ public class ValueUtils {
 
     /**
      * Returns 1 if the type is a collection, -1 if it is definitely not and 0 if it may be a collection in some cases.
-     * 
+     *
      * @param clazz to test
      * @return int
      */
@@ -191,12 +191,12 @@ public class ValueUtils {
 
     /**
      * Returns a shared instance of the dynamic property handler class returned by {@code getDynamicPropertyHandlerClass()}.
-     * 
+     *
      * @param clazz to handle
      * @return DynamicPropertyHandler
      */
     public static DynamicPropertyHandler getDynamicPropertyHandler(final Class clazz) {
-        return (DynamicPropertyHandler) dynamicPropertyHandlerMap.computeIfAbsent(clazz, k -> {
+        return dynamicPropertyHandlerMap.computeIfAbsent(clazz, k -> {
             try {
                 return (DynamicPropertyHandler) clazz.getConstructor().newInstance();
             } catch (final Exception ex) {
@@ -209,7 +209,7 @@ public class ValueUtils {
      * If there is a regular non-indexed read method for this property, uses this method to obtain the collection and then returns its length. Otherwise,
      * attempts to guess the length of the collection by calling the indexed get method repeatedly. The method is supposed to throw an exception if the index is
      * out of bounds.
-     * 
+     *
      * @param object collection
      * @param pd     IndexedPropertyDescriptor
      * @return int
@@ -234,7 +234,7 @@ public class ValueUtils {
 
     /**
      * Returns the length of the supplied collection. If the supplied object is not a collection, returns 1. If collection is null, returns 0.
-     * 
+     *
      * @param collection to check
      * @return int
      */
@@ -254,7 +254,7 @@ public class ValueUtils {
 
     /**
      * If the parameter is a container, opens the container and return the contents. The method is recursive.
-     * 
+     *
      * @param object to read
      * @return Object
      */
@@ -267,7 +267,7 @@ public class ValueUtils {
 
     /**
      * Returns the index'th element of the supplied collection.
-     * 
+     *
      * @param collection to read
      * @param index      int
      * @return collection[index]
@@ -307,7 +307,7 @@ public class ValueUtils {
 
     /**
      * Returns the value of the bean's property represented by the supplied property descriptor.
-     * 
+     *
      * @param bean               to read
      * @param propertyDescriptor indicating what to read
      * @return Object value
@@ -329,7 +329,7 @@ public class ValueUtils {
 
     /**
      * Returns the index'th element of the bean's property represented by the supplied property descriptor.
-     * 
+     *
      * @param bean               to read
      * @param propertyDescriptor indicating what to read
      * @param index              int
@@ -359,7 +359,7 @@ public class ValueUtils {
 
     /**
      * Returns true if the object is an array or a Collection.
-     * 
+     *
      * @param value to test
      * @return boolean
      */
@@ -377,7 +377,7 @@ public class ValueUtils {
     /**
      * Returns an iterator for the supplied collection. If the argument is null, returns an empty iterator. If the argument is not a collection, returns an
      * iterator that produces just that one object.
-     * 
+     *
      * @param collection to iterate
      * @return Iterator
      */
@@ -404,7 +404,7 @@ public class ValueUtils {
 
     /**
      * Remove the index'th element from the supplied collection.
-     * 
+     *
      * @param collection to edit
      * @param index      int
      * @return the resulting collection
@@ -454,7 +454,7 @@ public class ValueUtils {
 
     /**
      * Modifies the index'th element of the supplied collection. Converts the value to the required type if necessary.
-     * 
+     *
      * @param collection to edit
      * @param index      to replace
      * @param value      new value
@@ -480,7 +480,7 @@ public class ValueUtils {
     /**
      * Modifies the index'th element of the bean's property represented by the supplied property descriptor. Converts the value to the required type if
      * necessary.
-     * 
+     *
      * @param bean               to edit
      * @param propertyDescriptor indicating what to set
      * @param index              int
@@ -512,7 +512,7 @@ public class ValueUtils {
 
     /**
      * Modifies the value of the bean's property represented by the supplied property descriptor.
-     * 
+     *
      * @param bean               to read
      * @param propertyDescriptor indicating what to read
      * @param value              to set
@@ -530,7 +530,7 @@ public class ValueUtils {
                     ex);
         }
     }
-    
+
     /**
      * Constructs a new instance.
      *
diff --git a/src/main/java/org/apache/commons/jxpath/xml/XMLParser.java b/src/main/java/org/apache/commons/jxpath/xml/XMLParser.java
index 4c587ee..13e99d3 100644
--- a/src/main/java/org/apache/commons/jxpath/xml/XMLParser.java
+++ b/src/main/java/org/apache/commons/jxpath/xml/XMLParser.java
@@ -26,7 +26,7 @@ public interface XMLParser {
 
     /**
      * Reads the supplied XML file and returns the resulting model, which is not necessarily DOM.
-     * 
+     *
      * @param stream InputStream
      * @return Object
      */
diff --git a/src/main/java/org/apache/commons/jxpath/xml/XMLParser2.java b/src/main/java/org/apache/commons/jxpath/xml/XMLParser2.java
index 99f4a52..95eeb77 100644
--- a/src/main/java/org/apache/commons/jxpath/xml/XMLParser2.java
+++ b/src/main/java/org/apache/commons/jxpath/xml/XMLParser2.java
@@ -31,7 +31,7 @@ public abstract class XMLParser2 implements XMLParser {
     private boolean ignoreComments;
     private boolean coalescing;
 
-    
+
     /**
      * Constructs a new instance for subclasses.
      */
@@ -41,7 +41,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser is coalescing.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isCoalescing()
      */
@@ -51,7 +51,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser expands entity references.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isExpandEntityReferences()
      */
@@ -61,7 +61,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser ignores comments.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isIgnoringComments()
      */
@@ -71,7 +71,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser is ignoring whitespace.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isIgnoringElementContentWhitespace()
      */
@@ -81,7 +81,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser is ns-aware.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isNamespaceAware()
      */
@@ -91,7 +91,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Learn whether the underlying parser is validating.
-     * 
+     *
      * @return boolean
      * @see javax.xml.parsers.DocumentBuilderFactory#isValidating()
      */
@@ -104,7 +104,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser is coalescing.
-     * 
+     *
      * @param coalescing flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setCoalescing(boolean)
      */
@@ -114,7 +114,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser expands entity references.
-     * 
+     *
      * @param expandEntityRef flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setExpandEntityReferences(boolean)
      */
@@ -124,7 +124,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser ignores comments.
-     * 
+     *
      * @param ignoreComments flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setIgnoringComments(boolean)
      */
@@ -134,7 +134,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser is ignoring whitespace.
-     * 
+     *
      * @param whitespace flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setIgnoringElementContentWhitespace(boolean)
      */
@@ -144,7 +144,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser is ns-aware.
-     * 
+     *
      * @param namespaceAware flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setNamespaceAware(boolean)
      */
@@ -154,7 +154,7 @@ public abstract class XMLParser2 implements XMLParser {
 
     /**
      * Sets whether the underlying parser should be validating.
-     * 
+     *
      * @param validating flag
      * @see javax.xml.parsers.DocumentBuilderFactory#setValidating(boolean)
      */
diff --git a/src/test/java/org/apache/commons/jxpath/BasicNodeSetTest.java b/src/test/java/org/apache/commons/jxpath/BasicNodeSetTest.java
index 098004e..7c2e216 100644
--- a/src/test/java/org/apache/commons/jxpath/BasicNodeSetTest.java
+++ b/src/test/java/org/apache/commons/jxpath/BasicNodeSetTest.java
@@ -50,7 +50,7 @@ public class BasicNodeSetTest extends AbstractJXPathTest {
 
     /**
      * Do assertions on DOM element names.
-     * 
+     *
      * @param names    List of expected names
      * @param elements List of DOM elements
      */
@@ -65,7 +65,7 @@ public class BasicNodeSetTest extends AbstractJXPathTest {
 
     /**
      * Do assertions on DOM element values.
-     * 
+     *
      * @param values   List of expected values
      * @param elements List of DOM elements
      */