<!-- This comment will put IE 6, 7 and 8 in quirks mode --> <!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>Apache Portable Runtime Utility Library: XML</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javaScript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body onload='searchBox.OnSelectItem(0);'> <!-- Generated by Doxygen 1.6.3 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <img id="MSearchSelect" src="search/search.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </div> </li> </ul> </div> </div> <div class="contents"> <h1>XML<br/> <small> [<a class="el" href="group___a_p_r___util.html">APR Utility Functions</a>]</small> </h1><table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Data Structures</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__text.html">apr_text</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__text__header.html">apr_text_header</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__xml__attr.html">apr_xml_attr</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__xml__elem.html">apr_xml_elem</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__xml__doc.html">apr_xml_doc</a></td></tr> <tr><td colspan="2"><h2>Namespaces</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">namespace </td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_apache.html">Apache</a></td></tr> <tr><td colspan="2"><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gad856851edabebf42e4150597c6f9d2c2">APR_XML_NS_DAV_ID</a> 0</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga2eed42f7f5e2b1932141f6bb5594b042">APR_XML_NS_NONE</a> -10</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga949c1a93de86c67576a0f2f225208447">APR_XML_NS_ERROR_BASE</a> -100</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga65029fb8740ec9eb85562df1300d125f">APR_XML_NS_IS_ERROR</a>(e) ((e) <= APR_XML_NS_ERROR_BASE)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gaa5792e7a2aa38dc98a93b0762c98441f">APR_XML_ELEM_IS_EMPTY</a>(e)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gaeb48abf8de020df9bad57cfc7ca35747">APR_XML_X2T_FULL</a> 0</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga715a5e536efbfa24854531008cf4bdce">APR_XML_X2T_INNER</a> 1</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga4cd40106902732169b8fe7579ba2e67c">APR_XML_X2T_LANG_INNER</a> 2</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga7b2cd4c48940cd95a56ace294a94d938">APR_XML_X2T_FULL_NS_LANG</a> 3</td></tr> <tr><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gaf31ae94be9e1db1ee0175f7c0c40e3a7">APR_XML_GET_URI_ITEM</a>(ary, i) (((const char * const *)(ary)->elts)[i])</td></tr> <tr><td colspan="2"><h2>Typedefs</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__text.html">apr_text</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gafddd251818de0015559bc174f81fd743">apr_text</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__text__header.html">apr_text_header</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gaafc6d5ebd59b64a27146cf938a4086e0">apr_text_header</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__xml__attr.html">apr_xml_attr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga4889d4d353f0ea0dabae2d5ae58dd07e">apr_xml_attr</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga31390d11ec04137c925ddf43c2223270">apr_xml_elem</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga98eba70878b9460f2530e7a21bb6ae74">apr_xml_doc</a></td></tr> <tr><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a></td></tr> <tr><td colspan="2"><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gaf63dcaeeda623045860396304007aa49">apr_text_append</a> (apr_pool_t *p, <a class="el" href="structapr__text__header.html">apr_text_header</a> *hdr, const char *text)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga438b6b9f15ecd8c22a602c9d5f87bd5c">apr_xml_parser_create</a> (apr_pool_t *pool)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">apr_status_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gad65e09202d9f2eb46cb1d681d7005076">apr_xml_parse_file</a> (apr_pool_t *p, <a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> **parser, <a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> **ppdoc, apr_file_t *xmlfd, apr_size_t buffer_length)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">apr_status_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga8b1f79c70267b30bc56a69df0b7d05ca">apr_xml_parser_feed</a> (<a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> *parser, const char *data, apr_size_t len)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">apr_status_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga69d883e7fcaf0f98d6df69d7ff3ba523">apr_xml_parser_done</a> (<a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> *parser, <a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> **pdoc)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gade6ff47b3d0b714e2b61bc1845b47743">apr_xml_parser_geterror</a> (<a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> *parser, char *errbuf, apr_size_t errbufsize)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga4485edce130dc1e9a3da3a633a75ffb3">apr_xml_to_text</a> (apr_pool_t *p, const <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> *elem, int style, apr_array_header_t *namespaces, int *ns_map, const char **pbuf, apr_size_t *psize)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#gabb75f025859b605f28394f82154f7847">apr_xml_empty_elem</a> (apr_pool_t *p, const <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> *elem)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga084970837d60613476e8ac1abd7651f0">apr_xml_quote_string</a> (apr_pool_t *p, const char *s, int quotes)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga709c6294a67b450459669e3be45a9aba">apr_xml_quote_elem</a> (apr_pool_t *p, <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> *elem)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group___a_p_r___util___x_m_l.html#ga25a4f0e204fc99ce5000221befc55847">apr_xml_insert_uri</a> (apr_array_header_t *uri_array, const char *uri)</td></tr> </table> <hr/><h2>Define Documentation</h2> <a class="anchor" id="gaa5792e7a2aa38dc98a93b0762c98441f"></a><!-- doxytag: member="apr_xml.h::APR_XML_ELEM_IS_EMPTY" ref="gaa5792e7a2aa38dc98a93b0762c98441f" args="(e)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_ELEM_IS_EMPTY</td> <td>(</td> <td class="paramtype">e </td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <b>Value:</b><div class="fragment"><pre class="fragment">((e)->first_child == NULL && \ (e)->first_cdata.first == NULL) </pre></div><p>Is this XML element empty? </p> </div> </div> <a class="anchor" id="gaf31ae94be9e1db1ee0175f7c0c40e3a7"></a><!-- doxytag: member="apr_xml.h::APR_XML_GET_URI_ITEM" ref="gaf31ae94be9e1db1ee0175f7c0c40e3a7" args="(ary, i)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_GET_URI_ITEM</td> <td>(</td> <td class="paramtype">ary, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">i </td> <td class="paramname"></td> <td> ) </td> <td> (((const char * const *)(ary)->elts)[i])</td> </tr> </table> </div> <div class="memdoc"> <p>Get the URI item for this XML element </p> </div> </div> <a class="anchor" id="gad856851edabebf42e4150597c6f9d2c2"></a><!-- doxytag: member="apr_xml.h::APR_XML_NS_DAV_ID" ref="gad856851edabebf42e4150597c6f9d2c2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_NS_DAV_ID 0</td> </tr> </table> </div> <div class="memdoc"> <p>namespace ID for "DAV:" </p> </div> </div> <a class="anchor" id="ga949c1a93de86c67576a0f2f225208447"></a><!-- doxytag: member="apr_xml.h::APR_XML_NS_ERROR_BASE" ref="ga949c1a93de86c67576a0f2f225208447" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_NS_ERROR_BASE -100</td> </tr> </table> </div> <div class="memdoc"> <p>used only during processing </p> </div> </div> <a class="anchor" id="ga65029fb8740ec9eb85562df1300d125f"></a><!-- doxytag: member="apr_xml.h::APR_XML_NS_IS_ERROR" ref="ga65029fb8740ec9eb85562df1300d125f" args="(e)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_NS_IS_ERROR</td> <td>(</td> <td class="paramtype">e </td> <td class="paramname"></td> <td> ) </td> <td> ((e) <= APR_XML_NS_ERROR_BASE)</td> </tr> </table> </div> <div class="memdoc"> <p>Is this namespace an error? </p> </div> </div> <a class="anchor" id="ga2eed42f7f5e2b1932141f6bb5594b042"></a><!-- doxytag: member="apr_xml.h::APR_XML_NS_NONE" ref="ga2eed42f7f5e2b1932141f6bb5594b042" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_NS_NONE -10</td> </tr> </table> </div> <div class="memdoc"> <p>no namespace for this elem/attr </p> </div> </div> <a class="anchor" id="gaeb48abf8de020df9bad57cfc7ca35747"></a><!-- doxytag: member="apr_xml.h::APR_XML_X2T_FULL" ref="gaeb48abf8de020df9bad57cfc7ca35747" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_X2T_FULL 0</td> </tr> </table> </div> <div class="memdoc"> <p>start tag, contents, end tag </p> </div> </div> <a class="anchor" id="ga7b2cd4c48940cd95a56ace294a94d938"></a><!-- doxytag: member="apr_xml.h::APR_XML_X2T_FULL_NS_LANG" ref="ga7b2cd4c48940cd95a56ace294a94d938" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_X2T_FULL_NS_LANG 3</td> </tr> </table> </div> <div class="memdoc"> <p>FULL + ns defns + xml:lang </p> </div> </div> <a class="anchor" id="ga715a5e536efbfa24854531008cf4bdce"></a><!-- doxytag: member="apr_xml.h::APR_XML_X2T_INNER" ref="ga715a5e536efbfa24854531008cf4bdce" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_X2T_INNER 1</td> </tr> </table> </div> <div class="memdoc"> <p>contents only </p> </div> </div> <a class="anchor" id="ga4cd40106902732169b8fe7579ba2e67c"></a><!-- doxytag: member="apr_xml.h::APR_XML_X2T_LANG_INNER" ref="ga4cd40106902732169b8fe7579ba2e67c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define APR_XML_X2T_LANG_INNER 2</td> </tr> </table> </div> <div class="memdoc"> <p>xml:lang + inner contents </p> </div> </div> <hr/><h2>Typedef Documentation</h2> <a class="anchor" id="gafddd251818de0015559bc174f81fd743"></a><!-- doxytag: member="apr_xml.h::apr_text" ref="gafddd251818de0015559bc174f81fd743" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="structapr__text.html">apr_text</a> <a class="el" href="structapr__text.html">apr_text</a></td> </tr> </table> </div> <div class="memdoc"> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structapr__text.html">apr_text</a> </dd></dl> </div> </div> <a class="anchor" id="gaafc6d5ebd59b64a27146cf938a4086e0"></a><!-- doxytag: member="apr_xml.h::apr_text_header" ref="gaafc6d5ebd59b64a27146cf938a4086e0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="structapr__text__header.html">apr_text_header</a> <a class="el" href="structapr__text__header.html">apr_text_header</a></td> </tr> </table> </div> <div class="memdoc"> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structapr__text__header.html">apr_text_header</a> </dd></dl> </div> </div> <a class="anchor" id="ga4889d4d353f0ea0dabae2d5ae58dd07e"></a><!-- doxytag: member="apr_xml.h::apr_xml_attr" ref="ga4889d4d353f0ea0dabae2d5ae58dd07e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="structapr__xml__attr.html">apr_xml_attr</a> <a class="el" href="structapr__xml__attr.html">apr_xml_attr</a></td> </tr> </table> </div> <div class="memdoc"> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structapr__xml__attr.html">apr_xml_attr</a> </dd></dl> </div> </div> <a class="anchor" id="ga98eba70878b9460f2530e7a21bb6ae74"></a><!-- doxytag: member="apr_xml.h::apr_xml_doc" ref="ga98eba70878b9460f2530e7a21bb6ae74" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> <a class="el" href="structapr__xml__doc.html">apr_xml_doc</a></td> </tr> </table> </div> <div class="memdoc"> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> </dd></dl> </div> </div> <a class="anchor" id="ga31390d11ec04137c925ddf43c2223270"></a><!-- doxytag: member="apr_xml.h::apr_xml_elem" ref="ga31390d11ec04137c925ddf43c2223270" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a></td> </tr> </table> </div> <div class="memdoc"> <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> </dd></dl> </div> </div> <a class="anchor" id="gab08a1c255615afda782318811a5053d9"></a><!-- doxytag: member="apr_xml.h::apr_xml_parser" ref="gab08a1c255615afda782318811a5053d9" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef struct <a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> <a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a></td> </tr> </table> </div> <div class="memdoc"> <p>Opaque XML parser structure </p> </div> </div> <hr/><h2>Function Documentation</h2> <a class="anchor" id="gaf63dcaeeda623045860396304007aa49"></a><!-- doxytag: member="apr_xml.h::apr_text_append" ref="gaf63dcaeeda623045860396304007aa49" args="(apr_pool_t *p, apr_text_header *hdr, const char *text)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void apr_text_append </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structapr__text__header.html">apr_text_header</a> * </td> <td class="paramname"> <em>hdr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>text</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Append a piece of text to the end of a 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>p</em> </td><td>The pool to allocate out of </td></tr> <tr><td valign="top"></td><td valign="top"><em>hdr</em> </td><td>The text header to append to </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>The new text to append </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gabb75f025859b605f28394f82154f7847"></a><!-- doxytag: member="apr_xml.h::apr_xml_empty_elem" ref="gabb75f025859b605f28394f82154f7847" args="(apr_pool_t *p, const apr_xml_elem *elem)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* apr_xml_empty_elem </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> * </td> <td class="paramname"> <em>elem</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>empty XML element </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>The pool to allocate out of </td></tr> <tr><td valign="top"></td><td valign="top"><em>elem</em> </td><td>The XML element to empty </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>the string that was stored in the XML element </dd></dl> </div> </div> <a class="anchor" id="ga25a4f0e204fc99ce5000221befc55847"></a><!-- doxytag: member="apr_xml.h::apr_xml_insert_uri" ref="ga25a4f0e204fc99ce5000221befc55847" args="(apr_array_header_t *uri_array, const char *uri)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int apr_xml_insert_uri </td> <td>(</td> <td class="paramtype">apr_array_header_t * </td> <td class="paramname"> <em>uri_array</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>uri</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>return the URI's (existing) index, or insert it and return a new index </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>uri_array</em> </td><td>array to insert into </td></tr> <tr><td valign="top"></td><td valign="top"><em>uri</em> </td><td>The uri to insert </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>int The uri's index </dd></dl> </div> </div> <a class="anchor" id="gad65e09202d9f2eb46cb1d681d7005076"></a><!-- doxytag: member="apr_xml.h::apr_xml_parse_file" ref="gad65e09202d9f2eb46cb1d681d7005076" args="(apr_pool_t *p, apr_xml_parser **parser, apr_xml_doc **ppdoc, apr_file_t *xmlfd, apr_size_t buffer_length)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t apr_xml_parse_file </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> ** </td> <td class="paramname"> <em>parser</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> ** </td> <td class="paramname"> <em>ppdoc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_file_t * </td> <td class="paramname"> <em>xmlfd</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_size_t </td> <td class="paramname"> <em>buffer_length</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Parse a File, producing a xml_doc </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>The pool for allocating the parse results. </td></tr> <tr><td valign="top"></td><td valign="top"><em>parser</em> </td><td>A pointer to *parser (needed so calling function can get errors), will be set to NULL on successful completion. </td></tr> <tr><td valign="top"></td><td valign="top"><em>ppdoc</em> </td><td>A pointer to *apr_xml_doc (which has the parsed results in it) </td></tr> <tr><td valign="top"></td><td valign="top"><em>xmlfd</em> </td><td>A file to read from. </td></tr> <tr><td valign="top"></td><td valign="top"><em>buffer_length</em> </td><td>Buffer length which would be suitable </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>Any errors found during parsing. </dd></dl> </div> </div> <a class="anchor" id="ga438b6b9f15ecd8c22a602c9d5f87bd5c"></a><!-- doxytag: member="apr_xml.h::apr_xml_parser_create" ref="ga438b6b9f15ecd8c22a602c9d5f87bd5c" args="(apr_pool_t *pool)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a>* apr_xml_parser_create </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>pool</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Create an XML parser </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>pool</em> </td><td>The pool for allocating the parser and the parse results. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>The new parser. </dd></dl> </div> </div> <a class="anchor" id="ga69d883e7fcaf0f98d6df69d7ff3ba523"></a><!-- doxytag: member="apr_xml.h::apr_xml_parser_done" ref="ga69d883e7fcaf0f98d6df69d7ff3ba523" args="(apr_xml_parser *parser, apr_xml_doc **pdoc)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t apr_xml_parser_done </td> <td>(</td> <td class="paramtype"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> * </td> <td class="paramname"> <em>parser</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structapr__xml__doc.html">apr_xml_doc</a> ** </td> <td class="paramname"> <em>pdoc</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Terminate the parsing and return the result </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>parser</em> </td><td>The XML parser for parsing this data. </td></tr> <tr><td valign="top"></td><td valign="top"><em>pdoc</em> </td><td>The resulting parse information. May be NULL to simply terminate the parsing without fetching the info. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>Any errors found during the final stage of parsing. </dd></dl> <dl class="remark"><dt><b>Remarks:</b></dt><dd>Use <a class="el" href="group___a_p_r___util___x_m_l.html#gade6ff47b3d0b714e2b61bc1845b47743">apr_xml_parser_geterror()</a> to get more error information. </dd></dl> </div> </div> <a class="anchor" id="ga8b1f79c70267b30bc56a69df0b7d05ca"></a><!-- doxytag: member="apr_xml.h::apr_xml_parser_feed" ref="ga8b1f79c70267b30bc56a69df0b7d05ca" args="(apr_xml_parser *parser, const char *data, apr_size_t len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t apr_xml_parser_feed </td> <td>(</td> <td class="paramtype"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> * </td> <td class="paramname"> <em>parser</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_size_t </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Feed input into the parser </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>parser</em> </td><td>The XML parser for parsing this data. </td></tr> <tr><td valign="top"></td><td valign="top"><em>data</em> </td><td>The data to parse. </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>The length of the data. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>Any errors found during parsing. </dd></dl> <dl class="remark"><dt><b>Remarks:</b></dt><dd>Use <a class="el" href="group___a_p_r___util___x_m_l.html#gade6ff47b3d0b714e2b61bc1845b47743">apr_xml_parser_geterror()</a> to get more error information. </dd></dl> </div> </div> <a class="anchor" id="gade6ff47b3d0b714e2b61bc1845b47743"></a><!-- doxytag: member="apr_xml.h::apr_xml_parser_geterror" ref="gade6ff47b3d0b714e2b61bc1845b47743" args="(apr_xml_parser *parser, char *errbuf, apr_size_t errbufsize)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">char* apr_xml_parser_geterror </td> <td>(</td> <td class="paramtype"><a class="el" href="group___a_p_r___util___x_m_l.html#gab08a1c255615afda782318811a5053d9">apr_xml_parser</a> * </td> <td class="paramname"> <em>parser</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"> <em>errbuf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_size_t </td> <td class="paramname"> <em>errbufsize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Fetch additional error information from the parser. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>parser</em> </td><td>The XML parser to query for errors. </td></tr> <tr><td valign="top"></td><td valign="top"><em>errbuf</em> </td><td>A buffer for storing error text. </td></tr> <tr><td valign="top"></td><td valign="top"><em>errbufsize</em> </td><td>The length of the error text buffer. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>The error buffer </dd></dl> </div> </div> <a class="anchor" id="ga709c6294a67b450459669e3be45a9aba"></a><!-- doxytag: member="apr_xml.h::apr_xml_quote_elem" ref="ga709c6294a67b450459669e3be45a9aba" args="(apr_pool_t *p, apr_xml_elem *elem)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void apr_xml_quote_elem </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> * </td> <td class="paramname"> <em>elem</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Quote an XML element </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>The pool to allocate out of </td></tr> <tr><td valign="top"></td><td valign="top"><em>elem</em> </td><td>The element to quote </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga084970837d60613476e8ac1abd7651f0"></a><!-- doxytag: member="apr_xml.h::apr_xml_quote_string" ref="ga084970837d60613476e8ac1abd7651f0" args="(apr_pool_t *p, const char *s, int quotes)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* apr_xml_quote_string </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>s</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>quotes</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>quote an XML string Replace '<', '>', and '&' with '&lt;', '&gt;', and '&amp;'. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>The pool to allocate out of </td></tr> <tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>The string to quote </td></tr> <tr><td valign="top"></td><td valign="top"><em>quotes</em> </td><td>If quotes is true, then replace '"' with '&quot;'. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>The quoted string </dd></dl> <dl class="note"><dt><b>Note:</b></dt><dd>If the string does not contain special characters, it is not duplicated into the pool and the original string is returned. </dd></dl> </div> </div> <a class="anchor" id="ga4485edce130dc1e9a3da3a633a75ffb3"></a><!-- doxytag: member="apr_xml.h::apr_xml_to_text" ref="ga4485edce130dc1e9a3da3a633a75ffb3" args="(apr_pool_t *p, const apr_xml_elem *elem, int style, apr_array_header_t *namespaces, int *ns_map, const char **pbuf, apr_size_t *psize)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void apr_xml_to_text </td> <td>(</td> <td class="paramtype">apr_pool_t * </td> <td class="paramname"> <em>p</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> * </td> <td class="paramname"> <em>elem</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>style</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_array_header_t * </td> <td class="paramname"> <em>namespaces</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"> <em>ns_map</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char ** </td> <td class="paramname"> <em>pbuf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">apr_size_t * </td> <td class="paramname"> <em>psize</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Converts an XML element tree to flat text </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>p</em> </td><td>The pool to allocate out of </td></tr> <tr><td valign="top"></td><td valign="top"><em>elem</em> </td><td>The XML element to convert </td></tr> <tr><td valign="top"></td><td valign="top"><em>style</em> </td><td>How to covert the XML. One of: </p> <pre> APR_XML_X2T_FULL start tag, contents, end tag APR_XML_X2T_INNER contents only APR_XML_X2T_LANG_INNER xml:lang + inner contents APR_XML_X2T_FULL_NS_LANG FULL + ns defns + xml:lang </pre> </td></tr> <tr><td valign="top"></td><td valign="top"><em>namespaces</em> </td><td>The namespace of the current XML element </td></tr> <tr><td valign="top"></td><td valign="top"><em>ns_map</em> </td><td>Namespace mapping </td></tr> <tr><td valign="top"></td><td valign="top"><em>pbuf</em> </td><td>Buffer to put the converted text into </td></tr> <tr><td valign="top"></td><td valign="top"><em>psize</em> </td><td>Size of the converted text </td></tr> </table> </dd> </dl> </div> </div> </div> <!--- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Defines</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Feb 1 12:19:48 2012 for Apache Portable Runtime Utility Library by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address> </body> </html>