libxmljs
Version:
libxml bindings for v8 javascript engine
335 lines • 98.5 kB
HTML
<?xml version="1.0" encoding="UTF-8"?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>valid: The DTD validation</title>
<meta name="generator" content="Libxml2 devhelp stylesheet"/>
<link rel="start" href="index.html" title="libxml2 Reference Manual"/>
<link rel="up" href="general.html" title="API"/>
<link rel="stylesheet" href="style.css" type="text/css"/>
<link rel="chapter" href="general.html" title="API"/>
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td>
<a accesskey="p" href="libxml2-uri.html">
<img src="left.png" width="24" height="24" border="0" alt="Prev"/>
</a>
</td>
<td>
<a accesskey="u" href="general.html">
<img src="up.png" width="24" height="24" border="0" alt="Up"/>
</a>
</td>
<td>
<a accesskey="h" href="index.html">
<img src="home.png" width="24" height="24" border="0" alt="Home"/>
</a>
</td>
<td>
<a accesskey="n" href="libxml2-xinclude.html">
<img src="right.png" width="24" height="24" border="0" alt="Next"/>
</a>
</td>
<th width="100%" align="center">libxml2 Reference Manual</th>
</tr>
</table>
<h2>
<span class="refentrytitle">valid</span>
</h2>
<p>valid - The DTD validation</p>
<p>API for the DTD handling and the validity checking </p>
<p>Author(s): Daniel Veillard </p>
<div class="refsynopsisdiv">
<h2>Synopsis</h2>
<pre class="synopsis">#define <a href="#XML_CTXT_FINISH_DTD_0">XML_CTXT_FINISH_DTD_0</a>;
#define <a href="#XML_CTXT_FINISH_DTD_1">XML_CTXT_FINISH_DTD_1</a>;
typedef struct _xmlHashTable <a href="#xmlElementTable">xmlElementTable</a>;
typedef <a href="libxml2-valid.html#xmlValidState">xmlValidState</a> * <a href="#xmlValidStatePtr">xmlValidStatePtr</a>;
typedef <a href="libxml2-valid.html#xmlIDTable">xmlIDTable</a> * <a href="#xmlIDTablePtr">xmlIDTablePtr</a>;
typedef <a href="libxml2-valid.html#xmlNotationTable">xmlNotationTable</a> * <a href="#xmlNotationTablePtr">xmlNotationTablePtr</a>;
typedef struct _xmlValidCtxt <a href="#xmlValidCtxt">xmlValidCtxt</a>;
typedef <a href="libxml2-valid.html#xmlElementTable">xmlElementTable</a> * <a href="#xmlElementTablePtr">xmlElementTablePtr</a>;
typedef <a href="libxml2-valid.html#xmlRefTable">xmlRefTable</a> * <a href="#xmlRefTablePtr">xmlRefTablePtr</a>;
typedef struct _xmlHashTable <a href="#xmlNotationTable">xmlNotationTable</a>;
typedef struct _xmlHashTable <a href="#xmlRefTable">xmlRefTable</a>;
typedef struct _xmlValidState <a href="#xmlValidState">xmlValidState</a>;
typedef struct _xmlHashTable <a href="#xmlAttributeTable">xmlAttributeTable</a>;
typedef <a href="libxml2-valid.html#xmlAttributeTable">xmlAttributeTable</a> * <a href="#xmlAttributeTablePtr">xmlAttributeTablePtr</a>;
typedef struct _xmlHashTable <a href="#xmlIDTable">xmlIDTable</a>;
typedef <a href="libxml2-valid.html#xmlValidCtxt">xmlValidCtxt</a> * <a href="#xmlValidCtxtPtr">xmlValidCtxtPtr</a>;
void <a href="#xmlFreeNotationTable">xmlFreeNotationTable</a> (<a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table);
int <a href="#xmlValidateNameValue">xmlValidateNameValue</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
void <a href="#xmlSnprintfElementContent">xmlSnprintfElementContent</a> (char * buf, <br/> int size, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br/> int englob);
<a href="libxml2-tree.html#xmlRefPtr">xmlRefPtr</a> <a href="#xmlAddRef">xmlAddRef</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
void <a href="#xmlDumpAttributeDecl">xmlDumpAttributeDecl</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr);
int <a href="#xmlValidateDocumentFinal">xmlValidateDocumentFinal</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
int <a href="#xmlValidateDtdFinal">xmlValidateDtdFinal</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
void <a href="#xmlDumpAttributeTable">xmlDumpAttributeTable</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table);
<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> <a href="#xmlCreateEnumeration">xmlCreateEnumeration</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
int <a href="#xmlValidateOneAttribute">xmlValidateOneAttribute</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
int <a href="#xmlValidGetValidElements">xmlValidGetValidElements</a> (<a href="libxml2-tree.html#xmlNode">xmlNode</a> * prev, <br/> <a href="libxml2-tree.html#xmlNode">xmlNode</a> * next, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** names, <br/> int max);
int <a href="#xmlIsMixedElement">xmlIsMixedElement</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
void <a href="#xmlDumpNotationDecl">xmlDumpNotationDecl</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota);
int <a href="#xmlIsID">xmlIsID</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
<a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> <a href="#xmlGetDtdQAttrDesc">xmlGetDtdQAttrDesc</a> (<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix);
<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="#xmlNewDocElementContent">xmlNewDocElementContent</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-tree.html#xmlElementContentType">xmlElementContentType</a> type);
void <a href="#xmlFreeAttributeTable">xmlFreeAttributeTable</a> (<a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table);
typedef void <a href="#xmlValidityErrorFunc">xmlValidityErrorFunc</a> (void * ctx, <br/> const char * msg, <br/> ... ...);
int <a href="#xmlValidateAttributeDecl">xmlValidateAttributeDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr);
<a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> <a href="#xmlGetDtdQElementDesc">xmlGetDtdQElementDesc</a> (<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix);
<a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> <a href="#xmlCopyNotationTable">xmlCopyNotationTable</a> (<a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table);
int <a href="#xmlValidateDocument">xmlValidateDocument</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
int <a href="#xmlValidGetPotentialChildren">xmlValidGetPotentialChildren</a> (<a href="libxml2-tree.html#xmlElementContent">xmlElementContent</a> * ctree, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** names, <br/> int * len, <br/> int max);
<a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> <a href="#xmlAddNotationDecl">xmlAddNotationDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * PublicID, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * SystemID);
int <a href="#xmlValidateElementDecl">xmlValidateElementDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> elem);
<a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> <a href="#xmlAddAttributeDecl">xmlAddAttributeDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ns, <br/> <a href="libxml2-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br/> <a href="libxml2-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * defaultValue, <br/> <a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree);
<a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> <a href="#xmlGetID">xmlGetID</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ID);
<a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> <a href="#xmlCopyElementTable">xmlCopyElementTable</a> (<a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table);
<a href="libxml2-list.html#xmlListPtr">xmlListPtr</a> <a href="#xmlGetRefs">xmlGetRefs</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ID);
void <a href="#xmlSprintfElementContent">xmlSprintfElementContent</a> (char * buf, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content, <br/> int englob);
int <a href="#xmlValidateOneElement">xmlValidateOneElement</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
int <a href="#xmlValidateNmtokenValue">xmlValidateNmtokenValue</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
void <a href="#xmlDumpElementTable">xmlDumpElementTable</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlValidCtxtNormalizeAttributeValue">xmlValidCtxtNormalizeAttributeValue</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
void <a href="#xmlDumpElementDecl">xmlDumpElementDecl</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> elem);
void <a href="#xmlFreeElementContent">xmlFreeElementContent</a> (<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur);
int <a href="#xmlValidateOneNamespace">xmlValidateOneNamespace</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * prefix, <br/> <a href="libxml2-tree.html#xmlNsPtr">xmlNsPtr</a> ns, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
int <a href="#xmlValidatePushElement">xmlValidatePushElement</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * qname);
int <a href="#xmlIsRef">xmlIsRef</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="#xmlCopyDocElementContent">xmlCopyDocElementContent</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur);
<a href="libxml2-tree.html#xmlIDPtr">xmlIDPtr</a> <a href="#xmlAddID">xmlAddID</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
void <a href="#xmlFreeRefTable">xmlFreeRefTable</a> (<a href="libxml2-valid.html#xmlRefTablePtr">xmlRefTablePtr</a> table);
int <a href="#xmlValidateNamesValue">xmlValidateNamesValue</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
int <a href="#xmlRemoveID">xmlRemoveID</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
void <a href="#xmlFreeElementTable">xmlFreeElementTable</a> (<a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table);
void <a href="#xmlFreeIDTable">xmlFreeIDTable</a> (<a href="libxml2-valid.html#xmlIDTablePtr">xmlIDTablePtr</a> table);
void <a href="#xmlFreeValidCtxt">xmlFreeValidCtxt</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> cur);
<a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> <a href="#xmlCopyAttributeTable">xmlCopyAttributeTable</a> (<a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table);
<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="#xmlCopyElementContent">xmlCopyElementContent</a> (<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur);
int <a href="#xmlValidateAttributeValue">xmlValidateAttributeValue</a> (<a href="libxml2-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
int <a href="#xmlRemoveRef">xmlRemoveRef</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr);
typedef void <a href="#xmlValidityWarningFunc">xmlValidityWarningFunc</a> (void * ctx, <br/> const char * msg, <br/> ... ...);
int <a href="#xmlValidatePopElement">xmlValidatePopElement</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * qname);
void <a href="#xmlFreeEnumeration">xmlFreeEnumeration</a> (<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur);
<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> <a href="#xmlCopyEnumeration">xmlCopyEnumeration</a> (<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur);
<a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> <a href="#xmlGetDtdAttrDesc">xmlGetDtdAttrDesc</a> (<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
int <a href="#xmlValidateDtd">xmlValidateDtd</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd);
<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> <a href="#xmlNewValidCtxt">xmlNewValidCtxt</a> (void);
void <a href="#xmlDumpNotationTable">xmlDumpNotationTable</a> (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table);
<a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> <a href="#xmlAddElementDecl">xmlAddElementDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content);
<a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * <a href="#xmlValidNormalizeAttributeValue">xmlValidNormalizeAttributeValue</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
int <a href="#xmlValidBuildContentModel">xmlValidBuildContentModel</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> elem);
int <a href="#xmlValidateElement">xmlValidateElement</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> elem);
int <a href="#xmlValidateNotationUse">xmlValidateNotationUse</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * notationName);
int <a href="#xmlValidateRoot">xmlValidateRoot</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc);
int <a href="#xmlValidateNotationDecl">xmlValidateNotationDecl</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota);
<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="#xmlNewElementContent">xmlNewElementContent</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-tree.html#xmlElementContentType">xmlElementContentType</a> type);
<a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> <a href="#xmlGetDtdElementDesc">xmlGetDtdElementDesc</a> (<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
<a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> <a href="#xmlGetDtdNotationDesc">xmlGetDtdNotationDesc</a> (<a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
int <a href="#xmlValidatePushCData">xmlValidatePushCData</a> (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * data, <br/> int len);
int <a href="#xmlValidateNmtokensValue">xmlValidateNmtokensValue</a> (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value);
void <a href="#xmlFreeDocElementContent">xmlFreeDocElementContent</a> (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur);
</pre>
</div>
<div class="refsect1" lang="en">
<h2>Description</h2>
</div>
<div class="refsect1" lang="en">
<h2>Details</h2>
<div class="refsect2" lang="en">
<div class="refsect2" lang="en"><h3><a name="XML_CTXT_FINISH_DTD_0">Macro </a>XML_CTXT_FINISH_DTD_0</h3><pre class="programlisting">#define <a href="#XML_CTXT_FINISH_DTD_0">XML_CTXT_FINISH_DTD_0</a>;
</pre><p>Special value for finishDtd field when embedded in an <a href="libxml2-tree.html#xmlParserCtxt">xmlParserCtxt</a></p>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="XML_CTXT_FINISH_DTD_1">Macro </a>XML_CTXT_FINISH_DTD_1</h3><pre class="programlisting">#define <a href="#XML_CTXT_FINISH_DTD_1">XML_CTXT_FINISH_DTD_1</a>;
</pre><p>Special value for finishDtd field when embedded in an <a href="libxml2-tree.html#xmlParserCtxt">xmlParserCtxt</a></p>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAttributeTable">Structure </a>xmlAttributeTable</h3><pre class="programlisting">struct _xmlHashTable {
The content of this structure is not made public by the API.
} xmlAttributeTable;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAttributeTablePtr">Typedef </a>xmlAttributeTablePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlAttributeTable">xmlAttributeTable</a> * xmlAttributeTablePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlElementTable">Structure </a>xmlElementTable</h3><pre class="programlisting">struct _xmlHashTable {
The content of this structure is not made public by the API.
} xmlElementTable;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlElementTablePtr">Typedef </a>xmlElementTablePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlElementTable">xmlElementTable</a> * xmlElementTablePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlIDTable">Structure </a>xmlIDTable</h3><pre class="programlisting">struct _xmlHashTable {
The content of this structure is not made public by the API.
} xmlIDTable;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlIDTablePtr">Typedef </a>xmlIDTablePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlIDTable">xmlIDTable</a> * xmlIDTablePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlNotationTable">Structure </a>xmlNotationTable</h3><pre class="programlisting">struct _xmlHashTable {
The content of this structure is not made public by the API.
} xmlNotationTable;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlNotationTablePtr">Typedef </a>xmlNotationTablePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlNotationTable">xmlNotationTable</a> * xmlNotationTablePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlRefTable">Structure </a>xmlRefTable</h3><pre class="programlisting">struct _xmlHashTable {
The content of this structure is not made public by the API.
} xmlRefTable;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlRefTablePtr">Typedef </a>xmlRefTablePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlRefTable">xmlRefTable</a> * xmlRefTablePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidCtxt">Structure </a>xmlValidCtxt</h3><pre class="programlisting">struct _xmlValidCtxt {
void * userData : user specific data block
<a href="libxml2-valid.html#xmlValidityErrorFunc">xmlValidityErrorFunc</a> error : the callback in case of errors
<a href="libxml2-valid.html#xmlValidityWarningFunc">xmlValidityWarningFunc</a> warning : the callback in case of warning Node analysis stack used when validat
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> node : Current parsed Node
int nodeNr : Depth of the parsing stack
int nodeMax : Max depth of the parsing stack
<a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> * nodeTab : array of nodes
unsigned int finishDtd : finished validating the Dtd ?
<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc : the document
int valid : temporary validity check result state state used for non-determinist
<a href="libxml2-valid.html#xmlValidState">xmlValidState</a> * vstate : current state
int vstateNr : Depth of the validation stack
int vstateMax : Max depth of the validation stack
<a href="libxml2-valid.html#xmlValidState">xmlValidState</a> * vstateTab : array of validation states
<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am : the automata
<a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state : used to build the automata
void * am
void * state
} xmlValidCtxt;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidCtxtPtr">Typedef </a>xmlValidCtxtPtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlValidCtxt">xmlValidCtxt</a> * xmlValidCtxtPtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidState">Structure </a>xmlValidState</h3><pre class="programlisting">struct _xmlValidState {
The content of this structure is not made public by the API.
} xmlValidState;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidStatePtr">Typedef </a>xmlValidStatePtr</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlValidState">xmlValidState</a> * xmlValidStatePtr;
</pre><p/>
</div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidityErrorFunc"/>Function type xmlValidityErrorFunc</h3><pre class="programlisting">void xmlValidityErrorFunc (void * ctx, <br/> const char * msg, <br/> ... ...)<br/>
</pre><p>Callback called when a validity error is found. This is a message oriented function similar to an *printf function.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>usually an <a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> to a validity error context, but comes from ctxt->userData (which normally contains such a pointer); ctxt->userData can be changed by the user.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlValidityWarningFunc"/>Function type xmlValidityWarningFunc</h3><pre class="programlisting">void xmlValidityWarningFunc (void * ctx, <br/> const char * msg, <br/> ... ...)<br/>
</pre><p>Callback called when a validity warning is found. This is a message oriented function similar to an *printf function.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctx</tt></i>:</span></td><td>usually an <a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> to a validity error context, but comes from ctxt->userData (which normally contains such a pointer); ctxt->userData can be changed by the user.</td></tr><tr><td><span class="term"><i><tt>msg</tt></i>:</span></td><td>the string to format *printf like vararg</td></tr><tr><td><span class="term"><i><tt>...</tt></i>:</span></td><td>remaining arguments to the format</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAddAttributeDecl"/>xmlAddAttributeDecl ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> xmlAddAttributeDecl (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * elem, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ns, <br/> <a href="libxml2-tree.html#xmlAttributeType">xmlAttributeType</a> type, <br/> <a href="libxml2-tree.html#xmlAttributeDefault">xmlAttributeDefault</a> def, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * defaultValue, <br/> <a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> tree)<br/>
</pre><p>Register a new <a href="libxml2-SAX.html#attribute">attribute</a> declaration Note that @tree becomes the ownership of the DTD</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>the element name</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> name</td></tr><tr><td><span class="term"><i><tt>ns</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> namespace prefix</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> type</td></tr><tr><td><span class="term"><i><tt>def</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> default type</td></tr><tr><td><span class="term"><i><tt>defaultValue</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> default value</td></tr><tr><td><span class="term"><i><tt>tree</tt></i>:</span></td><td>if it's an enumeration, the associated list</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not new, otherwise the <a href="libxml2-SAX.html#attribute">attribute</a> decl</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAddElementDecl"/>xmlAddElementDecl ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> xmlAddElementDecl (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> <a href="libxml2-tree.html#xmlElementTypeVal">xmlElementTypeVal</a> type, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> content)<br/>
</pre><p>Register a new element declaration</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>type</tt></i>:</span></td><td>the element type</td></tr><tr><td><span class="term"><i><tt>content</tt></i>:</span></td><td>the element content tree or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAddID"/>xmlAddID ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlIDPtr">xmlIDPtr</a> xmlAddID (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br/>
</pre><p>Register a new id declaration</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> holding the ID</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml2-tree.html#xmlIDPtr">xmlIDPtr</a></td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAddNotationDecl"/>xmlAddNotationDecl ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> xmlAddNotationDecl (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDtdPtr">xmlDtdPtr</a> dtd, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * PublicID, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * SystemID)<br/>
</pre><p>Register a new notation declaration</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>dtd</tt></i>:</span></td><td>pointer to the DTD</td></tr><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the entity name</td></tr><tr><td><span class="term"><i><tt>PublicID</tt></i>:</span></td><td>the public identifier or NULL</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i>:</span></td><td>the system identifier or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the entity</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlAddRef"/>xmlAddRef ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlRefPtr">xmlRefPtr</a> xmlAddRef (<a href="libxml2-valid.html#xmlValidCtxtPtr">xmlValidCtxtPtr</a> ctxt, <br/> <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * value, <br/> <a href="libxml2-tree.html#xmlAttrPtr">xmlAttrPtr</a> attr)<br/>
</pre><p>Register a new ref declaration</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i>:</span></td><td>the validation context</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>pointer to the document</td></tr><tr><td><span class="term"><i><tt>value</tt></i>:</span></td><td>the value name</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>the <a href="libxml2-SAX.html#attribute">attribute</a> holding the Ref</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>NULL if not, otherwise the new <a href="libxml2-tree.html#xmlRefPtr">xmlRefPtr</a></td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyAttributeTable"/>xmlCopyAttributeTable ()</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> xmlCopyAttributeTable (<a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br/>
</pre><p>Build a copy of an <a href="libxml2-SAX.html#attribute">attribute</a> table.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml2-SAX.html#attribute">attribute</a> table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyDocElementContent"/>xmlCopyDocElementContent ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> xmlCopyDocElementContent (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br/>
</pre><p>Build a copy of an element content description.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document owning the element declaration</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>An element content pointer.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyElementContent"/>xmlCopyElementContent ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> xmlCopyElementContent (<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br/>
</pre><p>Build a copy of an element content description. Deprecated, use <a href="libxml2-valid.html#xmlCopyDocElementContent">xmlCopyDocElementContent</a> instead</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>An element content pointer.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyElementTable"/>xmlCopyElementTable ()</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> xmlCopyElementTable (<a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br/>
</pre><p>Build a copy of an element table.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyEnumeration"/>xmlCopyEnumeration ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> xmlCopyEnumeration (<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br/>
</pre><p>Copy an enumeration <a href="libxml2-SAX.html#attribute">attribute</a> node (recursive).</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the tree to copy.</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCopyNotationTable"/>xmlCopyNotationTable ()</h3><pre class="programlisting"><a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> xmlCopyNotationTable (<a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br/>
</pre><p>Build a copy of a notation table.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new <a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlCreateEnumeration"/>xmlCreateEnumeration ()</h3><pre class="programlisting"><a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> xmlCreateEnumeration (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
</pre><p>create and initialize an enumeration <a href="libxml2-SAX.html#attribute">attribute</a> node.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the enumeration name or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the <a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> just created or NULL in case of error.</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpAttributeDecl"/>xmlDumpAttributeDecl ()</h3><pre class="programlisting">void xmlDumpAttributeDecl (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlAttributePtr">xmlAttributePtr</a> attr)<br/>
</pre><p>This will dump the content of the <a href="libxml2-SAX.html#attribute">attribute</a> declaration as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>attr</tt></i>:</span></td><td>An <a href="libxml2-SAX.html#attribute">attribute</a> declaration</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpAttributeTable"/>xmlDumpAttributeTable ()</h3><pre class="programlisting">void xmlDumpAttributeTable (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br/>
</pre><p>This will dump the content of the <a href="libxml2-SAX.html#attribute">attribute</a> table as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml2-SAX.html#attribute">attribute</a> table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpElementDecl"/>xmlDumpElementDecl ()</h3><pre class="programlisting">void xmlDumpElementDecl (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlElementPtr">xmlElementPtr</a> elem)<br/>
</pre><p>This will dump the content of the element declaration as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>elem</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpElementTable"/>xmlDumpElementTable ()</h3><pre class="programlisting">void xmlDumpElementTable (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br/>
</pre><p>This will dump the content of the element table as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpNotationDecl"/>xmlDumpNotationDecl ()</h3><pre class="programlisting">void xmlDumpNotationDecl (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-tree.html#xmlNotationPtr">xmlNotationPtr</a> nota)<br/>
</pre><p>This will dump the content the notation declaration as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>nota</tt></i>:</span></td><td>A notation declaration</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlDumpNotationTable"/>xmlDumpNotationTable ()</h3><pre class="programlisting">void xmlDumpNotationTable (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/> <a href="libxml2-valid.html#xmlNotationTablePtr">xmlNotationTablePtr</a> table)<br/>
</pre><p>This will dump the content of the notation table as an XML DTD definition</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the XML buffer output</td></tr><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>A notation table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeAttributeTable"/>xmlFreeAttributeTable ()</h3><pre class="programlisting">void xmlFreeAttributeTable (<a href="libxml2-valid.html#xmlAttributeTablePtr">xmlAttributeTablePtr</a> table)<br/>
</pre><p>Deallocate the memory used by an entities hash table.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An <a href="libxml2-SAX.html#attribute">attribute</a> table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeDocElementContent"/>xmlFreeDocElementContent ()</h3><pre class="programlisting">void xmlFreeDocElementContent (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/> <a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br/>
</pre><p>Free an element content structure. The whole subtree is removed.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document owning the element declaration</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the element content tree to free</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeElementContent"/>xmlFreeElementContent ()</h3><pre class="programlisting">void xmlFreeElementContent (<a href="libxml2-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> cur)<br/>
</pre><p>Free an element content structure. The whole subtree is removed. Deprecated, use <a href="libxml2-valid.html#xmlFreeDocElementContent">xmlFreeDocElementContent</a> instead</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the element content tree to free</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeElementTable"/>xmlFreeElementTable ()</h3><pre class="programlisting">void xmlFreeElementTable (<a href="libxml2-valid.html#xmlElementTablePtr">xmlElementTablePtr</a> table)<br/>
</pre><p>Deallocate the memory used by an element hash table.</p>
<div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>table</tt></i>:</span></td><td>An element table</td></tr></tbody></table></div></div>
<hr/>
<div class="refsect2" lang="en"><h3><a name="xmlFreeEnumeration"/>xmlFreeEnumeration ()</h3><pre class="programlisting">void xmlFreeEnumeration (<a href="libxml2-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> cur)<br/>
</pre><p>free an enumeration <a href="libxml2-SAX.html#attribute">attribute</a> node (recursive).</p>
<div class="variablelist"><table border="0"><col align="lef