blob: 6f0023ab0f1eb64be56054e79b380727b64674d1 [file] [log] [blame]
Daniel Veillard39a1f9a1999-01-17 19:11:59 +00001/*
2 * valid.h : interface to the DTD handling and the validity checking
3 *
4 * See Copyright for the status of this software.
5 *
6 * Daniel.Veillard@w3.org
7 */
8
9
10#ifndef __XML_VALID_H__
11#define __XML_VALID_H__
12#include "tree.h"
13
Daniel Veillard3b9def11999-01-31 22:15:06 +000014/*
15 * ALl element declarations are stored in a table
16 * there is one table per DTD
17 */
18
19#define XML_MIN_ELEMENT_TABLE 32
20
21typedef struct xmlElementTable {
22 int nb_elements; /* number of elements stored */
23 int max_elements; /* maximum number of elements */
24 xmlElementPtr table; /* the table of entities */
25} xmlElementTable, *xmlElementTablePtr;
26
Daniel Veillard39a1f9a1999-01-17 19:11:59 +000027extern xmlElementPtr xmlAddElementDecl(xmlDtdPtr dtd, char *name, int type,
28 xmlElementContentPtr content);
29extern xmlElementContentPtr xmlNewElementContent(CHAR *name, int type);
Daniel Veillard3b9def11999-01-31 22:15:06 +000030extern xmlElementContentPtr xmlCopyElementContent(xmlElementContentPtr content);
Daniel Veillard39a1f9a1999-01-17 19:11:59 +000031extern void xmlFreeElementContent(xmlElementContentPtr cur);
Daniel Veillard3b9def11999-01-31 22:15:06 +000032
33extern xmlElementTablePtr xmlCopyElementTable(xmlElementTablePtr table);
34extern void xmlFreeElementTable(xmlElementTablePtr table);
Daniel Veillard1899e851999-02-01 12:18:54 +000035extern void xmlDumpElementTable(xmlElementTablePtr table);
Daniel Veillard39a1f9a1999-01-17 19:11:59 +000036#endif /* __XML_VALID_H__ */