<!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: 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.7.3 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">Apache Portable Runtime</div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <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 id="searchli"> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.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)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#namespaces">Namespaces</a> | <a href="#define-members">Defines</a> | <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <h1>XML</h1> </div> <div class="ingroups"><a class="el" href="group___a_p_r___util.html">APR Utility Functions</a></div></div> <div class="contents"> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> 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><a name="namespaces"></a> 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><a name="define-members"></a> 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><a name="typedef-members"></a> 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><a name="func-members"></a> 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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *pool)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> </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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *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, <a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> *xmlfd, apr_size_t buffer_length)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> </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"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> </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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *p, const <a class="el" href="structapr__xml__elem.html">apr_xml_elem</a> *elem, int style, <a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *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> (<a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> *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> (<a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> *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"> </td> <td class="paramname">e</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"> </td> <td class="paramname">ary, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"> </td> <td class="paramname">i </td> </tr> <tr> <td></td> <td>)</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"> </td> <td class="paramname">e</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">p</td><td>The pool to allocate out of </td></tr> <tr><td class="paramname">hdr</td><td>The text header to append to </td></tr> <tr><td class="paramname">text</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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></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 class="params"> <tr><td class="paramname">p</td><td>The pool to allocate out of </td></tr> <tr><td class="paramname">elem</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"><a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">uri_array</td><td>array to insert into </td></tr> <tr><td class="paramname">uri</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"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> apr_xml_parse_file </td> <td>(</td> <td class="paramtype"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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"><a class="el" href="group__apr__file__io.html#gaa46e4763ac375ea3c7a43ba6f6099e22">apr_file_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">p</td><td>The pool for allocating the parse results. </td></tr> <tr><td class="paramname">parser</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 class="paramname">ppdoc</td><td>A pointer to *apr_xml_doc (which has the parsed results in it) </td></tr> <tr><td class="paramname">xmlfd</td><td>A file to read from. </td></tr> <tr><td class="paramname">buffer_length</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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 class="params"> <tr><td class="paramname">pool</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"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> 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> </tr> <tr> <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 class="params"> <tr><td class="paramname">parser</td><td>The XML parser for parsing this data. </td></tr> <tr><td class="paramname">pdoc</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"><a class="el" href="group__apr__errno.html#gaf76ee4543247e9fb3f3546203e590a6c">apr_status_t</a> 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> </tr> <tr> <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 class="params"> <tr><td class="paramname">parser</td><td>The XML parser for parsing this data. </td></tr> <tr><td class="paramname">data</td><td>The data to parse. </td></tr> <tr><td class="paramname">len</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> </tr> <tr> <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 class="params"> <tr><td class="paramname">parser</td><td>The XML parser to query for errors. </td></tr> <tr><td class="paramname">errbuf</td><td>A buffer for storing error text. </td></tr> <tr><td class="paramname">errbufsize</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">p</td><td>The pool to allocate out of </td></tr> <tr><td class="paramname">elem</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">p</td><td>The pool to allocate out of </td></tr> <tr><td class="paramname">s</td><td>The string to quote </td></tr> <tr><td class="paramname">quotes</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"><a class="el" href="group__apr__pools.html#gaf137f28edcf9a086cd6bc36c20d7cdfb">apr_pool_t</a> * </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"><a class="el" href="structapr__array__header__t.html">apr_array_header_t</a> * </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> </tr> <tr> <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 class="params"> <tr><td class="paramname">p</td><td>The pool to allocate out of </td></tr> <tr><td class="paramname">elem</td><td>The XML element to convert </td></tr> <tr><td class="paramname">style</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 class="paramname">namespaces</td><td>The namespace of the current XML element </td></tr> <tr><td class="paramname">ns_map</td><td>Namespace mapping </td></tr> <tr><td class="paramname">pbuf</td><td>Buffer to put the converted text into </td></tr> <tr><td class="paramname">psize</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 class="footer"><small>Generated on Wed May 25 2011 for Apache Portable Runtime by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address> </body> </html>