## org.apache.xalan.xpath
Interface XPathEnvSupport

All Known Subinterfaces:
  XMLParserLiaison, XPathSupport

All Known Implementing Classes:
  XSLTEngineImpl

public interface XPathEnvSupport

**For advanced use only** This class provides services that must be implemented by the hosting environment, in other words, stuff that is external to XPath. At this point, it is likely that this interface should be folded into XPathSupport.

Method Summary
`void` `associateXLocatorToNode(org.w3c.dom.Node node, XLocator xlocator)` **For advanced use only** Associate an XLocator provider to a node based on the root of the tree that the node is parented by.
`void` `deassociateXLocatorToNode(org.w3c.dom.Node node)` **For advanced use only** Deassociate an XLocator provider to a node based on the root of the tree that the node is parented by.
`boolean` `elementAvailable(java.lang.String namespace, java.lang.String extensionName)` **For advanced use only** Execute the element-available() function.
`java.lang.Object` `extFunction(java.lang.String namespace, java.lang.String extensionName, java.util.Vector argVec, java.lang.Object methodKey)` **For advanced use only** Handle an extension function.
`java.lang.String` `findURIFromDoc(org.w3c.dom.Document owner)` **For advanced use only** Given a DOM Document, tell what URI was used to parse it.
`boolean` `functionAvailable(java.lang.String namespace, java.lang.String extensionName)` **For advanced use only** Execute the function-available() function.
`org.w3c.dom.Document` `getDOMFactory()` **For advanced use only** Get a DOM document, primarily for creating result tree fragments.
`org.w3c.dom.NodeList` `getNodeSetByKey(org.w3c.dom.Node doc, java.lang.String name, java.lang.String ref, PrefixResolver nscontext)` **For advanced use only** Given a valid element key, return the corresponding node list.
`java.util.Hashtable` `getSourceDocsTable()` **For advanced use only** Get table of source tree documents.
`XObject` `getVariable(QName name)` **For advanced use only** Given a name, locate a variable in the current context, and return the Object.
`XLocator` `getXLocatorFromNode(org.w3c.dom.Node node)` **For advanced use only** Get an XLocator provider keyed by node.
`void` `setDOMFactory(org.w3c.dom.Document domFactory)` **For advanced use only** Get the factory object required to create DOM nodes in the result tree.
`boolean` `shouldStripSourceNode(org.w3c.dom.Node textNode)` **For advanced use only** Determine whether extra whitespace should be stripped from the node.

Method Detail

### getNodeSetByKey

    public org.w3c.dom.NodeList getNodeSetByKey(org.w3c.dom.Node doc,
                                                java.lang.String name,
                                                java.lang.String ref,
                                                PrefixResolver nscontext)
                                         throws org.xml.sax.SAXException

  **For advanced use only** Given a valid element key, return the corresponding node list.

### getVariable

    public XObject getVariable(QName name)
                        throws org.xml.sax.SAXException

  **For advanced use only** Given a name, locate a variable in the current context, and return the Object.

### getSourceDocsTable

    public java.util.Hashtable getSourceDocsTable()

  **For advanced use only** Get table of source tree documents. Document objects are keyed by URL string.

### findURIFromDoc

    public java.lang.String findURIFromDoc(org.w3c.dom.Document owner)

  **For advanced use only** Given a DOM Document, tell what URI was used to parse it.

### setDOMFactory

    public void setDOMFactory(org.w3c.dom.Document domFactory)

  **For advanced use only** Get the factory object required to create DOM nodes in the result tree.

### getDOMFactory

    public org.w3c.dom.Document getDOMFactory()

  **For advanced use only** Get a DOM document, primarily for creating result tree fragments.

### functionAvailable

    public boolean functionAvailable(java.lang.String namespace,
                                     java.lang.String extensionName)

  **For advanced use only** Execute the function-available() function.

### elementAvailable

    public boolean elementAvailable(java.lang.String namespace,
                                    java.lang.String extensionName)

  **For advanced use only** Execute the element-available() function.

### extFunction

    public java.lang.Object extFunction(java.lang.String namespace,
                                        java.lang.String extensionName,
                                        java.util.Vector argVec,
                                        java.lang.Object methodKey)
                                 throws org.xml.sax.SAXException

  **For advanced use only** Handle an extension function.

### getXLocatorFromNode

    public XLocator getXLocatorFromNode(org.w3c.dom.Node node)

  **For advanced use only** Get an XLocator provider keyed by node. This get's the association based on the root of the tree that the node is parented by.

### associateXLocatorToNode

    public void associateXLocatorToNode(org.w3c.dom.Node node,
                                        XLocator xlocator)

  **For advanced use only** Associate an XLocator provider to a node based on the root of the tree that the node is parented by.

### deassociateXLocatorToNode

    public void deassociateXLocatorToNode(org.w3c.dom.Node node)

  **For advanced use only** Deassociate an XLocator provider to a node based on the root of the tree that the node is parented by.

### shouldStripSourceNode

    public boolean shouldStripSourceNode(org.w3c.dom.Node textNode)
                                  throws org.xml.sax.SAXException

  **For advanced use only** Determine whether extra whitespace should be stripped from the node. The determination is based on the combination of the default-space attribute on xsl:stylesheet, xsl:strip-space, xsl:preserve-space, and the xml:space attribute. Literal elements from template elements should not be tested with this function.
  Parameters:
    `textNode` - A text node from the source tree.
  Returns:
    true if the text node should be stripped of extra whitespace.

Copyright © 2000 Apache XML Project. All Rights Reserved.