XQuilla/docs/simple-api/classXQQuery.html
2020-02-17 22:19:08 +01:00

1105 lines
50 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>XQilla Simple API Documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<a style="float:right;" href="http://sourceforge.net/projects/xqilla"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=152021&amp;type=2" border="0" alt="SourceForge.net Logo" /></a>
<!-- Generated by Doxygen 1.3.9.1 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="examples.html">Examples</a></div>
<h1>XQQuery Class Reference</h1>Encapsulates a query expression.
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="XQQuery_8hpp-source.html">XQQuery.hpp</a>&gt;</code>
<p>
Inheritance diagram for XQQuery:<p><center><img src="classXQQuery__inherit__graph.png" border="0" usemap="#XQQuery__inherit__map" alt="Inheritance graph"></center>
<map name="XQQuery__inherit__map">
<area href="classxercesc_1_1XMemory.html" shape="rect" coords="5,7,136,31" alt="">
</map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classXQQuery-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#a0">~XQQuery</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <a href="#a0"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Runtime Methods</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_0">createDynamicContext</a> (<a class="el" href="classxercesc_1_1MemoryManager.html">xercesc::MemoryManager</a> *memMgr=<a class="el" href="classxercesc_1_1XMLPlatformUtils.html#z73_4">xercesc::XMLPlatformUtils::fgMemoryManager</a>) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a <a class="el" href="classDynamicContext.html">DynamicContext</a> based on the static context used to parse this query. <a href="#z5_0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classResult.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_1">execute</a> (<a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the query using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results. <a href="#z5_1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classResult.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_2">execute</a> (const <a class="el" href="classRefCountPointer.html">Item::Ptr</a> &amp;contextItem, <a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the query or stylesheet using the given context item and <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results. <a href="#z5_2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classResult.html">Result</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_3">execute</a> (const XMLCh *templateQName, <a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the stylesheet starting at the named template using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results. <a href="#z5_3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_4">execute</a> (<a class="el" href="classEventHandler.html">EventHandler</a> *events, <a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the query using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>. <a href="#z5_4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_5">execute</a> (<a class="el" href="classEventHandler.html">EventHandler</a> *events, const <a class="el" href="classRefCountPointer.html">Item::Ptr</a> &amp;contextItem, <a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the query or stylesheet using the given context item and <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>. <a href="#z5_5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_6">execute</a> (<a class="el" href="classEventHandler.html">EventHandler</a> *events, const XMLCh *templateQName, <a class="el" href="classDynamicContext.html">DynamicContext</a> *context) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Executes the stylesheet starting at the named template using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>. <a href="#z5_6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_7">staticResolution</a> (<a class="el" href="classStaticContext.html">StaticContext</a> *context=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Perform static resolution on the query. <a href="#z5_7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z5_8">staticTyping</a> (<a class="el" href="classStaticContext.html">StaticContext</a> *context=0, StaticTyper *styper=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Perform type calculation and related optimizations. <a href="#z5_8"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Query Information</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const XMLCh *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z7_0">getQueryText</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the expression that was parsed to create this XQQuery object. <a href="#z7_0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">std::string&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z7_1">getQueryPlan</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the query plan as XML. This is designed for debug and informative purposes only. <a href="#z7_1"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">Getters and Setters</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">ASTNode *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_0">getQueryBody</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the query body as an ASTNode. <a href="#z9_0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_1">setQueryBody</a> (ASTNode *query)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the query body to an ASTNode. <a href="#z9_1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_2">addFunction</a> (XQUserFunction *fnDef)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds an XQUserFunction to the query (also adds it as a template if necessary). <a href="#z9_2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="StaticContext_8hpp.html#a1">UserFunctions</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_3">getFunctions</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a vector of all XQUserFunction objects from the query. <a href="#z9_3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_4">addVariable</a> (XQGlobalVariable *varDef)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a XQGlobalVariable to the query. <a href="#z9_4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="XQQuery_8hpp.html#a0">GlobalVariables</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_5">getVariables</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a vector of all XQGlobalVariable objects from the query. <a href="#z9_5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="XQQuery_8hpp.html#a1">ImportedModules</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_6">getImportedModules</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns a vector of all XQGlobalVariable objects from the query. <a href="#z9_6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const XMLCh *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_7">getFile</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the name of the file that this query was parsed from. <a href="#z9_7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_8">setFile</a> (const XMLCh *file)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the name of the file that this query was parsed from. <a href="#z9_8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z9_9">getStaticContext</a> () const </td></tr>
<tr><td colspan="2"><div class="groupHeader">Module Methods</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z11_0">setIsLibraryModule</a> (bool bIsModule=true)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets whether this query is a module or not. <a href="#z11_0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z11_1">getIsLibraryModule</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether this query is a module or not. <a href="#z11_1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z11_2">setModuleTargetNamespace</a> (const XMLCh *uri)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the module target namespace for this query. <a href="#z11_2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const XMLCh *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z11_3">getModuleTargetNamespace</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the module taget namespace for this query. <a href="#z11_3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classXQQuery.html#z11_4">importModule</a> (const XMLCh *szUri, <a class="el" href="DocumentCache_8hpp.html#a0">VectorOfStrings</a> *locations, <a class="el" href="classStaticContext.html">StaticContext</a> *context, const <a class="el" href="classLocationInfo.html">LocationInfo</a> *location)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Performs a module import from the given target namespace and locations. <a href="#z11_4"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Encapsulates a query expression.
<p>
XQQuery objects are thread safe, and can be executed from multiple threads at the same time - provided a <a class="el" href="classDynamicContext.html">DynamicContext</a> is used per thread.<p>
Instances of this class can be created by using the parsing methods on the <a class="el" href="classXQilla.html">XQilla</a> object.<p>
This class is dependant on the <a class="el" href="classDynamicContext.html">DynamicContext</a> that was used to create it. This context must not be deleted before the XQQuery object. Normally this is acheived by the XQQuery adopting the <a class="el" href="classDynamicContext.html">DynamicContext</a> and deleting it when it is deleted. However, this behaviour can be disabled by using the <a class="el" href="classXQilla.html#w15w1">XQilla::NO_ADOPT_CONTEXT</a> flag when creating the XQQuery.
<p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="a0" doxytag="XQQuery::~XQQuery"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">XQQuery::~<a class="el" href="classXQQuery.html">XQQuery</a> </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Destructor.
<p>
</td>
</tr>
</table>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="z9_2" doxytag="XQQuery::addFunction"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::addFunction </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">XQUserFunction *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>fnDef</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Adds an XQUserFunction to the query (also adds it as a template if necessary).
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_4" doxytag="XQQuery::addVariable"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::addVariable </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">XQGlobalVariable *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>varDef</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Adds a XQGlobalVariable to the query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z5_0" doxytag="XQQuery::createDynamicContext"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classDynamicContext.html">DynamicContext</a>* XQQuery::createDynamicContext </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classxercesc_1_1MemoryManager.html">xercesc::MemoryManager</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>memMgr</em> = <code><a class="el" href="classxercesc_1_1XMLPlatformUtils.html#z73_4">xercesc::XMLPlatformUtils::fgMemoryManager</a></code> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Creates a <a class="el" href="classDynamicContext.html">DynamicContext</a> based on the static context used to parse this query.
<p>
This <a class="el" href="classDynamicContext.html">DynamicContext</a> will be suitable for using to call <a class="el" href="classXQQuery.html#z5_1">execute()</a>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>memMgr</em>&nbsp;</td><td>The memory manager used to create the <a class="el" href="classDynamicContext.html">DynamicContext</a>.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>An implementation of <a class="el" href="classDynamicContext.html">DynamicContext</a> </dd></dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_6" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classEventHandler.html">EventHandler</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>events</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const XMLCh *&nbsp;</td>
<td class="mdname" nowrap> <em>templateQName</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the stylesheet starting at the named template using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>templateQName</em>&nbsp;</td><td>The name of the template to start executing. If the QName includes a prefix, it is resolved using the in-scope namespaces for the stylesheet. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_5" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classEventHandler.html">EventHandler</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>events</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const <a class="el" href="classRefCountPointer.html">Item::Ptr</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>contextItem</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the query or stylesheet using the given context item and <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>contextItem</em>&nbsp;</td><td>The context item to use to execute the query. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_4" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classEventHandler.html">EventHandler</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>events</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the query using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, sending the output of the query to the given <a class="el" href="classEventHandler.html">EventHandler</a>.
<p>
<dl compact><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>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_3" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classResult.html">Result</a> XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const XMLCh *&nbsp;</td>
<td class="mdname" nowrap> <em>templateQName</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the stylesheet starting at the named template using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>templateQName</em>&nbsp;</td><td>The name of the template to start executing. If the QName includes a prefix, it is resolved using the in-scope namespaces for the stylesheet. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>The <a class="el" href="classResult.html">Result</a> object - a lazy iterator over the query results.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_2" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classResult.html">Result</a> XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const <a class="el" href="classRefCountPointer.html">Item::Ptr</a> &amp;&nbsp;</td>
<td class="mdname" nowrap> <em>contextItem</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the query or stylesheet using the given context item and <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results.
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>contextItem</em>&nbsp;</td><td>The context item to use to execute the query. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>context</em>&nbsp;</td><td>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>The <a class="el" href="classResult.html">Result</a> object - a lazy iterator over the query results.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_1" doxytag="XQQuery::execute"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classResult.html">Result</a> XQQuery::execute </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classDynamicContext.html">DynamicContext</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>context</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Executes the query using the given <a class="el" href="classDynamicContext.html">DynamicContext</a>, returning a lazy iterator over the results.
<p>
<dl compact><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>The <a class="el" href="classDynamicContext.html">DynamicContext</a> to use to execute the query. This contains runtime values for variables, the value of the context item, and other relevent information.</td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>The <a class="el" href="classResult.html">Result</a> object - a lazy iterator over the query results.</dd></dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a runtime error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z9_7" doxytag="XQQuery::getFile"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const XMLCh* XQQuery::getFile </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the name of the file that this query was parsed from.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_3" doxytag="XQQuery::getFunctions"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const <a class="el" href="StaticContext_8hpp.html#a1">UserFunctions</a>&amp; XQQuery::getFunctions </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const<code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns a vector of all XQUserFunction objects from the query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_6" doxytag="XQQuery::getImportedModules"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const <a class="el" href="XQQuery_8hpp.html#a1">ImportedModules</a>&amp; XQQuery::getImportedModules </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const<code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns a vector of all XQGlobalVariable objects from the query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z11_1" doxytag="XQQuery::getIsLibraryModule"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">bool XQQuery::getIsLibraryModule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns whether this query is a module or not.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z11_3" doxytag="XQQuery::getModuleTargetNamespace"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const XMLCh* XQQuery::getModuleTargetNamespace </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Gets the module taget namespace for this query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_0" doxytag="XQQuery::getQueryBody"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">ASTNode* XQQuery::getQueryBody </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Get the query body as an ASTNode.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z7_1" doxytag="XQQuery::getQueryPlan"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">std::string XQQuery::getQueryPlan </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the query plan as XML. This is designed for debug and informative purposes only.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z7_0" doxytag="XQQuery::getQueryText"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const XMLCh* XQQuery::getQueryText </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const</td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns the expression that was parsed to create this XQQuery object.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_9" doxytag="XQQuery::getStaticContext"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const <a class="el" href="classDynamicContext.html">DynamicContext</a>* XQQuery::getStaticContext </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const<code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_5" doxytag="XQQuery::getVariables"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">const <a class="el" href="XQQuery_8hpp.html#a0">GlobalVariables</a>&amp; XQQuery::getVariables </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="mdname1" valign="top" nowrap> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap> const<code> [inline]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Returns a vector of all XQGlobalVariable objects from the query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z11_4" doxytag="XQQuery::importModule"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::importModule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const XMLCh *&nbsp;</td>
<td class="mdname" nowrap> <em>szUri</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="DocumentCache_8hpp.html#a0">VectorOfStrings</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>locations</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap><a class="el" href="classStaticContext.html">StaticContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const <a class="el" href="classLocationInfo.html">LocationInfo</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>location</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Performs a module import from the given target namespace and locations.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_8" doxytag="XQQuery::setFile"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::setFile </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const XMLCh *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>file</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Sets the name of the file that this query was parsed from.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z11_0" doxytag="XQQuery::setIsLibraryModule"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::setIsLibraryModule </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">bool&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>bIsModule</em> = <code>true</code> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Sets whether this query is a module or not.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z11_2" doxytag="XQQuery::setModuleTargetNamespace"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::setModuleTargetNamespace </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">const XMLCh *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>uri</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Sets the module target namespace for this query.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z9_1" doxytag="XQQuery::setQueryBody"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::setQueryBody </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top">ASTNode *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>query</em> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Set the query body to an ASTNode.
<p>
</td>
</tr>
</table>
<a class="anchor" name="z5_7" doxytag="XQQuery::staticResolution"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::staticResolution </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classStaticContext.html">StaticContext</a> *&nbsp;</td>
<td class="mdname1" valign="top" nowrap> <em>context</em> = <code>0</code> </td>
<td class="md" valign="top">&nbsp;)&nbsp;</td>
<td class="md" nowrap></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Perform static resolution on the query.
<p>
This operation is not thread safe, and should only be performed once.<p>
Static resolution resolves prefixes to namespace URIs, variable names to variables, function names to functions, and performs some basic query optimisation.<p>
Normally this is done as part of parsing the query expression. However, if the <a class="el" href="classXQilla.html#w15w0">XQilla::NO_STATIC_RESOLUTION</a> flag was specified when the query was parsed, this method will have to be called to perform this step manually.<p>
<dl compact><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>If specified, the <a class="el" href="classStaticContext.html">StaticContext</a> to use to statically resolve this object. By default, the context used to parse the query is used. This should not need to be changed under normal usage.</td></tr>
</table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a static resolution time error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<a class="anchor" name="z5_8" doxytag="XQQuery::staticTyping"></a><p>
<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">void XQQuery::staticTyping </td>
<td class="md" valign="top">(&nbsp;</td>
<td class="md" nowrap valign="top"><a class="el" href="classStaticContext.html">StaticContext</a> *&nbsp;</td>
<td class="mdname" nowrap> <em>context</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>StaticTyper *&nbsp;</td>
<td class="mdname" nowrap> <em>styper</em> = <code>0</code></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">)&nbsp;</td>
<td class="md" colspan="2"></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
&nbsp;
</td>
<td>
<p>
Perform type calculation and related optimizations.
<p>
This operation is safe to call multiple times.<p>
Normally this step is done as part of static resolution.<p>
<dl compact><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>If specified, the <a class="el" href="classStaticContext.html">StaticContext</a> to use to statically resolve this object. By default, the context used to parse the query is used. This should not need to be changed under normal usage.</td></tr>
</table>
</dl>
<dl compact><dt><b>Exceptions:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"></td><td valign="top"><em>XQException</em>&nbsp;</td><td>If a static resolution time error occurs </td></tr>
</table>
</dl>
</td>
</tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="XQQuery_8hpp-source.html">XQQuery.hpp</a></ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Sep 25 06:55:42 2009 for XQilla Simple API by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address>
</body>
</html>