<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Xalan-C++ API : Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<!-- The head section is copied from Doxygen 1.7.1 generated default output -->
<body>
<h2 align="center">Xalan-C++ API Documentation</h2>
<h3 align="center"><a href="../index.html">The Xalan C++ XSLT Processor Version 1.11</a></h3>
<hr/>
<!-- Generated by Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<h1>XPathExecutionContext Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="XPathExecutionContext" --><!-- doxytag: inherits="ExecutionContext" -->
<p><code>#include &lt;<a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>&gt;</code></p>

<p>Inherits <a class="el" href="classExecutionContext.html">ExecutionContext</a>.</p>

<p>Inherited by <a class="el" href="classStylesheetExecutionContext.html">StylesheetExecutionContext</a>, and <a class="el" href="classXPathExecutionContextDefault.html">XPathExecutionContextDefault</a>.</p>
<div class="dynheader">
Collaboration diagram for XPathExecutionContext:</div>
<div class="dyncontent">
<div class="center"><img src="classXPathExecutionContext__coll__graph.png" border="0" usemap="#XPathExecutionContext_coll__map" alt="Collaboration graph"/></div>
<map name="XPathExecutionContext_coll__map" id="XPathExecutionContext_coll__map">
<area shape="rect" id="node2" href="classExecutionContext.html" title="ExecutionContext" alt="" coords="17,85,151,115"/><area shape="rect" id="node4" href="classProblemListenerBase.html" title="This is the abstract class that is used when reporting a problem some kind, that requires a message..." alt="" coords="5,5,163,35"/><area shape="rect" id="node6" href="classXObjectFactory.html" title="This class handles the creation of XObjects and manages their lifetime." alt="" coords="175,85,292,115"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

