org.apache.xpath.jaxp

## Class XPathExpressionImpl

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

- All Implemented Interfaces:
    javax.xml.xpath.XPathExpression

      public class XPathExpressionImpl
      extends java.lang.Object
      implements javax.xml.xpath.XPathExpression

  The XPathExpression interface encapsulates a (compiled) XPath expression.
  Version:
    $Revision$
  Author:
    Ramesh Mandava

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `eval(java.lang.Object item, javax.xml.namespace.QName returnType)`
    `java.lang.String` | `evaluate(org.xml.sax.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(org.xml.sax.InputSource source, javax.xml.namespace.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, javax.xml.namespace.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,
                                       javax.xml.namespace.QName returnType)
                                throws javax.xml.transform.TransformerException

      Throws:
        `javax.xml.transform.TransformerException`

    - #### evaluate

          public java.lang.Object evaluate(java.lang.Object item,
                                           javax.xml.namespace.QName returnType)
                                    throws javax.xml.xpath.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 `javax.xml.xpath.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:
        `javax.xml.xpath.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 javax.xml.xpath.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 `javax.xml.xpath.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:
        `javax.xml.xpath.XPathExpressionException` - If the expression cannot be evaluated.

    - #### evaluate

          public java.lang.Object evaluate(org.xml.sax.InputSource source,
                                           javax.xml.namespace.QName returnType)
                                    throws javax.xml.xpath.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 `javax.xml.xpath.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:
        `javax.xml.xpath.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(org.xml.sax.InputSource source)
                                    throws javax.xml.xpath.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 `javax.xml.xpath.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:
        `javax.xml.xpath.XPathExpressionException` - If the expression cannot be evaluated.
        `java.lang.NullPointerException` - If `source` is `null`.

Copyright © 2023 Apache XML Project. All Rights Reserved.