Class XPathFactoryImpl

    • Field Summary

      • Fields inherited from class javax.xml.xpath.XPathFactory

        DEFAULT_OBJECT_MODEL_URI, DEFAULT_PROPERTY_NAME
    • Constructor Summary

      Constructors 
      Constructor Description
      XPathFactoryImpl()
      Default constructor: this creates a Configuration as well as creating the XPathFactory.
      XPathFactoryImpl​(Configuration config)
      Constructor using a user-supplied Configuration.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Configuration getConfiguration()
      Get the Configuration object used by this XPathFactory
      boolean getFeature​(java.lang.String feature)
      Get a feature of this XPath implementation.
      boolean isObjectModelSupported​(java.lang.String model)
      Test whether a given object model is supported.
      javax.xml.xpath.XPath newXPath()
      Create an XPath evaluator
      void setConfiguration​(Configuration config)
      Set the Configuration for the factory
      void setFeature​(java.lang.String feature, boolean b)
      Set a feature of this XPath implementation.
      void setXPathFunctionResolver​(javax.xml.xpath.XPathFunctionResolver xPathFunctionResolver)
      Set a resolver for XPath functions.
      void setXPathVariableResolver​(javax.xml.xpath.XPathVariableResolver xPathVariableResolver)
      Set a resolver for XPath variables.
      • Methods inherited from class javax.xml.xpath.XPathFactory

        newDefaultInstance, newInstance, newInstance, newInstance
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • XPathFactoryImpl

        public XPathFactoryImpl()
        Default constructor: this creates a Configuration as well as creating the XPathFactory. Any documents accessed using this XPathFactory must be built using this same Configuration.
      • XPathFactoryImpl

        public XPathFactoryImpl​(Configuration config)
        Constructor using a user-supplied Configuration. This constructor is useful if the document to be queried already exists, as it allows the configuration associated with the document to be used with this XPathFactory.
        Parameters:
        config - the Saxon configuration
    • Method Detail

      • setConfiguration

        public void setConfiguration​(Configuration config)
        Set the Configuration for the factory
        Parameters:
        config - the Saxon Configuration to be used
      • getConfiguration

        public Configuration getConfiguration()
        Get the Configuration object used by this XPathFactory
        Returns:
        the Saxon configuration
      • isObjectModelSupported

        public boolean isObjectModelSupported​(java.lang.String model)
        Test whether a given object model is supported. Returns true if the object model is the Saxon object model, DOM, JDOM, DOM4J, or XOM
        Specified by:
        isObjectModelSupported in class javax.xml.xpath.XPathFactory
        Parameters:
        model - The URI identifying the object model.
        Returns:
        true if the object model is one of the following (provided that the supporting JAR file is available on the classpath) NamespaceConstant.OBJECT_MODEL_SAXON, XPathConstants.DOM_OBJECT_MODEL, NamespaceConstant.OBJECT_MODEL_JDOM, or NamespaceConstant.OBJECT_MODEL_XOM, or NamespaceConstant.OBJECT_MODEL_DOM4J. Saxon also allows user-defined external object models to be registered with the Configuration, and this method will return true in respect of any such model.
      • setFeature

        public void setFeature​(java.lang.String feature,
                               boolean b)
                        throws javax.xml.xpath.XPathFactoryConfigurationException
        Set a feature of this XPath implementation. The features currently recognized are:
        • XMLConstants.FEATURE_SECURE_PROCESSING
        • FeatureKeys.SCHEMA_VALIDATION: requests schema validation of source documents. The property is rejected if the configuration is not schema-aware.

        In addition, any Saxon configuration feature (listed in FeatureKeys can be used provided the value is a boolean. (For non-boolean configuration properties, drop down to the underlying Saxon Configuration object and call setConfigurationProperty())

        Specified by:
        setFeature in class javax.xml.xpath.XPathFactory
        Parameters:
        feature - a URI identifying the feature
        b - true to set the feature on, false to set it off
        Throws:
        javax.xml.xpath.XPathFactoryConfigurationException - if the feature name is not recognized
      • getFeature

        public boolean getFeature​(java.lang.String feature)
                           throws javax.xml.xpath.XPathFactoryConfigurationException
        Get a feature of this XPath implementation. The only features currently recognized are:

        In addition, any Saxon configuration feature (listed in FeatureKeys can be used provided the value is a boolean. (For non-boolean configuration properties, drop down to the underlying Saxon Configuration object and call getConfigurationProperty())

        Specified by:
        getFeature in class javax.xml.xpath.XPathFactory
        Parameters:
        feature - a URI identifying the feature
        Returns:
        true if the feature is on, false if it is off
        Throws:
        javax.xml.xpath.XPathFactoryConfigurationException - if the feature name is not recognized
      • setXPathVariableResolver

        public void setXPathVariableResolver​(javax.xml.xpath.XPathVariableResolver xPathVariableResolver)
        Set a resolver for XPath variables. This will be used to obtain the value of any variable referenced in an XPath expression. The variable resolver must be allocated before the expression is compiled, but it will only be called when the expression is evaluated.
        Specified by:
        setXPathVariableResolver in class javax.xml.xpath.XPathFactory
        Parameters:
        xPathVariableResolver - The object used to resolve references to variables.
      • setXPathFunctionResolver

        public void setXPathFunctionResolver​(javax.xml.xpath.XPathFunctionResolver xPathFunctionResolver)
        Set a resolver for XPath functions. This will be used to obtain an implementation of any external function referenced in an XPath expression. This is not required for system functions, Saxon extension functions, constructor functions named after types, or extension functions bound using a namespace that maps to a Java class.
        Specified by:
        setXPathFunctionResolver in class javax.xml.xpath.XPathFactory
        Parameters:
        xPathFunctionResolver - The object used to resolve references to external functions.
      • newXPath

        public javax.xml.xpath.XPath newXPath()
        Create an XPath evaluator
        Specified by:
        newXPath in class javax.xml.xpath.XPathFactory
        Returns:
        an XPath object, which can be used to compile and execute XPath expressions.