<p><a href="classXPathExecutionContext-members.html">List of all members.</a></p>
<h2><a name="nested-classes"></a>
Classes</h2>
<ul>
<li>class <a class="el" href="classXPathExecutionContext_1_1ContextNodeListPushAndPop.html">ContextNodeListPushAndPop</a>
<li>class <a class="el" href="classXPathExecutionContext_1_1CurrentNodePushAndPop.html">CurrentNodePushAndPop</a>
<li>class <a class="el" href="classXPathExecutionContext_1_1GetCachedNodeList.html">GetCachedNodeList</a>
<li>class <a class="el" href="classXPathExecutionContext_1_1GetCachedString.html">GetCachedString</a>
<li>class <a class="el" href="classXPathExecutionContext_1_1PrefixResolverSetAndRestore.html">PrefixResolverSetAndRestore</a>
</ul>
<h2><a name="pub-types"></a>
Public Types</h2>
<ul>
<li>typedef <a class="el" href="classXalanVector.html">XalanVector</a>&lt; <a class="el" href="classXObjectPtr.html">XObjectPtr</a> &gt; <a class="el" href="classXPathExecutionContext.html#af0a391e595e36ca41b33fe0d42ddacd0">XObjectArgVectorType</a>
<li>typedef <a class="el" href="classNodeRefListBase.html#a4a4343b0f47a5f789bb00f5fb3556337">NodeRefListBase::size_type</a> <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">size_type</a>
<li>typedef <a class="el" href="classXPathExecutionContext_1_1GetCachedNodeList.html">GetCachedNodeList</a> <a class="el" href="classXPathExecutionContext.html#a60ef39d65df2ac84038065a2a0942f7b">BorrowReturnMutableNodeRefList</a>
<li>typedef <a class="el" href="classXPathExecutionContext_1_1GetCachedString.html">GetCachedString</a> <a class="el" href="classXPathExecutionContext.html#a4046f0aab28a956b189789fee1f6fd7a">GetAndReleaseCachedString</a>
</ul>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li><a class="el" href="classXPathExecutionContext.html#a352dacf9a4a4540f012bcf08fba2afc5">XPathExecutionContext</a> (MemoryManager &amp;theMemoryManager, <a class="el" href="classXObjectFactory.html">XObjectFactory</a> *theXObjectFactory=0)
<li>virtual <a class="el" href="classXPathExecutionContext.html#a98a126043eced8d4a3af16c39518edfb">~XPathExecutionContext</a> ()
<li>virtual void <a class="el" href="classXPathExecutionContext.html#afac3754b15fb14be8969a41fe1ebb5ed">reset</a> ()=0
<dl class="el"><dd class="mdescRight">Reset the instance.  <a href="#afac3754b15fb14be8969a41fe1ebb5ed"></a><br/></dl><li>virtual <a class="el" href="classXalanNode.html">XalanNode</a> * <a class="el" href="classXPathExecutionContext.html#a64406b0031e379a97d4d8c8f42960a05">getCurrentNode</a> () const =0
<dl class="el"><dd class="mdescRight">Retrieve the node currently being executed.  <a href="#a64406b0031e379a97d4d8c8f42960a05"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a4c453fc9ae769643a13fcf4637b268dd">pushCurrentNode</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *theCurrentNode)=0
<dl class="el"><dd class="mdescRight">Change the node currently being executed.  <a href="#a4c453fc9ae769643a13fcf4637b268dd"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a2c3806f5adebfdd38791d28d956badd4">popCurrentNode</a> ()=0
<dl class="el"><dd class="mdescRight">Reset the node currently being executed.  <a href="#a2c3806f5adebfdd38791d28d956badd4"></a><br/></dl><li><a class="el" href="classXObjectFactory.html">XObjectFactory</a> &amp; <a class="el" href="classXPathExecutionContext.html#a6429cefc174a87581764123038718d8e">getXObjectFactory</a> () const 
<dl class="el"><dd class="mdescRight">Retrieve the factory object for creating XObjects.  <a href="#a6429cefc174a87581764123038718d8e"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#ad868dbce1c9af1c3677c1ef5b7e02771">isNodeAfter</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;node1, const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;node2) const =0
<dl class="el"><dd class="mdescRight">Determine if a node is after another node, in document order.  <a href="#ad868dbce1c9af1c3677c1ef5b7e02771"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a89360acc260fff68ea54a16a044452ff">pushContextNodeList</a> (const <a class="el" href="classNodeRefListBase.html">NodeRefListBase</a> &amp;theList)=0
<dl class="el"><dd class="mdescRight">Push the node list for current context.  <a href="#a89360acc260fff68ea54a16a044452ff"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#aab4e6edaea799da779d952598a94ba70">popContextNodeList</a> ()=0
<dl class="el"><dd class="mdescRight">Pop the node list for current context.  <a href="#aab4e6edaea799da779d952598a94ba70"></a><br/></dl><li>virtual const <a class="el" href="classNodeRefListBase.html">NodeRefListBase</a> &amp; <a class="el" href="classXPathExecutionContext.html#aac0d0833a4362d2cec362d5803c601e6">getContextNodeList</a> () const =0
<dl class="el"><dd class="mdescRight">Get the node list for current context.  <a href="#aac0d0833a4362d2cec362d5803c601e6"></a><br/></dl><li>virtual <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">size_type</a> <a class="el" href="classXPathExecutionContext.html#a7b9dbf9e9f859fe91faf91bebbf118f1">getContextNodeListLength</a> () const =0
<li>virtual <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">size_type</a> <a class="el" href="classXPathExecutionContext.html#a000e57a9d58ae19a3a6f0665741b8dc9">getContextNodeListPosition</a> (const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;contextNode) const =0
<li>virtual bool <a class="el" href="classXPathExecutionContext.html#a7ad0e5f2aca38f63916b49f922c88708">elementAvailable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;theQName) const =0
<dl class="el"><dd class="mdescRight">Determine if an external element is available.  <a href="#a7ad0e5f2aca38f63916b49f922c88708"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#abf54a9abbd3792a664508c88495eebcf">elementAvailable</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theName, const Locator *locator) const =0
<dl class="el"><dd class="mdescRight">Determine if an external element is available by resolving a string to a QName.  <a href="#abf54a9abbd3792a664508c88495eebcf"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#a1d6715b090e7005eb790ac66035764cd">functionAvailable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;theQName) const =0
<dl class="el"><dd class="mdescRight">Determine if a function is available.  <a href="#a1d6715b090e7005eb790ac66035764cd"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#ab031d7eabe8b29fec50bd4829feda046">functionAvailable</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theName, const Locator *locator) const =0
<dl class="el"><dd class="mdescRight">Determine if a function is available.  <a href="#ab031d7eabe8b29fec50bd4829feda046"></a><br/></dl><li>virtual const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classXPathExecutionContext.html#a09cbae28aef8ae504b45b2f7a8e051f2">extFunction</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theNamespace, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;functionName, <a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXalanVector.html">XObjectArgVectorType</a> &amp;argVec, const Locator *locator)=0
<dl class="el"><dd class="mdescRight">Handle an extension function.  <a href="#a09cbae28aef8ae504b45b2f7a8e051f2"></a><br/></dl><li>virtual <a class="el" href="classXalanDocument.html">XalanDocument</a> * <a class="el" href="classXPathExecutionContext.html#aa583e70a4b42d056da62eb3ac1073759">parseXML</a> (MemoryManager &amp;theManager, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;urlString, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;base, ErrorHandler *theErrorHandler=0) const =0
<dl class="el"><dd class="mdescRight">Provides support for XML parsing service.  <a href="#aa583e70a4b42d056da62eb3ac1073759"></a><br/></dl><li>virtual <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> * <a class="el" href="classXPathExecutionContext.html#ad29ee0ca6d66d5a0c1ae3f2ecf95c743">borrowMutableNodeRefList</a> ()=0
<dl class="el"><dd class="mdescRight">Borrow a cached <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> instance.  <a href="#ad29ee0ca6d66d5a0c1ae3f2ecf95c743"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#a9f6a96fcfe2b7ce7af3a3e7edbf086c3">returnMutableNodeRefList</a> (<a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> *theList)=0
<dl class="el"><dd class="mdescRight">Return a previously borrowed <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> instance.  <a href="#a9f6a96fcfe2b7ce7af3a3e7edbf086c3"></a><br/></dl><li>virtual <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classXPathExecutionContext.html#a409528ace25140ff79b37bced9444547">getCachedString</a> ()=0
<dl class="el"><dd class="mdescRight">Get a cached string for temporary use.  <a href="#a409528ace25140ff79b37bced9444547"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#a348f3ead3a283705cefe1033d884e1af">releaseCachedString</a> (<a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theString)=0
<dl class="el"><dd class="mdescRight">Return a cached string.  <a href="#a348f3ead3a283705cefe1033d884e1af"></a><br/></dl><li>virtual <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> * <a class="el" href="classXPathExecutionContext.html#af17ae1499dad7eee2c4b560ee61880b9">createMutableNodeRefList</a> (MemoryManager &amp;theManager) const =0
<dl class="el"><dd class="mdescRight">Create a <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> with the appropriate context.  <a href="#af17ae1499dad7eee2c4b560ee61880b9"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#af3c61ab973e2df7f2bac90c3c7d3ad1f">getNodeSetByKey</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;qname, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;ref, const Locator *locator, <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> &amp;nodelist)=0
<dl class="el"><dd class="mdescRight">Given a valid element key, return the corresponding node list.  <a href="#af3c61ab973e2df7f2bac90c3c7d3ad1f"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a20e8224f74d32e9ce0a45d539cf031e1">getNodeSetByKey</a> (<a class="el" href="classXalanNode.html">XalanNode</a> *context, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;name, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;ref, const Locator *locator, <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> &amp;nodelist)=0
<dl class="el"><dd class="mdescRight">Given a valid element key, return the corresponding node list.  <a href="#a20e8224f74d32e9ce0a45d539cf031e1"></a><br/></dl><li>virtual const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> <a class="el" href="classXPathExecutionContext.html#ad6910a5cefd13ab0f86a1965d463e7f6">getVariable</a> (const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;name, const Locator *locator=0)=0
<dl class="el"><dd class="mdescRight">Given a name, locate a variable in the current context, and return a pointer to the object.  <a href="#ad6910a5cefd13ab0f86a1965d463e7f6"></a><br/></dl><li>virtual const <a class="el" href="classPrefixResolver.html">PrefixResolver</a> * <a class="el" href="classXPathExecutionContext.html#a23fab0428f26f89c7249352572270bd7">getPrefixResolver</a> () const =0
<dl class="el"><dd class="mdescRight">Retrieve the resolver for namespaces.  <a href="#a23fab0428f26f89c7249352572270bd7"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a94aa1cb045b73af4f48cea6c6cf5e55a">setPrefixResolver</a> (const <a class="el" href="classPrefixResolver.html">PrefixResolver</a> *thePrefixResolver)=0
<dl class="el"><dd class="mdescRight">Change the resolver for namespaces.  <a href="#a94aa1cb045b73af4f48cea6c6cf5e55a"></a><br/></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> * <a class="el" href="classXPathExecutionContext.html#a41dd08ef2367e7074a2dab1364432192">getNamespaceForPrefix</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;prefix) const =0
<dl class="el"><dd class="mdescRight">Retrieve the URI corresponding to a namespace prefix.  <a href="#a41dd08ef2367e7074a2dab1364432192"></a><br/></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classXPathExecutionContext.html#afff0b0edfd4b7a97b2f1bd07c504b690">findURIFromDoc</a> (const <a class="el" href="classXalanDocument.html">XalanDocument</a> *owner) const =0
<dl class="el"><dd class="mdescRight">Given a DOM Document, tell what URI was used to parse it.  <a href="#afff0b0edfd4b7a97b2f1bd07c504b690"></a><br/></dl><li>virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp; <a class="el" href="classXPathExecutionContext.html#ada003331cbe1b30a80820008bc32c0fc">getUnparsedEntityURI</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theName, const <a class="el" href="classXalanDocument.html">XalanDocument</a> &amp;theDocument) const =0
<dl class="el"><dd class="mdescRight">The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]).  <a href="#ada003331cbe1b30a80820008bc32c0fc"></a><br/></dl><li>virtual <a class="el" href="classXalanDocument.html">XalanDocument</a> * <a class="el" href="classXPathExecutionContext.html#a7147924c7444590b7d836749cd7cbeba">getSourceDocument</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theURI) const =0
<dl class="el"><dd class="mdescRight">Get the document associated with the given URI.  <a href="#a7147924c7444590b7d836749cd7cbeba"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a2f7aa7b69f91bd36deefb420c395332c">setSourceDocument</a> (const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;theURI, <a class="el" href="classXalanDocument.html">XalanDocument</a> *theDocument)=0
<dl class="el"><dd class="mdescRight">Associate a document with a given URI.  <a href="#a2f7aa7b69f91bd36deefb420c395332c"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#afa017ffe270df41f47cf85558a421b16">formatNumber</a> (double number, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;pattern, <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;<a class="el" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>, const <a class="el" href="classXalanNode.html">XalanNode</a> *context=0, const Locator *locator=0)=0
<dl class="el"><dd class="mdescRight">Formats a number according to the specified pattern.  <a href="#afa017ffe270df41f47cf85558a421b16"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#a7e296894d5ebd48f55b1cffebd06ec5d">formatNumber</a> (double number, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;pattern, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;dfsName, <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;<a class="el" href="XalanDOMString_8hpp.html#ad0987a2085caff760532b7f16b5c6f2e">theResult</a>, const <a class="el" href="classXalanNode.html">XalanNode</a> *context=0, const Locator *locator=0)=0
<dl class="el"><dd class="mdescRight">Formats a number according to the specified pattern.  <a href="#a7e296894d5ebd48f55b1cffebd06ec5d"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#ad968f5fdf3eb15c30783258f9f596d98">problem</a> (<a class="el" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a> source, <a class="el" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a> classification, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;msg, const Locator *locator, const <a class="el" href="classXalanNode.html">XalanNode</a> *sourceNode)=0
<dl class="el"><dd class="mdescRight"><a class="el" href="classFunction.html">Function</a> that is called when a problem event occurs.  <a href="#ad968f5fdf3eb15c30783258f9f596d98"></a><br/></dl><li>virtual void <a class="el" href="classXPathExecutionContext.html#aba684e720626568df72c1756f8a0668d">problem</a> (<a class="el" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a> source, <a class="el" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a> classification, const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;msg, const <a class="el" href="classXalanNode.html">XalanNode</a> *sourceNode)=0
<dl class="el"><dd class="mdescRight"><a class="el" href="classFunction.html">Function</a> that is called when a problem event occurs.  <a href="#aba684e720626568df72c1756f8a0668d"></a><br/></dl><li>virtual bool <a class="el" href="classXPathExecutionContext.html#af8c302eabd7cf85e25fd33d1c181f539">shouldStripSourceNode</a> (const <a class="el" href="classXalanText.html">XalanText</a> &amp;node)=0
<dl class="el"><dd class="mdescRight">Determine if a text node should be stripped from the source tree, as if it weren't there.  <a href="#af8c302eabd7cf85e25fd33d1c181f539"></a><br/></dl></ul>
<h2><a name="pro-attribs"></a>
Protected Attributes</h2>
<ul>
<li><a class="el" href="classXObjectFactory.html">XObjectFactory</a> * <a class="el" href="classXPathExecutionContext.html#a9811448a7d41ad797e9d8f2c894a88c5">m_xobjectFactory</a>
</ul>
<hr/><a name="_details"></a><h2>Detailed Description</h2>

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00079">79</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a60ef39d65df2ac84038065a2a0942f7b"></a><!-- doxytag: member="XPathExecutionContext::BorrowReturnMutableNodeRefList" ref="a60ef39d65df2ac84038065a2a0942f7b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classXPathExecutionContext_1_1GetCachedNodeList.html">GetCachedNodeList</a> <a class="el" href="classXPathExecutionContext_1_1GetCachedNodeList.html">XPathExecutionContext::BorrowReturnMutableNodeRefList</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00425">425</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4046f0aab28a956b189789fee1f6fd7a"></a><!-- doxytag: member="XPathExecutionContext::GetAndReleaseCachedString" ref="a4046f0aab28a956b189789fee1f6fd7a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classXPathExecutionContext_1_1GetCachedString.html">GetCachedString</a> <a class="el" href="classXPathExecutionContext_1_1GetCachedString.html">XPathExecutionContext::GetAndReleaseCachedString</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00502">502</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<a class="anchor" id="ada886bab8562a11693b610f8be1370ea"></a><!-- doxytag: member="XPathExecutionContext::size_type" ref="ada886bab8562a11693b610f8be1370ea" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classNodeRefListBase.html#a4a4343b0f47a5f789bb00f5fb3556337">NodeRefListBase::size_type</a> <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">XPathExecutionContext::size_type</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00085">85</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<a class="anchor" id="af0a391e595e36ca41b33fe0d42ddacd0"></a><!-- doxytag: member="XPathExecutionContext::XObjectArgVectorType" ref="af0a391e595e36ca41b33fe0d42ddacd0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classXalanVector.html">XalanVector</a>&lt;<a class="el" href="classXObjectPtr.html">XObjectPtr</a>&gt; <a class="el" href="classXalanVector.html">XPathExecutionContext::XObjectArgVectorType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00083">83</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a352dacf9a4a4540f012bcf08fba2afc5"></a><!-- doxytag: member="XPathExecutionContext::XPathExecutionContext" ref="a352dacf9a4a4540f012bcf08fba2afc5" args="(MemoryManager &amp;theMemoryManager, XObjectFactory *theXObjectFactory=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">XPathExecutionContext::XPathExecutionContext </td>
          <td>(</td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>theMemoryManager</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXObjectFactory.html">XObjectFactory</a> *&nbsp;</td>
          <td class="paramname"> <em>theXObjectFactory</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a98a126043eced8d4a3af16c39518edfb"></a><!-- doxytag: member="XPathExecutionContext::~XPathExecutionContext" ref="a98a126043eced8d4a3af16c39518edfb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual XPathExecutionContext::~XPathExecutionContext </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad29ee0ca6d66d5a0c1ae3f2ecf95c743"></a><!-- doxytag: member="XPathExecutionContext::borrowMutableNodeRefList" ref="ad29ee0ca6d66d5a0c1ae3f2ecf95c743" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a>* XPathExecutionContext::borrowMutableNodeRefList </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Borrow a cached <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> instance. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A pointer to the instance. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#afc0f3fa31118308fea6d5be5cbca9d11">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aba9af191a2db52a7d7d86f7232322e18">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a2823df833b66c1ac9af7d8cdefbb57bc">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="af17ae1499dad7eee2c4b560ee61880b9"></a><!-- doxytag: member="XPathExecutionContext::createMutableNodeRefList" ref="af17ae1499dad7eee2c4b560ee61880b9" args="(MemoryManager &amp;theManager) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a>* XPathExecutionContext::createMutableNodeRefList </td>
          <td>(</td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>theManager</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Create a <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> with the appropriate context. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to node list created </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a2c6c6981e86b613730d323d9371d1420">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a0dad880afc9ef938ca7b4d3fb2865ad5">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#ae049ab59a104214734113f4b8077cffe">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a7ad0e5f2aca38f63916b49f922c88708"></a><!-- doxytag: member="XPathExecutionContext::elementAvailable" ref="a7ad0e5f2aca38f63916b49f922c88708" args="(const XalanQName &amp;theQName) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::elementAvailable </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theQName</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if an external element is available. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theQName</em>&nbsp;</td><td>The QName of the element</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the given element is available or not </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a148c5fee5aaa9d5d00157f1d51fb5a8f">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aba0f1d03f9df061078c1206360e71297">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#aded8836dc1e5ba8e48bda47f2e8614f8">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="abf54a9abbd3792a664508c88495eebcf"></a><!-- doxytag: member="XPathExecutionContext::elementAvailable" ref="abf54a9abbd3792a664508c88495eebcf" args="(const XalanDOMString &amp;theName, const Locator *locator) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::elementAvailable </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if an external element is available by resolving a string to a QName. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>The name of the element </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>A Locator instance for error reporting</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the given element is available or not </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a0eb0c069fca0fa0c1c26a5e1b6cbb36d">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#ac24422456f142b07e87830db8cfdce5b">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a7a31190e8d0ffb2eacaccfc75f739ee9">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a09cbae28aef8ae504b45b2f7a8e051f2"></a><!-- doxytag: member="XPathExecutionContext::extFunction" ref="a09cbae28aef8ae504b45b2f7a8e051f2" args="(const XalanDOMString &amp;theNamespace, const XalanDOMString &amp;functionName, XalanNode *context, const XObjectArgVectorType &amp;argVec, const Locator *locator)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> XPathExecutionContext::extFunction </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theNamespace</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>functionName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanVector.html">XObjectArgVectorType</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>argVec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Handle an extension function. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theNamespace</em>&nbsp;</td><td>namespace of function </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>functionName</em>&nbsp;</td><td>extension function name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The context node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>argVec</em>&nbsp;</td><td>vector of arguments to function </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>A Locator instance for error reporting </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>pointer to <a class="el" href="classXObject.html" title="Class to hold XPath return types.">XObject</a> result </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ad930532c8cbae233b61de09bafea712c">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aa709b67da3b786bc6bb57d4418ffaee6">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a93655d73b3b94dafd116f45bfe3dcc04">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="afff0b0edfd4b7a97b2f1bd07c504b690"></a><!-- doxytag: member="XPathExecutionContext::findURIFromDoc" ref="afff0b0edfd4b7a97b2f1bd07c504b690" args="(const XalanDocument *owner) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; XPathExecutionContext::findURIFromDoc </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDocument.html">XalanDocument</a> *&nbsp;</td>
          <td class="paramname"> <em>owner</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Given a DOM Document, tell what URI was used to parse it. </p>
<p>Needed for relative resolution.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>owner</em>&nbsp;</td><td>source document </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>document URI </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a9e7915aff9771147d5c4afcc31bfd4cd">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aee9617e972f4b963c399137f62020a61">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#aa5c5e2acd81379d6a4bf3f43b074d5a9">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="afa017ffe270df41f47cf85558a421b16"></a><!-- doxytag: member="XPathExecutionContext::formatNumber" ref="afa017ffe270df41f47cf85558a421b16" args="(double number, const XalanDOMString &amp;pattern, XalanDOMString &amp;theResult, const XalanNode *context=0, const Locator *locator=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::formatNumber </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>number</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Formats a number according to the specified pattern. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>the number to be formatted </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>the format pattern </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>the formatted number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>the source node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>the locator </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a8f16d05041bb6b9f9fe3a0800bd4ca82">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a8a2a2269ef3c5e747e1f09216cc9be28">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a31646fdffe792ade8ca932fb36818382">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a7e296894d5ebd48f55b1cffebd06ec5d"></a><!-- doxytag: member="XPathExecutionContext::formatNumber" ref="a7e296894d5ebd48f55b1cffebd06ec5d" args="(double number, const XalanDOMString &amp;pattern, const XalanDOMString &amp;dfsName, XalanDOMString &amp;theResult, const XalanNode *context=0, const Locator *locator=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::formatNumber </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>number</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>dfsName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theResult</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em> = <code>0</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Formats a number according to the specified pattern. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>number</em>&nbsp;</td><td>the number to be formatted </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pattern</em>&nbsp;</td><td>the format pattern </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dfsName</em>&nbsp;</td><td>the name of decimal format to use </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theResult</em>&nbsp;</td><td>the formatted number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>the source node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>the locator </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the functor, 0 if none was found </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ab0191a5f003eb77b2201e290101d270e">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a4e0b5a8a715ad8fb360b42733edba595">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a169ed62c31507f6acb3264cc86aa4b27">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a1d6715b090e7005eb790ac66035764cd"></a><!-- doxytag: member="XPathExecutionContext::functionAvailable" ref="a1d6715b090e7005eb790ac66035764cd" args="(const XalanQName &amp;theQName) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::functionAvailable </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theQName</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if a function is available. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theQName</em>&nbsp;</td><td>The QName of the function</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the function is available or not </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a5c8420ad11686ccb0c3086e22a96f374">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a1e38a25e784a52fb6c25173f357dc90d">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a196e2ebdf5f8209f81d3473932f3e28b">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="ab031d7eabe8b29fec50bd4829feda046"></a><!-- doxytag: member="XPathExecutionContext::functionAvailable" ref="ab031d7eabe8b29fec50bd4829feda046" args="(const XalanDOMString &amp;theName, const Locator *locator) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::functionAvailable </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if a function is available. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>The name of the function </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>A Locator instance for error reporting</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>whether the function is available or not </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a688ebda75cbbe90afbc48e18b47f17e2">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#adc2ec323bc9299451d036dbeac058d0f">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a594c191f9dac6cde1915ffa549c5f84c">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a409528ace25140ff79b37bced9444547"></a><!-- doxytag: member="XPathExecutionContext::getCachedString" ref="a409528ace25140ff79b37bced9444547" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; XPathExecutionContext::getCachedString </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a cached string for temporary use. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>A reference to the string </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a4921f3bcca7e6c81f05fe9df38cd7eec">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a64cfadd6e1d054422c546c991f0672d8">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a616b5a0eb4939e38c7d766584ea6b6b4">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="aac0d0833a4362d2cec362d5803c601e6"></a><!-- doxytag: member="XPathExecutionContext::getContextNodeList" ref="aac0d0833a4362d2cec362d5803c601e6" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classNodeRefListBase.html">NodeRefListBase</a>&amp; XPathExecutionContext::getContextNodeList </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the node list for current context. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>node list </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a05958ceb9ff0044fda566d5b1f056fbf">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a4c3d9f0e0940fed41913fb8f8cb0db65">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a72b233eb89ac9ee7a0b2a8f14ed3d444">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a7b9dbf9e9f859fe91faf91bebbf118f1"></a><!-- doxytag: member="XPathExecutionContext::getContextNodeListLength" ref="a7b9dbf9e9f859fe91faf91bebbf118f1" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">size_type</a> XPathExecutionContext::getContextNodeListLength </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#afb5c7bee5cd7afad52b391989c337914">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a60a7e469237f692aeca5f9a8b28ffacd">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#aa2eaa02601e9bc125862b66526ddba44">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a000e57a9d58ae19a3a6f0665741b8dc9"></a><!-- doxytag: member="XPathExecutionContext::getContextNodeListPosition" ref="a000e57a9d58ae19a3a6f0665741b8dc9" args="(const XalanNode &amp;contextNode) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXPathExecutionContext.html#ada886bab8562a11693b610f8be1370ea">size_type</a> XPathExecutionContext::getContextNodeListPosition </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>contextNode</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a8a212fb9deb47ebc4f26449330c71fbf">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#ad5fbc1e9f8fa015ac224cb40466a0023">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a6aad26d3b43b43c29782411ec5ad561f">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a64406b0031e379a97d4d8c8f42960a05"></a><!-- doxytag: member="XPathExecutionContext::getCurrentNode" ref="a64406b0031e379a97d4d8c8f42960a05" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXalanNode.html">XalanNode</a>* XPathExecutionContext::getCurrentNode </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the node currently being executed. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>current node </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a049d58028ef34298db698f3234032a52">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a8417801e618cc6396c5d48e56f968e84">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#addd0294fb6f973b32dfede0095b29e0f">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a41dd08ef2367e7074a2dab1364432192"></a><!-- doxytag: member="XPathExecutionContext::getNamespaceForPrefix" ref="a41dd08ef2367e7074a2dab1364432192" args="(const XalanDOMString &amp;prefix) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>* XPathExecutionContext::getNamespaceForPrefix </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>prefix</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the URI corresponding to a namespace prefix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>prefix</em>&nbsp;</td><td>prefix for a namespace </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>URI corresponding to namespace </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a2e16b28b2ba62b648a0f17c6bcdfd63a">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a919b29857aadd37293e8a3612d6ad8c3">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#ae4fdaf7e4fb5a2ca9a825e69a3c53211">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="af3c61ab973e2df7f2bac90c3c7d3ad1f"></a><!-- doxytag: member="XPathExecutionContext::getNodeSetByKey" ref="af3c61ab973e2df7f2bac90c3c7d3ad1f" args="(XalanNode *context, const XalanQName &amp;qname, const XalanDOMString &amp;ref, const Locator *locator, MutableNodeRefList &amp;nodelist)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::getNodeSetByKey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>qname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ref</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>nodelist</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Given a valid element key, return the corresponding node list. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>context node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>qname of the key, which must match the 'name' attribute on xsl:key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ref</em>&nbsp;</td><td>value that must match the value found by the 'match' attribute on xsl:key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>The Locator to use for error reporting. Can be 0. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nodelist</em>&nbsp;</td><td>A node list to contain the nodes found </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ab0be15afae3638caac38a914237fb371">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a5a8c7af884fb71d983d72d2468d830a7">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a7e0c707727ad14e976ba51450ba017c0">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a20e8224f74d32e9ce0a45d539cf031e1"></a><!-- doxytag: member="XPathExecutionContext::getNodeSetByKey" ref="a20e8224f74d32e9ce0a45d539cf031e1" args="(XalanNode *context, const XalanDOMString &amp;name, const XalanDOMString &amp;ref, const Locator *locator, MutableNodeRefList &amp;nodelist)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::getNodeSetByKey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>context</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>ref</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>nodelist</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Given a valid element key, return the corresponding node list. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>context node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>name of the key, which must match the 'name' attribute on xsl:key. Will be resolved to a qname using the provided resolver. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ref</em>&nbsp;</td><td>value that must match the value found by the 'match' attribute on xsl:key </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>The Locator to use for error reporting. Can be 0. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nodelist</em>&nbsp;</td><td>A node list to contain the nodes found </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a8b3d8f9a1ce86d2df4b28d417a1c6014">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a4d3f9ec8f52bfdc911d0d5691563e421">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a0fd7b38ed2d9e8a08259afb632136eba">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a23fab0428f26f89c7249352572270bd7"></a><!-- doxytag: member="XPathExecutionContext::getPrefixResolver" ref="a23fab0428f26f89c7249352572270bd7" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classPrefixResolver.html">PrefixResolver</a>* XPathExecutionContext::getPrefixResolver </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the resolver for namespaces. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>object for namespace resolution </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a9d3dae10f66fef0bd7eeed089fb90058">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a66b289c2e5b61d17351e5fda9f5599bb">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#abee927c950a74c37c258af64f75db38f">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a7147924c7444590b7d836749cd7cbeba"></a><!-- doxytag: member="XPathExecutionContext::getSourceDocument" ref="a7147924c7444590b7d836749cd7cbeba" args="(const XalanDOMString &amp;theURI) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXalanDocument.html">XalanDocument</a>* XPathExecutionContext::getSourceDocument </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theURI</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get the document associated with the given URI. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theURI</em>&nbsp;</td><td>document URI </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the document instance, if any. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#aaa882488dd86e4ab4c8e79b573dcf63b">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aa4a94c2c74943533e9041dc033318b8c">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a9ff68938aa24261683283987908336f3">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="ada003331cbe1b30a80820008bc32c0fc"></a><!-- doxytag: member="XPathExecutionContext::getUnparsedEntityURI" ref="ada003331cbe1b30a80820008bc32c0fc" args="(const XalanDOMString &amp;theName, const XalanDocument &amp;theDocument) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXalanDOMString.html">XalanDOMString</a>&amp; XPathExecutionContext::getUnparsedEntityURI </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDocument.html">XalanDocument</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theDocument</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The getUnparsedEntityURI function returns the URI of the unparsed entity with the specified name in the same document as the context node (see [3.3 Unparsed Entities]). </p>
<p>It returns the empty string if there is no such entity.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>name of entity </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theDocument</em>&nbsp;</td><td>document containing entity </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>URI for the entity </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#acdded08437f8901cae3d008e21ba2236">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#ad646059dc57fa39a5b2a79d38bf743d0">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a756edd383659fac621b6b041aaa34af2">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="ad6910a5cefd13ab0f86a1965d463e7f6"></a><!-- doxytag: member="XPathExecutionContext::getVariable" ref="ad6910a5cefd13ab0f86a1965d463e7f6" args="(const XalanQName &amp;name, const Locator *locator=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classXObjectPtr.html">XObjectPtr</a> XPathExecutionContext::getVariable </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanQName.html">XalanQName</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Given a name, locate a variable in the current context, and return a pointer to the object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theName</em>&nbsp;</td><td>name of variable </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>An <a class="el" href="classXObjectPtr.html" title="Class to hold XObjectPtr return types.">XObjectPtr</a> instance. If the variable is not found, an exception is thrown, or the routine returns an instance of <a class="el" href="classXUnknown.html">XUnknown</a>. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#aabdd6ca50c03cbb4271390d5778c1048">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a6a80dca4abe01e52a98ee50007d9d43a">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a28f59fad963dffe89d538657b6a30682">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a6429cefc174a87581764123038718d8e"></a><!-- doxytag: member="XPathExecutionContext::getXObjectFactory" ref="a6429cefc174a87581764123038718d8e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXObjectFactory.html">XObjectFactory</a>&amp; XPathExecutionContext::getXObjectFactory </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve the factory object for creating XObjects. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>factory object instance </dd></dl>

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00152">152</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<a class="anchor" id="ad868dbce1c9af1c3677c1ef5b7e02771"></a><!-- doxytag: member="XPathExecutionContext::isNodeAfter" ref="ad868dbce1c9af1c3677c1ef5b7e02771" args="(const XalanNode &amp;node1, const XalanNode &amp;node2) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::isNodeAfter </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>node1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>node2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if a node is after another node, in document order. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node1</em>&nbsp;</td><td>The first node </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>node2</em>&nbsp;</td><td>The second node </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if node1 one is after node2, or false if it is not. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#acc7f4ec85eec0aa0bde725da0169bcb7">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a849b645b043035b05e31706215e0d986">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#af1bbbd23ae699fc8079ead23719da48e">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="aa583e70a4b42d056da62eb3ac1073759"></a><!-- doxytag: member="XPathExecutionContext::parseXML" ref="aa583e70a4b42d056da62eb3ac1073759" args="(MemoryManager &amp;theManager, const XalanDOMString &amp;urlString, const XalanDOMString &amp;base, ErrorHandler *theErrorHandler=0) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classXalanDocument.html">XalanDocument</a>* XPathExecutionContext::parseXML </td>
          <td>(</td>
          <td class="paramtype">MemoryManager &amp;&nbsp;</td>
          <td class="paramname"> <em>theManager</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>urlString</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ErrorHandler *&nbsp;</td>
          <td class="paramname"> <em>theErrorHandler</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Provides support for XML parsing service. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theManager</em>&nbsp;</td><td>The MemoryManager instance to use. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>urlString</em>&nbsp;</td><td>location of the XML </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>base</em>&nbsp;</td><td>base location for URI </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theErrorHandler</em>&nbsp;</td><td>An optional ErrorHandler instance for error reporting. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>parsed document </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a52d88ef1af3464e97e2856870a21b357">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a8044d71d8091af7729b59adedd24760e">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#abbf477af46ccadbf3ed536b30f8f6ffb">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="aab4e6edaea799da779d952598a94ba70"></a><!-- doxytag: member="XPathExecutionContext::popContextNodeList" ref="aab4e6edaea799da779d952598a94ba70" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::popContextNodeList </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Pop the node list for current context. </p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#abc629e1373e0742219721bd062ca2323">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a20828df842eacf62acd402dc5140e4cc">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a32b4a9a4962a4def7272e97df76fc55f">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a2c3806f5adebfdd38791d28d956badd4"></a><!-- doxytag: member="XPathExecutionContext::popCurrentNode" ref="a2c3806f5adebfdd38791d28d956badd4" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::popCurrentNode </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reset the node currently being executed. </p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ada18575c4e31474dd0ed2ef55d2a9e9b">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#acbaf41caceaece75e6d90a1752ff2548">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a050312799b6e79be5ae226d24c36327f">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="aba684e720626568df72c1756f8a0668d"></a><!-- doxytag: member="XPathExecutionContext::problem" ref="aba684e720626568df72c1756f8a0668d" args="(eSource source, eClassification classification, const XalanDOMString &amp;msg, const XalanNode *sourceNode)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::problem </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a>&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a>&nbsp;</td>
          <td class="paramname"> <em>classification</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>msg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>sourceNode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="classFunction.html">Function</a> that is called when a problem event occurs. </p>
<p>This version assumes location information is already formatted into the message.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>source</em>&nbsp;</td><td>either eXMLPARSER, eXSLPROCESSOR, or eXPATH </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>classification</em>&nbsp;</td><td>either eMESSAGE, eERROR or eWARNING </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msg</em>&nbsp;</td><td>string message explaining the problem. </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classExecutionContext.html#ac03a4ad6f7a58fb10eeaa6b027e83003">ExecutionContext</a>.</p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#adc5fd22cd952a0a93043eead9eb34afd">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a489078725f0b847c62ed54ded52091e4">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#ab2bf3ef366010729dec0ba37de0f5d7b">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="ad968f5fdf3eb15c30783258f9f596d98"></a><!-- doxytag: member="XPathExecutionContext::problem" ref="ad968f5fdf3eb15c30783258f9f596d98" args="(eSource source, eClassification classification, const XalanDOMString &amp;msg, const Locator *locator, const XalanNode *sourceNode)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::problem </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classProblemListenerBase.html#ae363b5e4919bbe4e41f6b2c1b322ee7c">eSource</a>&nbsp;</td>
          <td class="paramname"> <em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classProblemListenerBase.html#a1fec6cce6cc3429e200355330a41152a">eClassification</a>&nbsp;</td>
          <td class="paramname"> <em>classification</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>msg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Locator *&nbsp;</td>
          <td class="paramname"> <em>locator</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>sourceNode</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p><a class="el" href="classFunction.html">Function</a> that is called when a problem event occurs. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>source</em>&nbsp;</td><td>Either eXMLParser, eXSLProcessor, or eXPATH. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>classification</em>&nbsp;</td><td>Either eMessage, eWarning, or eError. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>locator</em>&nbsp;</td><td>The current Locator instance for the stylesheet. Maybe be a null pointer. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>sourceNode</em>&nbsp;</td><td>The current source node, if any. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>msg</em>&nbsp;</td><td>The error message. </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classExecutionContext.html#aef05baae1479aa180449c1abd28d5a79">ExecutionContext</a>.</p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ac2021f630141884516db1de79db4772c">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a9052a7b580c4c4beab09b1c400ed82f3">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a3b209d973f66f12979433c22b98013ce">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a89360acc260fff68ea54a16a044452ff"></a><!-- doxytag: member="XPathExecutionContext::pushContextNodeList" ref="a89360acc260fff68ea54a16a044452ff" args="(const NodeRefListBase &amp;theList)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::pushContextNodeList </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classNodeRefListBase.html">NodeRefListBase</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theList</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Push the node list for current context. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theList</em>&nbsp;</td><td>new node list </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#ae7ed78d0c7760bc7f77279597d733d98">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#ad24f419de7339c7286ec0d3c84ebaf72">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a578e961b3b48a4113c03da690cc26def">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a4c453fc9ae769643a13fcf4637b268dd"></a><!-- doxytag: member="XPathExecutionContext::pushCurrentNode" ref="a4c453fc9ae769643a13fcf4637b268dd" args="(XalanNode *theCurrentNode)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::pushCurrentNode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanNode.html">XalanNode</a> *&nbsp;</td>
          <td class="paramname"> <em>theCurrentNode</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Change the node currently being executed. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theCurrentNode</em>&nbsp;</td><td>new current node </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#af7175dae86fbe8a6b04652f7e7dc2231">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a5780784224b7ef36b559c6cea4fb8f98">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a61642ce99190894566a84088bb2f02fe">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a348f3ead3a283705cefe1033d884e1af"></a><!-- doxytag: member="XPathExecutionContext::releaseCachedString" ref="a348f3ead3a283705cefe1033d884e1af" args="(XalanDOMString &amp;theString)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::releaseCachedString </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theString</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return a cached string. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theString</em>&nbsp;</td><td>The string to release.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the string was released successfully. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#adf5e06f49194a12a1fae2b140eb3f98b">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a032d9fda10304f2814a814d93f417286">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a397648dafdd882638c94a19afdfc967c">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="afac3754b15fb14be8969a41fe1ebb5ed"></a><!-- doxytag: member="XPathExecutionContext::reset" ref="afac3754b15fb14be8969a41fe1ebb5ed" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::reset </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Reset the instance. </p>
<p>This must be called before another execution is attempted. </p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a534e1320a299bf43907cc5dda91ed132">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#aae33932735190fa0aa4ef8963837f8cf">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a15d025cd7a73dc6353a819e3c45d4b50">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a9f6a96fcfe2b7ce7af3a3e7edbf086c3"></a><!-- doxytag: member="XPathExecutionContext::returnMutableNodeRefList" ref="a9f6a96fcfe2b7ce7af3a3e7edbf086c3" args="(MutableNodeRefList *theList)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::returnMutableNodeRefList </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classMutableNodeRefList.html">MutableNodeRefList</a> *&nbsp;</td>
          <td class="paramname"> <em>theList</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Return a previously borrowed <a class="el" href="classMutableNodeRefList.html" title="Local implementation of MutableNodeRefList.">MutableNodeRefList</a> instance. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theList</em>&nbsp;</td><td>A pointer the to previously borrowed instance. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the list was borrowed (at therefore, destroyed), false if not. </dd></dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a14cbb4d53a2f0772f4be93989abf83ed">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a224b0fb4aef918719317fe7f5bb5b818">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#af0ebf9cda324cba17ec1f336935df31b">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a94aa1cb045b73af4f48cea6c6cf5e55a"></a><!-- doxytag: member="XPathExecutionContext::setPrefixResolver" ref="a94aa1cb045b73af4f48cea6c6cf5e55a" args="(const PrefixResolver *thePrefixResolver)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::setPrefixResolver </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classPrefixResolver.html">PrefixResolver</a> *&nbsp;</td>
          <td class="paramname"> <em>thePrefixResolver</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Change the resolver for namespaces. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>thePrefixResolver</em>&nbsp;</td><td>new object for namespace resolution </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#a0e9818d33f35d48a0760b6d1efa29c3d">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a8b17ddb2a13e297cb86821e5fc871055">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a93189eedef5c4069a80707cd2b0db49d">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="a2f7aa7b69f91bd36deefb420c395332c"></a><!-- doxytag: member="XPathExecutionContext::setSourceDocument" ref="a2f7aa7b69f91bd36deefb420c395332c" args="(const XalanDOMString &amp;theURI, XalanDocument *theDocument)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void XPathExecutionContext::setSourceDocument </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanDOMString.html">XalanDOMString</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>theURI</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classXalanDocument.html">XalanDocument</a> *&nbsp;</td>
          <td class="paramname"> <em>theDocument</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Associate a document with a given URI. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>theURI</em>&nbsp;</td><td>document URI </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>theDocument</em>&nbsp;</td><td>source document </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#afe5cf26969ff42411d7d33786bc5afd4">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a88555217c5a87183795cb8dda6e204f5">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a20125e65b93dd797fb2e1ace5d8eda4b">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<a class="anchor" id="af8c302eabd7cf85e25fd33d1c181f539"></a><!-- doxytag: member="XPathExecutionContext::shouldStripSourceNode" ref="af8c302eabd7cf85e25fd33d1c181f539" args="(const XalanText &amp;node)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool XPathExecutionContext::shouldStripSourceNode </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classXalanText.html">XalanText</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Determine if a text node should be stripped from the source tree, as if it weren't there. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>textNode</em>&nbsp;</td><td>text node from the source tree </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the text node should be stripped </dd></dl>

<p>Implements <a class="el" href="classExecutionContext.html#a37412900bb3314f79d6691e4d0ae3b8f">ExecutionContext</a>.</p>

<p>Implemented in <a class="el" href="classStylesheetExecutionContext.html#aaf2294b6ed8988263571fc8a4fac5343">StylesheetExecutionContext</a>, <a class="el" href="classStylesheetExecutionContextDefault.html#a8f9ce2f440e78a5392ba6c5b555b116b">StylesheetExecutionContextDefault</a>, and <a class="el" href="classXPathExecutionContextDefault.html#a710c64cbd31fa4e4cf69a425a94ad2d4">XPathExecutionContextDefault</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a9811448a7d41ad797e9d8f2c894a88c5"></a><!-- doxytag: member="XPathExecutionContext::m_xobjectFactory" ref="a9811448a7d41ad797e9d8f2c894a88c5" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classXObjectFactory.html">XObjectFactory</a>* <a class="el" href="classXPathExecutionContext.html#a9811448a7d41ad797e9d8f2c894a88c5">XPathExecutionContext::m_xobjectFactory</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="XPathExecutionContext_8hpp_source.html#l00725">725</a> of file <a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XPathExecutionContext_8hpp_source.html">XPathExecutionContext.hpp</a></li>
</ul>
</div>
<p align="center"><a href="graph_legend.html">Interpreting class diagrams</a></p>
<p><font color="#000000" face="arial,helvetica,sanserif" size="-1">
<i><a href="http://www.doxygen.org/">Doxygen</a> and 
<a href="http://www.graphviz.org/">GraphViz</a> are 
used to generate this API documentation from the Xalan-C header files.</i></font></p>

<table border="0" cellpadding="0" cellspacing="0" width="80%">
 <tr>
  <td width="80%" valign="top">
	<p align="center"><b>Xalan-C++ XSLT Processor Version 1.11</b><br/>
	Copyright &copy; 1999-2012 The Apache Software Foundation.<br/>
	All Rights Reserved.</p>
  </td>
 </tr>
 <tr>
  <td width="100%">
	<p align="center"><img src="asf_logo_wide.gif" width="268" height="25" align="bottom" border="0" alt="Apache Logo">
  </td>
 </tr>
</table>
</body>
</html>
