## org.apache.xpath.jaxp
Class XPathExpressionImpl

    java.lang.Object
      |
      +--org.apache.xpath.jaxp.XPathExpressionImpl

public class XPathExpressionImpl
extends java.lang.Object
implements XPathExpression

The XPathExpression interface encapsulates a (compiled) XPath expression.

Method Summary
`java.lang.Object` `eval(java.lang.Object item, QName returnType)`
`java.lang.String` `evaluate(InputSource source)` Evaluate the compiled XPath expression in the context of the specified `InputSource` and return the result as a `String`.
`java.lang.Object` `evaluate(InputSource source, QName returnType)` Evaluate the compiled XPath expression in the context of the specified `InputSource` and return the result as the specified type.
`java.lang.String` `evaluate(java.lang.Object item)` Evaluate the compiled XPath expression in the specified context and return the result as a `String`.
`java.lang.Object` `evaluate(java.lang.Object item, QName returnType)` Evaluate the compiled XPath expression in the specified context and return the result as the specified type.
`void` `setXPath(XPath xpath)`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### setXPath

    public void setXPath(XPath xpath)

### eval

    public java.lang.Object eval(java.lang.Object item,
                                 QName returnType)
                          throws TransformerException

### evaluate

    public java.lang.Object evaluate(java.lang.Object item,
                                     QName returnType)
                              throws XPathExpressionException

  Evaluate the compiled XPath expression in the specified context and return the result as the specified type.

  See "Evaluation of XPath Expressions" section of JAXP 1.3 spec for context item evaluation, variable, function and QName resolution and return type conversion.

  If `returnType` is not one of the types defined in `XPathConstants`, then an `IllegalArgumentException` is thrown.

  If a `null` value is provided for `item`, an empty document will be used for the context. If `returnType` is `null`, then a `NullPointerException` is thrown.

  Specified by:
    evaluate in interface XPathExpression
  Parameters:
    `item` - The starting context (node or node list, for example).
    `returnType` - The desired return type.
  Returns:
    The `Object` that is the result of evaluating the expression and converting the result to `returnType`.
  Throws:
    XPathExpressionException - If the expression cannot be evaluated.
    java.lang.IllegalArgumentException - If `returnType` is not one of the types defined in `XPathConstants`.
    java.lang.NullPointerException - If `returnType` is `null`.

### evaluate

    public java.lang.String evaluate(java.lang.Object item)
                              throws XPathExpressionException

  Evaluate the compiled XPath expression in the specified context and return the result as a `String`.

  This method calls `evaluate(Object item, QName returnType)` with a `returnType` of `XPathConstants.STRING`.

  See "Evaluation of XPath Expressions" section of JAXP 1.3 spec for context item evaluation, variable, function and QName resolution and return type conversion.

  If a `null` value is provided for `item`, an empty document will be used for the context.

  Specified by:
    evaluate in interface XPathExpression
  Parameters:
    `item` - The starting context (node or node list, for example).
  Returns:
    The `String` that is the result of evaluating the expression and converting the result to a `String`.
  Throws:
    XPathExpressionException - If the expression cannot be evaluated.

### evaluate

    public java.lang.Object evaluate(InputSource source,
                                     QName returnType)
                              throws XPathExpressionException

  Evaluate the compiled XPath expression in the context of the specified `InputSource` and return the result as the specified type.

  This method builds a data model for the `InputSource` and calls `evaluate(Object item, QName returnType)` on the resulting document object.

  See "Evaluation of XPath Expressions" section of JAXP 1.3 spec for context item evaluation, variable, function and QName resolution and return type conversion.

  If `returnType` is not one of the types defined in `XPathConstants`, then an `IllegalArgumentException` is thrown.

  If `source` or `returnType` is `null`, then a `NullPointerException` is thrown.

  Specified by:
    evaluate in interface XPathExpression
  Parameters:
    `source` - The `InputSource` of the document to evaluate over.
    `returnType` - The desired return type.
  Returns:
    The `Object` that is the result of evaluating the expression and converting the result to `returnType`.
  Throws:
    XPathExpressionException - If the expression cannot be evaluated.
    java.lang.IllegalArgumentException - If `returnType` is not one of the types defined in `XPathConstants`.
    java.lang.NullPointerException - If `source` or `returnType` is `null`.

### evaluate

    public java.lang.String evaluate(InputSource source)
                              throws XPathExpressionException

  Evaluate the compiled XPath expression in the context of the specified `InputSource` and return the result as a `String`.

  This method calls `evaluate(InputSource source, QName returnType)` with a `returnType` of `XPathConstants.STRING`.

  See "Evaluation of XPath Expressions" section of JAXP 1.3 spec for context item evaluation, variable, function and QName resolution and return type conversion.

  If `source` is `null`, then a `NullPointerException` is thrown.

  Specified by:
    evaluate in interface XPathExpression
  Parameters:
    `source` - The `InputSource` of the document to evaluate over.
  Returns:
    The `String` that is the result of evaluating the expression and converting the result to a `String`.
  Throws:
    XPathExpressionException - If the expression cannot be evaluated.
    java.lang.NullPointerException - If `source` is `null`.

Copyright © 2006 Apache XML Project. All Rights Reserved.