blob: e17a414e02b5950966fb0bd9c88c59dce2badee3 [file] [log] [blame]
Owen Taylor3473f882001-02-23 17:55:21 +00001/*
Daniel Veillardcbaf3992001-12-31 16:16:02 +00002 * HTMLtree.h : describes the structures found in an tree resulting
3 * from an XML parsing.
Owen Taylor3473f882001-02-23 17:55:21 +00004 *
5 * See Copyright for the status of this software.
6 *
Daniel Veillardc5d64342001-06-24 12:13:24 +00007 * daniel@veillard.com
Owen Taylor3473f882001-02-23 17:55:21 +00008 */
9
10#ifndef __HTML_TREE_H__
11#define __HTML_TREE_H__
12
13#include <stdio.h>
14#include <libxml/tree.h>
15#include <libxml/HTMLparser.h>
16
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
Daniel Veillardbed7b052001-05-19 14:59:49 +000022/**
23 * HTML_TEXT_NODE:
24 *
25 * Macro, a text node in a HTML document is really implemented
26 * the same way as a text node in an XML document.
27 */
Owen Taylor3473f882001-02-23 17:55:21 +000028#define HTML_TEXT_NODE XML_TEXT_NODE
Daniel Veillardbed7b052001-05-19 14:59:49 +000029/**
30 * HTML_ENTITY_REF_NODE:
31 *
32 * Macro, an entity reference in a HTML document is really implemented
33 * the same way as an entity reference in an XML document.
34 */
Owen Taylor3473f882001-02-23 17:55:21 +000035#define HTML_ENTITY_REF_NODE XML_ENTITY_REF_NODE
Daniel Veillardbed7b052001-05-19 14:59:49 +000036/**
37 * HTML_COMMENT_NODE:
38 *
39 * Macro, a comment in a HTML document is really implemented
40 * the same way as a comment in an XML document.
41 */
Owen Taylor3473f882001-02-23 17:55:21 +000042#define HTML_COMMENT_NODE XML_COMMENT_NODE
Daniel Veillardbed7b052001-05-19 14:59:49 +000043/**
44 * HTML_PRESERVE_NODE:
45 *
46 * Macro, a preserved node in a HTML document is really implemented
47 * the same way as a CDATA section in an XML document.
48 */
Owen Taylor3473f882001-02-23 17:55:21 +000049#define HTML_PRESERVE_NODE XML_CDATA_SECTION_NODE
Daniel Veillardbed7b052001-05-19 14:59:49 +000050/**
51 * HTML_PI_NODE:
52 *
53 * Macro, a processing instruction in a HTML document is really implemented
54 * the same way as a processing instruction in an XML document.
55 */
Daniel Veillard7533cc82001-04-24 15:52:00 +000056#define HTML_PI_NODE XML_PI_NODE
Owen Taylor3473f882001-02-23 17:55:21 +000057
58htmlDocPtr htmlNewDoc (const xmlChar *URI,
59 const xmlChar *ExternalID);
60htmlDocPtr htmlNewDocNoDtD (const xmlChar *URI,
61 const xmlChar *ExternalID);
62const xmlChar * htmlGetMetaEncoding (htmlDocPtr doc);
63int htmlSetMetaEncoding (htmlDocPtr doc,
64 const xmlChar *encoding);
65void htmlDocDumpMemory (xmlDocPtr cur,
Daniel Veillard963d2ae2002-01-20 22:08:18 +000066 xmlChar **mem,
Owen Taylor3473f882001-02-23 17:55:21 +000067 int *size);
68int htmlDocDump (FILE *f,
69 xmlDocPtr cur);
70int htmlSaveFile (const char *filename,
71 xmlDocPtr cur);
72void htmlNodeDump (xmlBufferPtr buf,
73 xmlDocPtr doc,
74 xmlNodePtr cur);
75void htmlNodeDumpFile (FILE *out,
76 xmlDocPtr doc,
77 xmlNodePtr cur);
Daniel Veillardc4f631d2001-06-14 11:11:59 +000078int htmlNodeDumpFileFormat (FILE *out,
Daniel Veillard95d845f2001-06-13 13:48:46 +000079 xmlDocPtr doc,
80 xmlNodePtr cur,
81 const char *encoding,
82 int format);
Owen Taylor3473f882001-02-23 17:55:21 +000083int htmlSaveFileEnc (const char *filename,
84 xmlDocPtr cur,
85 const char *encoding);
Daniel Veillard95d845f2001-06-13 13:48:46 +000086int htmlSaveFileFormat (const char *filename,
87 xmlDocPtr cur,
88 const char *encoding,
89 int format);
Owen Taylor3473f882001-02-23 17:55:21 +000090
CET 2001 Daniel Veillard5a37bde2001-11-01 14:31:22 +000091void htmlNodeDumpFormatOutput(xmlOutputBufferPtr buf,
92 xmlDocPtr doc,
93 xmlNodePtr cur,
94 const char *encoding,
95 int format);
Owen Taylor3473f882001-02-23 17:55:21 +000096void htmlDocContentDumpOutput(xmlOutputBufferPtr buf,
97 xmlDocPtr cur,
98 const char *encoding);
CET 2001 Daniel Veillard5a37bde2001-11-01 14:31:22 +000099void htmlDocContentDumpFormatOutput(xmlOutputBufferPtr buf,
100 xmlDocPtr cur,
101 const char *encoding,
102 int format);
Owen Taylor3473f882001-02-23 17:55:21 +0000103#ifdef __cplusplus
104}
105#endif
106
107#endif /* __HTML_TREE_H__ */
108