blob: 5c92534377b2a15c9741b687e73528e3a583d191 [file] [log] [blame]
Daniel Veillardd4330462003-04-29 12:40:16 +00001<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>parserInternals</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
3 .synopsis, .classsynopsis {
4 background: #eeeeee;
5 border: solid 1px #aaaaaa;
6 padding: 0.5em;
7 }
8 .programlisting {
9 background: #eeeeff;
10 border: solid 1px #aaaaff;
11 padding: 0.5em;
12 }
13 .variablelist {
14 padding: 4px;
15 margin-left: 3em;
16 }
17 .navigation {
18 background: #ffeeee;
19 border: solid 1px #ffaaaa;
20 margin-top: 0.5em;
21 margin-bottom: 0.5em;
22 }
23 .navigation a {
24 color: #770000;
25 }
26 .navigation a:visited {
27 color: #550000;
28 }
29 .navigation .title {
30 font-size: 200%;
31 }
32 </style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-DOCBparser.html" title="DOCBparser"><link rel="next" href="libxml-encoding.html" title="encoding"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-DOCBparser.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-encoding.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-parserInternals"></a><div class="titlepage"></div><div class="refnamediv"><h2>parserInternals</h2><p>parserInternals &#8212; </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
33
34
35
36#define <a href="libxml-parserInternals.html#XML-MAX-NAMELEN-CAPS">XML_MAX_NAMELEN</a>
37#define <a href="libxml-parserInternals.html#INPUT-CHUNK-CAPS">INPUT_CHUNK</a>
38#define <a href="libxml-parserInternals.html#IS-CHAR-CAPS">IS_CHAR</a> (c)
39#define <a href="libxml-parserInternals.html#IS-BLANK-CAPS">IS_BLANK</a> (c)
40#define <a href="libxml-parserInternals.html#IS-BASECHAR-CAPS">IS_BASECHAR</a> (c)
41#define <a href="libxml-parserInternals.html#IS-DIGIT-CAPS">IS_DIGIT</a> (c)
42#define <a href="libxml-parserInternals.html#IS-COMBINING-CAPS">IS_COMBINING</a> (c)
43#define <a href="libxml-parserInternals.html#IS-EXTENDER-CAPS">IS_EXTENDER</a> (c)
44#define <a href="libxml-parserInternals.html#IS-IDEOGRAPHIC-CAPS">IS_IDEOGRAPHIC</a> (c)
45#define <a href="libxml-parserInternals.html#IS-LETTER-CAPS">IS_LETTER</a> (c)
46#define <a href="libxml-parserInternals.html#IS-PUBIDCHAR-CAPS">IS_PUBIDCHAR</a> (c)
47#define <a href="libxml-parserInternals.html#SKIP-EOL-CAPS">SKIP_EOL</a> (p)
48#define <a href="libxml-parserInternals.html#MOVETO-ENDTAG-CAPS">MOVETO_ENDTAG</a> (p)
49#define <a href="libxml-parserInternals.html#MOVETO-STARTTAG-CAPS">MOVETO_STARTTAG</a> (p)
50int <a href="libxml-parserInternals.html#xmlIsBaseChar">xmlIsBaseChar</a> (int c);
51int <a href="libxml-parserInternals.html#xmlIsBlank">xmlIsBlank</a> (int c);
52int <a href="libxml-parserInternals.html#xmlIsPubidChar">xmlIsPubidChar</a> (int c);
53int <a href="libxml-parserInternals.html#xmlIsLetter">xmlIsLetter</a> (int c);
54int <a href="libxml-parserInternals.html#xmlIsDigit">xmlIsDigit</a> (int c);
55int <a href="libxml-parserInternals.html#xmlIsIdeographic">xmlIsIdeographic</a> (int c);
56int <a href="libxml-parserInternals.html#xmlIsExtender">xmlIsExtender</a> (int c);
57int <a href="libxml-parserInternals.html#xmlIsCombining">xmlIsCombining</a> (int c);
58int <a href="libxml-parserInternals.html#xmlIsChar">xmlIsChar</a> (int c);
59<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a href="libxml-parserInternals.html#xmlCreateFileParserCtxt">xmlCreateFileParserCtxt</a> (const char *filename);
60<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a href="libxml-parserInternals.html#xmlCreateMemoryParserCtxt">xmlCreateMemoryParserCtxt</a> (const char *buffer,
61 int size);
62<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a href="libxml-parserInternals.html#xmlNewParserCtxt">xmlNewParserCtxt</a> (void);
63<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> <a href="libxml-parserInternals.html#xmlCreateEntityParserCtxt">xmlCreateEntityParserCtxt</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *URL,
64 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ID,
65 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *base);
66int <a href="libxml-parserInternals.html#xmlSwitchEncoding">xmlSwitchEncoding</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
67 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);
68int <a href="libxml-parserInternals.html#xmlSwitchToEncoding">xmlSwitchToEncoding</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
69 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler);
70void <a href="libxml-parserInternals.html#xmlHandleEntity">xmlHandleEntity</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
71 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity);
72<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a href="libxml-parserInternals.html#xmlNewStringInputStream">xmlNewStringInputStream</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
73 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *buffer);
74<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a href="libxml-parserInternals.html#xmlNewEntityInputStream">xmlNewEntityInputStream</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
75 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity);
76void <a href="libxml-parserInternals.html#xmlPushInput">xmlPushInput</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
77 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input);
78<a href="libxml-tree.html#xmlChar">xmlChar</a> <a href="libxml-parserInternals.html#xmlPopInput">xmlPopInput</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
79void <a href="libxml-parserInternals.html#xmlFreeInputStream">xmlFreeInputStream</a> (<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input);
80<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a href="libxml-parserInternals.html#xmlNewInputFromFile">xmlNewInputFromFile</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
81 const char *filename);
82<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a href="libxml-parserInternals.html#xmlNewInputStream">xmlNewInputStream</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
83<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlSplitQName">xmlSplitQName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
84 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
85 <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);
86<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlNamespaceParseNCName">xmlNamespaceParseNCName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
87<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlNamespaceParseQName">xmlNamespaceParseQName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
88 <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);
89<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlNamespaceParseNSDef">xmlNamespaceParseNSDef</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
90<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseQuotedString">xmlParseQuotedString</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
91void <a href="libxml-parserInternals.html#xmlParseNamespace">xmlParseNamespace</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
92<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlScanName">xmlScanName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
93<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseName">xmlParseName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
94<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseNmtoken">xmlParseNmtoken</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
95<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseEntityValue">xmlParseEntityValue</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
96 <a href="libxml-tree.html#xmlChar">xmlChar</a> **orig);
97<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseAttValue">xmlParseAttValue</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
98<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseSystemLiteral">xmlParseSystemLiteral</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
99<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParsePubidLiteral">xmlParsePubidLiteral</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
100void <a href="libxml-parserInternals.html#xmlParseCharData">xmlParseCharData</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
101 int cdata);
102<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseExternalID">xmlParseExternalID</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
103 <a href="libxml-tree.html#xmlChar">xmlChar</a> **publicID,
104 int strict);
105void <a href="libxml-parserInternals.html#xmlParseComment">xmlParseComment</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
106<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParsePITarget">xmlParsePITarget</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
107void <a href="libxml-parserInternals.html#xmlParsePI">xmlParsePI</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
108void <a href="libxml-parserInternals.html#xmlParseNotationDecl">xmlParseNotationDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
109void <a href="libxml-parserInternals.html#xmlParseEntityDecl">xmlParseEntityDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
110int <a href="libxml-parserInternals.html#xmlParseDefaultDecl">xmlParseDefaultDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
111 <a href="libxml-tree.html#xmlChar">xmlChar</a> **value);
112<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> <a href="libxml-parserInternals.html#xmlParseNotationType">xmlParseNotationType</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
113<a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> <a href="libxml-parserInternals.html#xmlParseEnumerationType">xmlParseEnumerationType</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
114int <a href="libxml-parserInternals.html#xmlParseEnumeratedType">xmlParseEnumeratedType</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
115 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> *tree);
116int <a href="libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
117 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> *tree);
118void <a href="libxml-parserInternals.html#xmlParseAttributeListDecl">xmlParseAttributeListDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
119<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="libxml-parserInternals.html#xmlParseElementMixedContentDecl">xmlParseElementMixedContentDecl</a>
120 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
121 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> inputchk);
122<a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> <a href="libxml-parserInternals.html#xmlParseElementChildrenContentDecl">xmlParseElementChildrenContentDecl</a>
123 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
124 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> inputchk);
125int <a href="libxml-parserInternals.html#xmlParseElementContentDecl">xmlParseElementContentDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
126 <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
127 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> *result);
128int <a href="libxml-parserInternals.html#xmlParseElementDecl">xmlParseElementDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
129void <a href="libxml-parserInternals.html#xmlParseMarkupDecl">xmlParseMarkupDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
130int <a href="libxml-parserInternals.html#xmlParseCharRef">xmlParseCharRef</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
131<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> <a href="libxml-parserInternals.html#xmlParseEntityRef">xmlParseEntityRef</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
132void <a href="libxml-parserInternals.html#xmlParseReference">xmlParseReference</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
133void <a href="libxml-parserInternals.html#xmlParsePEReference">xmlParsePEReference</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
134void <a href="libxml-parserInternals.html#xmlParseDocTypeDecl">xmlParseDocTypeDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
135<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseAttribute">xmlParseAttribute</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
136 <a href="libxml-tree.html#xmlChar">xmlChar</a> **value);
137<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseStartTag">xmlParseStartTag</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
138void <a href="libxml-parserInternals.html#xmlParseEndTag">xmlParseEndTag</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
139void <a href="libxml-parserInternals.html#xmlParseCDSect">xmlParseCDSect</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
140void <a href="libxml-parserInternals.html#xmlParseContent">xmlParseContent</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
141void <a href="libxml-parserInternals.html#xmlParseElement">xmlParseElement</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
142<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseVersionNum">xmlParseVersionNum</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
143<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseVersionInfo">xmlParseVersionInfo</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
144<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseEncName">xmlParseEncName</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
145<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlParseEncodingDecl">xmlParseEncodingDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
146int <a href="libxml-parserInternals.html#xmlParseSDDecl">xmlParseSDDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
147void <a href="libxml-parserInternals.html#xmlParseXMLDecl">xmlParseXMLDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
148void <a href="libxml-parserInternals.html#xmlParseTextDecl">xmlParseTextDecl</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
149void <a href="libxml-parserInternals.html#xmlParseMisc">xmlParseMisc</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
150void <a href="libxml-parserInternals.html#xmlParseExternalSubset">xmlParseExternalSubset</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
151 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
152 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);
153#define <a href="libxml-parserInternals.html#XML-SUBSTITUTE-NONE-CAPS">XML_SUBSTITUTE_NONE</a>
154#define <a href="libxml-parserInternals.html#XML-SUBSTITUTE-REF-CAPS">XML_SUBSTITUTE_REF</a>
155#define <a href="libxml-parserInternals.html#XML-SUBSTITUTE-PEREF-CAPS">XML_SUBSTITUTE_PEREF</a>
156#define <a href="libxml-parserInternals.html#XML-SUBSTITUTE-BOTH-CAPS">XML_SUBSTITUTE_BOTH</a>
157<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlDecodeEntities">xmlDecodeEntities</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
158 int len,
159 int what,
160 <a href="libxml-tree.html#xmlChar">xmlChar</a> end,
161 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2,
162 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3);
163<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#xmlStringDecodeEntities">xmlStringDecodeEntities</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
164 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
165 int what,
166 <a href="libxml-tree.html#xmlChar">xmlChar</a> end,
167 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2,
168 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3);
169int <a href="libxml-parserInternals.html#nodePush">nodePush</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
170 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value);
171<a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> <a href="libxml-parserInternals.html#nodePop">nodePop</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
172int <a href="libxml-parserInternals.html#inputPush">inputPush</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
173 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value);
174<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> <a href="libxml-parserInternals.html#inputPop">inputPop</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
175<a href="libxml-tree.html#xmlChar">xmlChar</a>* <a href="libxml-parserInternals.html#namePop">namePop</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
176int <a href="libxml-parserInternals.html#namePush">namePush</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
177 <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);
178int <a href="libxml-parserInternals.html#xmlSkipBlankChars">xmlSkipBlankChars</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
179int <a href="libxml-parserInternals.html#xmlStringCurrentChar">xmlStringCurrentChar</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
180 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
181 int *len);
182void <a href="libxml-parserInternals.html#xmlParserHandlePEReference">xmlParserHandlePEReference</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
183void <a href="libxml-parserInternals.html#xmlParserHandleReference">xmlParserHandleReference</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
184int <a href="libxml-parserInternals.html#xmlCheckLanguageID">xmlCheckLanguageID</a> (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);
185int <a href="libxml-parserInternals.html#xmlCurrentChar">xmlCurrentChar</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
186 int *len);
187int <a href="libxml-parserInternals.html#xmlCopyCharMultiByte">xmlCopyCharMultiByte</a> (<a href="libxml-tree.html#xmlChar">xmlChar</a> *out,
188 int val);
189int <a href="libxml-parserInternals.html#xmlCopyChar">xmlCopyChar</a> (int len,
190 <a href="libxml-tree.html#xmlChar">xmlChar</a> *out,
191 int val);
192void <a href="libxml-parserInternals.html#xmlNextChar">xmlNextChar</a> (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);
193void <a href="libxml-parserInternals.html#xmlParserInputShrink">xmlParserInputShrink</a> (<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in);
194void <a href="libxml-parserInternals.html#htmlInitAutoClose">htmlInitAutoClose</a> (void);
195<a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> <a href="libxml-parserInternals.html#htmlCreateFileParserCtxt">htmlCreateFileParserCtxt</a> (const char *filename,
196 const char *encoding);
197void (<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">*xmlEntityReferenceFunc</a>) (<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent,
198 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> firstNode,
199 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> lastNode);
200void <a href="libxml-parserInternals.html#xmlSetEntityReferenceFunc">xmlSetEntityReferenceFunc</a> (<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func);
201</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
202
Daniel Veillard93d95252003-04-29 20:25:40 +0000203</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="XML-MAX-NAMELEN-CAPS"></a>XML_MAX_NAMELEN</h3><pre class="programlisting">#define XML_MAX_NAMELEN</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000204Identifiers can be longer, but this will be more costly
205at runtime.</p><p>
206
Daniel Veillard93d95252003-04-29 20:25:40 +0000207</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="INPUT-CHUNK-CAPS"></a>INPUT_CHUNK</h3><pre class="programlisting">#define INPUT_CHUNK</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000208The parser tries to always have that amount of input ready.
209One of the point is providing context when reporting errors.</p><p>
210
211</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-CHAR-CAPS"></a>IS_CHAR()</h3><pre class="programlisting">#define IS_CHAR(c)</pre><p>
212Macro to check the following production in the XML spec:
213</p><p>
214[2] Char ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9">x9</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20-">x20-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD7FF">xD7FF</GTKDOCLINK>] | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xE000-">xE000-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xFFFD">xFFFD</GTKDOCLINK>]
215 | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x10000-">x10000-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x10FFFF">x10FFFF</GTKDOCLINK>]
216any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.</p><p>
217
Daniel Veillard93d95252003-04-29 20:25:40 +0000218</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
219
220
Daniel Veillardd4330462003-04-29 12:40:16 +0000221</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-BLANK-CAPS"></a>IS_BLANK()</h3><pre class="programlisting">#define IS_BLANK(c)</pre><p>
222Macro to check the following production in the XML spec:
223</p><p>
224[3] S ::= (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9">x9</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>)+</p><p>
225
Daniel Veillard93d95252003-04-29 20:25:40 +0000226</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
227
228
229</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-BASECHAR-CAPS"></a>IS_BASECHAR()</h3><pre class="programlisting">#define IS_BASECHAR(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000230Macro to check the following production in the XML spec:
231</p><p>
232[85] BaseChar ::= ... long list see REC ...</p><p>
233
Daniel Veillard93d95252003-04-29 20:25:40 +0000234</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
235
236
237</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-DIGIT-CAPS"></a>IS_DIGIT()</h3><pre class="programlisting">#define IS_DIGIT(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000238Macro to check the following production in the XML spec:
239</p><p>
240[88] Digit ::= ... long list see REC ...</p><p>
241
Daniel Veillard93d95252003-04-29 20:25:40 +0000242</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
243
244
245</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-COMBINING-CAPS"></a>IS_COMBINING()</h3><pre class="programlisting">#define IS_COMBINING(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000246Macro to check the following production in the XML spec:
247</p><p>
248[87] CombiningChar ::= ... long list see REC ...</p><p>
249
Daniel Veillard93d95252003-04-29 20:25:40 +0000250</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
251
252
253</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-EXTENDER-CAPS"></a>IS_EXTENDER()</h3><pre class="programlisting">#define IS_EXTENDER(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000254Macro to check the following production in the XML spec:
255</p><p>
256[89] Extender ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x00B7">x00B7</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x02D0">x02D0</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x02D1">x02D1</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0387">x0387</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0640">x0640</GTKDOCLINK> |
257 <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0E46">x0E46</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0EC6">x0EC6</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3005">x3005</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3031-">x3031-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3035">x3035</GTKDOCLINK>] |
258 [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x309D-">x309D-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x309E">x309E</GTKDOCLINK>] | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x30FC-">x30FC-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x30FE">x30FE</GTKDOCLINK>]</p><p>
259
Daniel Veillard93d95252003-04-29 20:25:40 +0000260</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
261
262
263</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-IDEOGRAPHIC-CAPS"></a>IS_IDEOGRAPHIC()</h3><pre class="programlisting">#define IS_IDEOGRAPHIC(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000264Macro to check the following production in the XML spec:
265</p><p>
266[86] Ideographic ::= [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x4E00-">x4E00-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9FA5">x9FA5</GTKDOCLINK>] | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3007">x3007</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3021-">x3021-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3029">x3029</GTKDOCLINK>]</p><p>
267
Daniel Veillard93d95252003-04-29 20:25:40 +0000268</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
269
270
271</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-LETTER-CAPS"></a>IS_LETTER()</h3><pre class="programlisting">#define IS_LETTER(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000272Macro to check the following production in the XML spec:
273</p><p>
274[84] Letter ::= BaseChar | Ideographic</p><p>
275
Daniel Veillard93d95252003-04-29 20:25:40 +0000276</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
277
278
279</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="IS-PUBIDCHAR-CAPS"></a>IS_PUBIDCHAR()</h3><pre class="programlisting">#define IS_PUBIDCHAR(c)</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000280Macro to check the following production in the XML spec:
281</p><p>
282[13] PubidChar ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK> | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</p><p>
283
Daniel Veillard93d95252003-04-29 20:25:40 +0000284</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
285
286
Daniel Veillardd4330462003-04-29 12:40:16 +0000287</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="SKIP-EOL-CAPS"></a>SKIP_EOL()</h3><pre class="programlisting">#define SKIP_EOL(p)</pre><p>
288Skips the end of line chars.</p><p>
289
Daniel Veillard93d95252003-04-29 20:25:40 +0000290</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>p</tt></i> :</span></td><td>
291
292
Daniel Veillardd4330462003-04-29 12:40:16 +0000293</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="MOVETO-ENDTAG-CAPS"></a>MOVETO_ENDTAG()</h3><pre class="programlisting">#define MOVETO_ENDTAG(p)</pre><p>
294Skips to the next '&gt;' char.</p><p>
295
Daniel Veillard93d95252003-04-29 20:25:40 +0000296</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>p</tt></i> :</span></td><td>
297
298
Daniel Veillardd4330462003-04-29 12:40:16 +0000299</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="MOVETO-STARTTAG-CAPS"></a>MOVETO_STARTTAG()</h3><pre class="programlisting">#define MOVETO_STARTTAG(p)</pre><p>
300Skips to the next '&lt;' char.</p><p>
301
Daniel Veillard93d95252003-04-29 20:25:40 +0000302</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>p</tt></i> :</span></td><td>
303
304
Daniel Veillardd4330462003-04-29 12:40:16 +0000305</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsBaseChar"></a>xmlIsBaseChar ()</h3><pre class="programlisting">int xmlIsBaseChar (int c);</pre><p>
306Check whether the character is allowed by the production
307[85] BaseChar ::= ... long list see REC ...
308</p><p>
309VI is your friend !
310:1,$ s/\[<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x">x</GTKDOCLINK>\([0-9A-Z]*\)-<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x">x</GTKDOCLINK>\([0-9A-Z]*\)\]/ (((c) &gt;= 0x\1) \&amp;\&amp; ((c) &lt;= 0x\2)) ||/
311and
312:1,$ s/<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x">x</GTKDOCLINK>\([0-9A-Z]*\)/ ((c) == 0x\1) ||/</p><p>
313
Daniel Veillard93d95252003-04-29 20:25:40 +0000314</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
315</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
316
317
Daniel Veillardd4330462003-04-29 12:40:16 +0000318</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsBlank"></a>xmlIsBlank ()</h3><pre class="programlisting">int xmlIsBlank (int c);</pre><p>
319Check whether the character is allowed by the production
320[3] S ::= (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9">x9</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>)+
321Also available as a macro <a href="libxml-parserInternals.html#IS-BLANK-CAPS">IS_BLANK</a>()</p><p>
322
Daniel Veillard93d95252003-04-29 20:25:40 +0000323</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
324</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
325
326
Daniel Veillardd4330462003-04-29 12:40:16 +0000327</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsPubidChar"></a>xmlIsPubidChar ()</h3><pre class="programlisting">int xmlIsPubidChar (int c);</pre><p>
328Check whether the character is allowed by the production
329[13] PubidChar ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK> | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</p><p>
330
Daniel Veillard93d95252003-04-29 20:25:40 +0000331</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
332</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
333
334
Daniel Veillardd4330462003-04-29 12:40:16 +0000335</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsLetter"></a>xmlIsLetter ()</h3><pre class="programlisting">int xmlIsLetter (int c);</pre><p>
336Check whether the character is allowed by the production
337[84] Letter ::= BaseChar | Ideographic</p><p>
338
Daniel Veillard93d95252003-04-29 20:25:40 +0000339</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
340</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
341
342
Daniel Veillardd4330462003-04-29 12:40:16 +0000343</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsDigit"></a>xmlIsDigit ()</h3><pre class="programlisting">int xmlIsDigit (int c);</pre><p>
344Check whether the character is allowed by the production
345[88] Digit ::= ... long list see REC ...</p><p>
346
Daniel Veillard93d95252003-04-29 20:25:40 +0000347</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
348</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
349
350
Daniel Veillardd4330462003-04-29 12:40:16 +0000351</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsIdeographic"></a>xmlIsIdeographic ()</h3><pre class="programlisting">int xmlIsIdeographic (int c);</pre><p>
352Check whether the character is allowed by the production
353[86] Ideographic ::= [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x4E00-">x4E00-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9FA5">x9FA5</GTKDOCLINK>] | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3007">x3007</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3021-">x3021-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3029">x3029</GTKDOCLINK>]</p><p>
354
Daniel Veillard93d95252003-04-29 20:25:40 +0000355</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
356</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
357
358
Daniel Veillardd4330462003-04-29 12:40:16 +0000359</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsExtender"></a>xmlIsExtender ()</h3><pre class="programlisting">int xmlIsExtender (int c);</pre><p>
360Check whether the character is allowed by the production
361[89] Extender ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x00B7">x00B7</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x02D0">x02D0</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x02D1">x02D1</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0387">x0387</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0640">x0640</GTKDOCLINK> |
362 <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0E46">x0E46</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x0EC6">x0EC6</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3005">x3005</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3031-">x3031-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x3035">x3035</GTKDOCLINK>] |
363 [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x309D-">x309D-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x309E">x309E</GTKDOCLINK>] | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x30FC-">x30FC-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x30FE">x30FE</GTKDOCLINK>]</p><p>
364
Daniel Veillard93d95252003-04-29 20:25:40 +0000365</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
366</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
367
368
Daniel Veillardd4330462003-04-29 12:40:16 +0000369</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsCombining"></a>xmlIsCombining ()</h3><pre class="programlisting">int xmlIsCombining (int c);</pre><p>
370Check whether the character is allowed by the production
371[87] CombiningChar ::= ... long list see REC ...</p><p>
372
Daniel Veillard93d95252003-04-29 20:25:40 +0000373</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
374</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
375
376
Daniel Veillardd4330462003-04-29 12:40:16 +0000377</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlIsChar"></a>xmlIsChar ()</h3><pre class="programlisting">int xmlIsChar (int c);</pre><p>
378Check whether the character is allowed by the production
379[2] Char ::= <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9">x9</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK> | <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK> | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20-">x20-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD7FF">xD7FF</GTKDOCLINK>] | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xE000-">xE000-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xFFFD">xFFFD</GTKDOCLINK>]
380 | [<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x10000-">x10000-</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x10FFFF">x10FFFF</GTKDOCLINK>]
381any Unicode character, excluding the surrogate blocks, FFFE, and FFFF.
382Also available as a macro <a href="libxml-parserInternals.html#IS-CHAR-CAPS">IS_CHAR</a>()</p><p>
383
Daniel Veillard93d95252003-04-29 20:25:40 +0000384</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>c</tt></i> :</span></td><td>
385</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
386
387
Daniel Veillardd4330462003-04-29 12:40:16 +0000388</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCreateFileParserCtxt"></a>xmlCreateFileParserCtxt ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> xmlCreateFileParserCtxt (const char *filename);</pre><p>
389Create a parser context for a file content.
390Automatic support for ZLIB/Compress compressed document is provided
391by default if found at compile-time.</p><p>
392
Daniel Veillard93d95252003-04-29 20:25:40 +0000393</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>
394</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
395
396
Daniel Veillardd4330462003-04-29 12:40:16 +0000397</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCreateMemoryParserCtxt"></a>xmlCreateMemoryParserCtxt ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> xmlCreateMemoryParserCtxt (const char *buffer,
398 int size);</pre><p>
399Create a parser context for an XML in-memory document.</p><p>
400
Daniel Veillard93d95252003-04-29 20:25:40 +0000401</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>buffer</tt></i> :</span></td><td>
402</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td>
403</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
404
405
Daniel Veillardd4330462003-04-29 12:40:16 +0000406</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewParserCtxt"></a>xmlNewParserCtxt ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> xmlNewParserCtxt (void);</pre><p>
407Allocate and initialize a new parser context.</p><p>
408
Daniel Veillard93d95252003-04-29 20:25:40 +0000409</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
410
411
Daniel Veillardd4330462003-04-29 12:40:16 +0000412</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCreateEntityParserCtxt"></a>xmlCreateEntityParserCtxt ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> xmlCreateEntityParserCtxt (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *URL,
413 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ID,
414 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *base);</pre><p>
415Create a parser context for an external entity
416Automatic support for ZLIB/Compress compressed document is provided
417by default if found at compile-time.</p><p>
418
Daniel Veillard93d95252003-04-29 20:25:40 +0000419</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i> :</span></td><td>
420</td></tr><tr><td><span class="term"><i><tt>ID</tt></i> :</span></td><td>
421</td></tr><tr><td><span class="term"><i><tt>base</tt></i> :</span></td><td>
422</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
423
424
Daniel Veillardd4330462003-04-29 12:40:16 +0000425</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSwitchEncoding"></a>xmlSwitchEncoding ()</h3><pre class="programlisting">int xmlSwitchEncoding (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
426 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);</pre><p>
427change the input functions when discovering the character encoding
428of a given entity.</p><p>
429
Daniel Veillard93d95252003-04-29 20:25:40 +0000430</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
431</td></tr><tr><td><span class="term"><i><tt>enc</tt></i> :</span></td><td>
432</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
433
434
Daniel Veillardd4330462003-04-29 12:40:16 +0000435</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSwitchToEncoding"></a>xmlSwitchToEncoding ()</h3><pre class="programlisting">int xmlSwitchToEncoding (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
436 <a href="libxml-encoding.html#xmlCharEncodingHandlerPtr">xmlCharEncodingHandlerPtr</a> handler);</pre><p>
437change the input functions when discovering the character encoding
438of a given entity.</p><p>
439
Daniel Veillard93d95252003-04-29 20:25:40 +0000440</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
441</td></tr><tr><td><span class="term"><i><tt>handler</tt></i> :</span></td><td>
442</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
443
444
Daniel Veillardd4330462003-04-29 12:40:16 +0000445</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlHandleEntity"></a>xmlHandleEntity ()</h3><pre class="programlisting">void xmlHandleEntity (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
446 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity);</pre><p>
447Default handling of defined entities, when should we define a new input
448stream ? When do we just handle that as a set of chars ?
449</p><p>
450OBSOLETE: to be removed at some point.</p><p>
451
Daniel Veillard93d95252003-04-29 20:25:40 +0000452</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
453</td></tr><tr><td><span class="term"><i><tt>entity</tt></i> :</span></td><td>
454
455
Daniel Veillardd4330462003-04-29 12:40:16 +0000456</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewStringInputStream"></a>xmlNewStringInputStream ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> xmlNewStringInputStream (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
457 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *buffer);</pre><p>
458Create a new input stream based on a memory buffer.</p><p>
459
Daniel Veillard93d95252003-04-29 20:25:40 +0000460</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
461</td></tr><tr><td><span class="term"><i><tt>buffer</tt></i> :</span></td><td>
462</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
463
464
Daniel Veillardd4330462003-04-29 12:40:16 +0000465</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewEntityInputStream"></a>xmlNewEntityInputStream ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> xmlNewEntityInputStream (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
466 <a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> entity);</pre><p>
467Create a new input stream based on an xmlEntityPtr</p><p>
468
Daniel Veillard93d95252003-04-29 20:25:40 +0000469</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
470</td></tr><tr><td><span class="term"><i><tt>entity</tt></i> :</span></td><td>
471</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
472
473
Daniel Veillardd4330462003-04-29 12:40:16 +0000474</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlPushInput"></a>xmlPushInput ()</h3><pre class="programlisting">void xmlPushInput (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
475 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input);</pre><p>
476xmlPushInput: switch to a new input stream which is stacked on top
477 of the previous one(s).</p><p>
478
Daniel Veillard93d95252003-04-29 20:25:40 +0000479</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
480</td></tr><tr><td><span class="term"><i><tt>input</tt></i> :</span></td><td>
481
482
Daniel Veillardd4330462003-04-29 12:40:16 +0000483</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlPopInput"></a>xmlPopInput ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a> xmlPopInput (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
484xmlPopInput: the current input pointed by ctxt-&gt;input came to an end
485 pop it and return the next char.</p><p>
486
Daniel Veillard93d95252003-04-29 20:25:40 +0000487</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
488</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
489
490
Daniel Veillardd4330462003-04-29 12:40:16 +0000491</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlFreeInputStream"></a>xmlFreeInputStream ()</h3><pre class="programlisting">void xmlFreeInputStream (<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> input);</pre><p>
492Free up an input stream.</p><p>
493
Daniel Veillard93d95252003-04-29 20:25:40 +0000494</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>input</tt></i> :</span></td><td>
495
496
Daniel Veillardd4330462003-04-29 12:40:16 +0000497</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewInputFromFile"></a>xmlNewInputFromFile ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> xmlNewInputFromFile (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
498 const char *filename);</pre><p>
499Create a new input stream based on a file.</p><p>
500
Daniel Veillard93d95252003-04-29 20:25:40 +0000501</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
502</td></tr><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>
503</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
504
505
Daniel Veillardd4330462003-04-29 12:40:16 +0000506</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNewInputStream"></a>xmlNewInputStream ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> xmlNewInputStream (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
507Create a new input stream structure</p><p>
508
Daniel Veillard93d95252003-04-29 20:25:40 +0000509</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
510</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
511
512
Daniel Veillardd4330462003-04-29 12:40:16 +0000513</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSplitQName"></a>xmlSplitQName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlSplitQName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
514 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
515 <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);</pre><p>
516parse an UTF8 encoded XML qualified name string
517</p><p>
518[NS 5] QName ::= (Prefix ':')? LocalPart
519</p><p>
520[NS 6] Prefix ::= NCName
521</p><p>
522[NS 7] LocalPart ::= NCName</p><p>
523
Daniel Veillard93d95252003-04-29 20:25:40 +0000524</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
525</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>
526</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>
527</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
528
529
Daniel Veillardd4330462003-04-29 12:40:16 +0000530</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNamespaceParseNCName"></a>xmlNamespaceParseNCName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNamespaceParseNCName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
531parse an XML namespace name.
532</p><p>
533TODO: this seems not in use anymore, the namespace handling is done on
534 top of the SAX interfaces, i.e. not on raw input.
535</p><p>
536[NS 3] NCName ::= (Letter | '_') (NCNameChar)*
537</p><p>
538[NS 4] NCNameChar ::= Letter | Digit | '.' | '-' | '_' |
539 CombiningChar | Extender</p><p>
540
Daniel Veillard93d95252003-04-29 20:25:40 +0000541</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
542</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
543
544
Daniel Veillardd4330462003-04-29 12:40:16 +0000545</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNamespaceParseQName"></a>xmlNamespaceParseQName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNamespaceParseQName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
546 <a href="libxml-tree.html#xmlChar">xmlChar</a> **prefix);</pre><p>
547TODO: this seems not in use anymore, the namespace handling is done on
548 top of the SAX interfaces, i.e. not on raw input.
549</p><p>
550parse an XML qualified name
551</p><p>
552[NS 5] QName ::= (Prefix ':')? LocalPart
553</p><p>
554[NS 6] Prefix ::= NCName
555</p><p>
556[NS 7] LocalPart ::= NCName</p><p>
557
Daniel Veillard93d95252003-04-29 20:25:40 +0000558</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
559</td></tr><tr><td><span class="term"><i><tt>prefix</tt></i> :</span></td><td>
560</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
561
562
Daniel Veillardd4330462003-04-29 12:40:16 +0000563</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNamespaceParseNSDef"></a>xmlNamespaceParseNSDef ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlNamespaceParseNSDef (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
564parse a namespace prefix declaration
565</p><p>
566TODO: this seems not in use anymore, the namespace handling is done on
567 top of the SAX interfaces, i.e. not on raw input.
568</p><p>
569[NS 1] NSDef ::= PrefixDef Eq SystemLiteral
570</p><p>
571[NS 2] PrefixDef ::= 'xmlns' (':' NCName)?</p><p>
572
Daniel Veillard93d95252003-04-29 20:25:40 +0000573</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
574</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
575
576
Daniel Veillardd4330462003-04-29 12:40:16 +0000577</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseQuotedString"></a>xmlParseQuotedString ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseQuotedString (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
578Parse and return a string between quotes or doublequotes
579</p><p>
580TODO: Deprecated, to be removed at next drop of binary compatibility</p><p>
581
Daniel Veillard93d95252003-04-29 20:25:40 +0000582</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
583</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
584
585
Daniel Veillardd4330462003-04-29 12:40:16 +0000586</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseNamespace"></a>xmlParseNamespace ()</h3><pre class="programlisting">void xmlParseNamespace (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
587xmlParseNamespace: parse specific PI '&lt;?namespace ...' constructs.
588</p><p>
589This is what the older xml-name Working Draft specified, a bunch of
590other stuff may still rely on it, so support is still here as
591if it was declared on the root of the Tree:-(
592</p><p>
593TODO: remove from library
594</p><p>
595To be removed at next drop of binary compatibility</p><p>
596
Daniel Veillard93d95252003-04-29 20:25:40 +0000597</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
598
599
Daniel Veillardd4330462003-04-29 12:40:16 +0000600</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlScanName"></a>xmlScanName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlScanName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
601Trickery: parse an XML name but without consuming the input flow
602Needed for rollback cases. Used only when parsing entities references.
603</p><p>
604TODO: seems deprecated now, only used in the default part of
605 xmlParserHandleReference
606</p><p>
607[4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' |
608 CombiningChar | Extender
609</p><p>
610[5] Name ::= (Letter | '_' | ':') (NameChar)*
611</p><p>
612[6] Names ::= Name (S Name)*</p><p>
613
Daniel Veillard93d95252003-04-29 20:25:40 +0000614</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
615</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
616
617
Daniel Veillardd4330462003-04-29 12:40:16 +0000618</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseName"></a>xmlParseName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
619parse an XML name.
620</p><p>
621[4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' |
622 CombiningChar | Extender
623</p><p>
624[5] Name ::= (Letter | '_' | ':') (NameChar)*
625</p><p>
626[6] Names ::= Name (S Name)*</p><p>
627
Daniel Veillard93d95252003-04-29 20:25:40 +0000628</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
629</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
630
631
Daniel Veillardd4330462003-04-29 12:40:16 +0000632</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseNmtoken"></a>xmlParseNmtoken ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseNmtoken (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
633parse an XML Nmtoken.
634</p><p>
635[7] Nmtoken ::= (NameChar)+
636</p><p>
637[8] Nmtokens ::= Nmtoken (S Nmtoken)*</p><p>
638
Daniel Veillard93d95252003-04-29 20:25:40 +0000639</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
640</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
641
642
Daniel Veillardd4330462003-04-29 12:40:16 +0000643</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEntityValue"></a>xmlParseEntityValue ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseEntityValue (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
644 <a href="libxml-tree.html#xmlChar">xmlChar</a> **orig);</pre><p>
645parse a value for ENTITY declarations
646</p><p>
647[9] EntityValue ::= '&quot;' ([^%&amp;&quot;] | PEReference | Reference)* '&quot;' |
648 &quot;'&quot; ([^%&amp;'] | PEReference | Reference)* &quot;'&quot;</p><p>
649
Daniel Veillard93d95252003-04-29 20:25:40 +0000650</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
651</td></tr><tr><td><span class="term"><i><tt>orig</tt></i> :</span></td><td>
652</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
653
654
Daniel Veillardd4330462003-04-29 12:40:16 +0000655</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseAttValue"></a>xmlParseAttValue ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseAttValue (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
656parse a value for an attribute
657Note: the parser won't do substitution of entities here, this
658will be handled later in xmlStringGetNodeList
659</p><p>
660[10] AttValue ::= '&quot;' ([^&lt;&amp;&quot;] | Reference)* '&quot;' |
661 &quot;'&quot; ([^&lt;&amp;'] | Reference)* &quot;'&quot;
662</p><p>
6633.3.3 Attribute-Value Normalization:
664Before the value of an attribute is passed to the application or
665checked for validity, the XML processor must normalize it as follows:
666- a character reference is processed by appending the referenced
667 character to the attribute value
668- an entity reference is processed by recursively processing the
669 replacement text of the entity
670- a whitespace character (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK>, <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK>, <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>, <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x9">x9</GTKDOCLINK>) is processed by
671 appending <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> to the normalized value, except that only a single
672 <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK> is appended for a &quot;<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>&quot; sequence that is part of an external
673 parsed entity or the literal entity value of an internal parsed entity
674- other characters are processed by appending them to the normalized value
675If the declared value is not CDATA, then the XML processor must further
676process the normalized attribute value by discarding any leading and
677trailing space (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK>) characters, and by replacing sequences of space
678(<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK>) characters by a single space (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x20">x20</GTKDOCLINK>) character.
679All attributes for which no declaration has been read should be treated
680by a non-validating parser as if declared CDATA.</p><p>
681
Daniel Veillard93d95252003-04-29 20:25:40 +0000682</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
683</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
684
685
Daniel Veillardd4330462003-04-29 12:40:16 +0000686</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseSystemLiteral"></a>xmlParseSystemLiteral ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseSystemLiteral (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
687parse an XML Literal
688</p><p>
689[11] SystemLiteral ::= ('&quot;' [^&quot;]* '&quot;') | (&quot;'&quot; [^']* &quot;'&quot;)</p><p>
690
Daniel Veillard93d95252003-04-29 20:25:40 +0000691</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
692</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
693
694
Daniel Veillardd4330462003-04-29 12:40:16 +0000695</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParsePubidLiteral"></a>xmlParsePubidLiteral ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParsePubidLiteral (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
696parse an XML public literal
697</p><p>
698[12] PubidLiteral ::= '&quot;' PubidChar* '&quot;' | &quot;'&quot; (PubidChar - &quot;'&quot;)* &quot;'&quot;</p><p>
699
Daniel Veillard93d95252003-04-29 20:25:40 +0000700</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
701</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
702
703
Daniel Veillardd4330462003-04-29 12:40:16 +0000704</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseCharData"></a>xmlParseCharData ()</h3><pre class="programlisting">void xmlParseCharData (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
705 int cdata);</pre><p>
706parse a CharData section.
707if we are within a CDATA section ']]&gt;' marks an end of section.
708</p><p>
709The right angle bracket (&gt;) may be represented using the string &quot;&amp;gt;&quot;,
710and must, for compatibility, be escaped using &quot;&amp;gt;&quot; or a character
711reference when it appears in the string &quot;]]&gt;&quot; in content, when that
712string is not marking the end of a CDATA section.
713</p><p>
714[14] CharData ::= [^&lt;&amp;]* - ([^&lt;&amp;]* ']]&gt;' [^&lt;&amp;]*)</p><p>
715
Daniel Veillard93d95252003-04-29 20:25:40 +0000716</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
717</td></tr><tr><td><span class="term"><i><tt>cdata</tt></i> :</span></td><td>
718
719
Daniel Veillardd4330462003-04-29 12:40:16 +0000720</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseExternalID"></a>xmlParseExternalID ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseExternalID (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
721 <a href="libxml-tree.html#xmlChar">xmlChar</a> **publicID,
722 int strict);</pre><p>
723Parse an External ID or a Public ID
724</p><p>
725NOTE: Productions [75] and [83] interact badly since [75] can generate
726 'PUBLIC' S PubidLiteral S SystemLiteral
727</p><p>
728[75] ExternalID ::= 'SYSTEM' S SystemLiteral
729 | 'PUBLIC' S PubidLiteral S SystemLiteral
730</p><p>
731[83] PublicID ::= 'PUBLIC' S PubidLiteral</p><p>
732
Daniel Veillard93d95252003-04-29 20:25:40 +0000733</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
734</td></tr><tr><td><span class="term"><i><tt>publicID</tt></i> :</span></td><td>
735</td></tr><tr><td><span class="term"><i><tt>strict</tt></i> :</span></td><td>
736</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
737
738
Daniel Veillardd4330462003-04-29 12:40:16 +0000739</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseComment"></a>xmlParseComment ()</h3><pre class="programlisting">void xmlParseComment (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
740Skip an XML (SGML) comment &lt;!-- .... --&gt;
741 The spec says that &quot;For compatibility, the string &quot;--&quot; (double-hyphen)
742 must not occur within comments. &quot;
743</p><p>
744[15] Comment ::= '&lt;!--' ((Char - '-') | ('-' (Char - '-')))* '--&gt;'</p><p>
745
Daniel Veillard93d95252003-04-29 20:25:40 +0000746</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
747
748
Daniel Veillardd4330462003-04-29 12:40:16 +0000749</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParsePITarget"></a>xmlParsePITarget ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParsePITarget (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
750parse the name of a PI
751</p><p>
752[17] PITarget ::= Name - (('X' | 'x') ('M' | 'm') ('L' | 'l'))</p><p>
753
Daniel Veillard93d95252003-04-29 20:25:40 +0000754</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
755</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
756
757
Daniel Veillardd4330462003-04-29 12:40:16 +0000758</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParsePI"></a>xmlParsePI ()</h3><pre class="programlisting">void xmlParsePI (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
759parse an XML Processing Instruction.
760</p><p>
761[16] PI ::= '&lt;?' PITarget (S (Char* - (Char* '?&gt;' Char*)))? '?&gt;'
762</p><p>
763The processing is transfered to SAX once parsed.</p><p>
764
Daniel Veillard93d95252003-04-29 20:25:40 +0000765</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
766
767
Daniel Veillardd4330462003-04-29 12:40:16 +0000768</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseNotationDecl"></a>xmlParseNotationDecl ()</h3><pre class="programlisting">void xmlParseNotationDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
769parse a notation declaration
770</p><p>
771[82] NotationDecl ::= '&lt;!NOTATION' S Name S (ExternalID | PublicID) S? '&gt;'
772</p><p>
773Hence there is actually 3 choices:
774 'PUBLIC' S PubidLiteral
775 'PUBLIC' S PubidLiteral S SystemLiteral
776and 'SYSTEM' S SystemLiteral
777</p><p>
778See the NOTE on <a href="libxml-parserInternals.html#xmlParseExternalID">xmlParseExternalID</a>().</p><p>
779
Daniel Veillard93d95252003-04-29 20:25:40 +0000780</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
781
782
Daniel Veillardd4330462003-04-29 12:40:16 +0000783</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEntityDecl"></a>xmlParseEntityDecl ()</h3><pre class="programlisting">void xmlParseEntityDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
784parse &lt;!ENTITY declarations
785</p><p>
786[70] EntityDecl ::= GEDecl | PEDecl
787</p><p>
788[71] GEDecl ::= '&lt;!ENTITY' S Name S EntityDef S? '&gt;'
789</p><p>
790[72] PEDecl ::= '&lt;!ENTITY' S '%' S Name S PEDef S? '&gt;'
791</p><p>
792[73] EntityDef ::= EntityValue | (ExternalID NDataDecl?)
793</p><p>
794[74] PEDef ::= EntityValue | ExternalID
795</p><p>
796[76] NDataDecl ::= S 'NDATA' S Name
797</p><p>
798[ VC: Notation Declared ]
799The Name must match the declared name of a notation.</p><p>
800
Daniel Veillard93d95252003-04-29 20:25:40 +0000801</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
802
803
Daniel Veillardd4330462003-04-29 12:40:16 +0000804</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseDefaultDecl"></a>xmlParseDefaultDecl ()</h3><pre class="programlisting">int xmlParseDefaultDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
805 <a href="libxml-tree.html#xmlChar">xmlChar</a> **value);</pre><p>
806Parse an attribute default declaration
807</p><p>
808[60] DefaultDecl ::= '<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="REQUIRED-CAPS">REQUIRED</GTKDOCLINK>' | '<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="IMPLIED-CAPS">IMPLIED</GTKDOCLINK>' | (('<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK>' S)? AttValue)
809</p><p>
810[ VC: Required Attribute ]
811if the default declaration is the keyword <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="REQUIRED-CAPS">REQUIRED</GTKDOCLINK>, then the
812attribute must be specified for all elements of the type in the
813attribute-list declaration.
814</p><p>
815[ VC: Attribute Default Legal ]
816The declared default value must meet the lexical constraints of
817the declared attribute type c.f. <a href="libxml-valid.html#xmlValidateAttributeDecl">xmlValidateAttributeDecl</a>()
818</p><p>
819[ VC: Fixed Attribute Default ]
820if an attribute has a default value declared with the <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FIXED-CAPS">FIXED</GTKDOCLINK>
821keyword, instances of that attribute must match the default value.
822</p><p>
823[ WFC: No &lt; in Attribute Values ]
824handled in <a href="libxml-parserInternals.html#xmlParseAttValue">xmlParseAttValue</a>()</p><p>
825
Daniel Veillard93d95252003-04-29 20:25:40 +0000826</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
827</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>
828</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
829
830
Daniel Veillardd4330462003-04-29 12:40:16 +0000831</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseNotationType"></a>xmlParseNotationType ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> xmlParseNotationType (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
832parse an Notation attribute type.
833</p><p>
834Note: the leading 'NOTATION' S part has already being parsed...
835</p><p>
836[58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')'
837</p><p>
838[ VC: Notation Attributes ]
839Values of this type must match one of the notation names included
840in the declaration; all notation names in the declaration must be declared.</p><p>
841
Daniel Veillard93d95252003-04-29 20:25:40 +0000842</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
843</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
844
845
Daniel Veillardd4330462003-04-29 12:40:16 +0000846</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEnumerationType"></a>xmlParseEnumerationType ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> xmlParseEnumerationType (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
847parse an Enumeration attribute type.
848</p><p>
849[59] Enumeration ::= '(' S? Nmtoken (S? '|' S? Nmtoken)* S? ')'
850</p><p>
851[ VC: Enumeration ]
852Values of this type must match one of the Nmtoken tokens in
853the declaration</p><p>
854
Daniel Veillard93d95252003-04-29 20:25:40 +0000855</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
856</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
857
858
Daniel Veillardd4330462003-04-29 12:40:16 +0000859</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEnumeratedType"></a>xmlParseEnumeratedType ()</h3><pre class="programlisting">int xmlParseEnumeratedType (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
860 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> *tree);</pre><p>
861parse an Enumerated attribute type.
862</p><p>
863[57] EnumeratedType ::= NotationType | Enumeration
864</p><p>
865[58] NotationType ::= 'NOTATION' S '(' S? Name (S? '|' S? Name)* S? ')'</p><p>
866
Daniel Veillard93d95252003-04-29 20:25:40 +0000867</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
868</td></tr><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td>
869</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
870
871
Daniel Veillardd4330462003-04-29 12:40:16 +0000872</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseAttributeType"></a>xmlParseAttributeType ()</h3><pre class="programlisting">int xmlParseAttributeType (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
873 <a href="libxml-tree.html#xmlEnumerationPtr">xmlEnumerationPtr</a> *tree);</pre><p>
874parse the Attribute list def for an element
875</p><p>
876[54] AttType ::= StringType | TokenizedType | EnumeratedType
877</p><p>
878[55] StringType ::= 'CDATA'
879</p><p>
880[56] TokenizedType ::= 'ID' | 'IDREF' | 'IDREFS' | 'ENTITY' |
881 'ENTITIES' | 'NMTOKEN' | 'NMTOKENS'
882</p><p>
883Validity constraints for attribute values syntax are checked in
884<a href="libxml-valid.html#xmlValidateAttributeValue">xmlValidateAttributeValue</a>()
885</p><p>
886[ VC: ID ]
887Values of type ID must match the Name production. A name must not
888appear more than once in an XML document as a value of this type;
889i.e., ID values must uniquely identify the elements which bear them.
890</p><p>
891[ VC: One ID per Element Type ]
892No element type may have more than one ID attribute specified.
893</p><p>
894[ VC: ID Attribute Default ]
895An ID attribute must have a declared default of <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="IMPLIED-CAPS">IMPLIED</GTKDOCLINK> or <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="REQUIRED-CAPS">REQUIRED</GTKDOCLINK>.
896</p><p>
897[ VC: IDREF ]
898Values of type IDREF must match the Name production, and values
899of type IDREFS must match Names; each IDREF Name must match the value
900of an ID attribute on some element in the XML document; i.e. IDREF
901values must match the value of some ID attribute.
902</p><p>
903[ VC: Entity Name ]
904Values of type ENTITY must match the Name production, values
905of type ENTITIES must match Names; each Entity Name must match the
906name of an unparsed entity declared in the DTD.
907</p><p>
908[ VC: Name Token ]
909Values of type NMTOKEN must match the Nmtoken production; values
910of type NMTOKENS must match Nmtokens.</p><p>
911
Daniel Veillard93d95252003-04-29 20:25:40 +0000912</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
913</td></tr><tr><td><span class="term"><i><tt>tree</tt></i> :</span></td><td>
914</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
915
916
Daniel Veillardd4330462003-04-29 12:40:16 +0000917</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseAttributeListDecl"></a>xmlParseAttributeListDecl ()</h3><pre class="programlisting">void xmlParseAttributeListDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
918: parse the Attribute list def for an element
919</p><p>
920[52] AttlistDecl ::= '&lt;!ATTLIST' S Name AttDef* S? '&gt;'
921</p><p>
922[53] AttDef ::= S Name S AttType S DefaultDecl</p><p>
923
Daniel Veillard93d95252003-04-29 20:25:40 +0000924</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
925
926
Daniel Veillardd4330462003-04-29 12:40:16 +0000927</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseElementMixedContentDecl"></a>xmlParseElementMixedContentDecl ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> xmlParseElementMixedContentDecl
928 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
929 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> inputchk);</pre><p>
930parse the declaration for a Mixed Element content
931The leading '(' and spaces have been skipped in xmlParseElementContentDecl
932</p><p>
933[51] Mixed ::= '(' S? '<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="PCDATA-CAPS">PCDATA</GTKDOCLINK>' (S? '|' S? Name)* S? ')*' |
934 '(' S? '<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="PCDATA-CAPS">PCDATA</GTKDOCLINK>' S? ')'
935</p><p>
936[ VC: Proper Group/PE Nesting ] applies to [51] too (see [49])
937</p><p>
938[ VC: No Duplicate Types ]
939The same name must not appear more than once in a single
940mixed-content declaration.</p><p>
941
Daniel Veillard93d95252003-04-29 20:25:40 +0000942</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
943</td></tr><tr><td><span class="term"><i><tt>inputchk</tt></i> :</span></td><td>
944</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
945
946
Daniel Veillardd4330462003-04-29 12:40:16 +0000947</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseElementChildrenContentDecl"></a>xmlParseElementChildrenContentDecl ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> xmlParseElementChildrenContentDecl
948 (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
949 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> inputchk);</pre><p>
950parse the declaration for a Mixed Element content
951The leading '(' and spaces have been skipped in xmlParseElementContentDecl
952</p><p>
953[47] children ::= (choice | seq) ('?' | '*' | '+')?
954</p><p>
955[48] cp ::= (Name | choice | seq) ('?' | '*' | '+')?
956</p><p>
957[49] choice ::= '(' S? cp ( S? '|' S? cp )* S? ')'
958</p><p>
959[50] seq ::= '(' S? cp ( S? ',' S? cp )* S? ')'
960</p><p>
961[ VC: Proper Group/PE Nesting ] applies to [49] and [50]
962TODO Parameter-entity replacement text must be properly nested
963with parenthesized groups. That is to say, if either of the
964opening or closing parentheses in a choice, seq, or Mixed
965construct is contained in the replacement text for a parameter
966entity, both must be contained in the same replacement text. For
967interoperability, if a parameter-entity reference appears in a
968choice, seq, or Mixed construct, its replacement text should not
969be empty, and neither the first nor last non-blank character of
970the replacement text should be a connector (| or ,).</p><p>
971
Daniel Veillard93d95252003-04-29 20:25:40 +0000972</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
973</td></tr><tr><td><span class="term"><i><tt>inputchk</tt></i> :</span></td><td>
974</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
975
976
Daniel Veillardd4330462003-04-29 12:40:16 +0000977</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseElementContentDecl"></a>xmlParseElementContentDecl ()</h3><pre class="programlisting">int xmlParseElementContentDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
978 <a href="libxml-tree.html#xmlChar">xmlChar</a> *name,
979 <a href="libxml-tree.html#xmlElementContentPtr">xmlElementContentPtr</a> *result);</pre><p>
980parse the declaration for an Element content either Mixed or Children,
981the cases EMPTY and ANY are handled directly in xmlParseElementDecl
982</p><p>
983[46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | children</p><p>
984
Daniel Veillard93d95252003-04-29 20:25:40 +0000985</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
986</td></tr><tr><td><span class="term"><i><tt>name</tt></i> :</span></td><td>
987</td></tr><tr><td><span class="term"><i><tt>result</tt></i> :</span></td><td>
988</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
989
990
Daniel Veillardd4330462003-04-29 12:40:16 +0000991</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseElementDecl"></a>xmlParseElementDecl ()</h3><pre class="programlisting">int xmlParseElementDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
992parse an Element declaration.
993</p><p>
994[45] elementdecl ::= '&lt;!ELEMENT' S Name S contentspec S? '&gt;'
995</p><p>
996[ VC: Unique Element Type Declaration ]
997No element type may be declared more than once</p><p>
998
Daniel Veillard93d95252003-04-29 20:25:40 +0000999</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1000</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1001
1002
Daniel Veillardd4330462003-04-29 12:40:16 +00001003</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseMarkupDecl"></a>xmlParseMarkupDecl ()</h3><pre class="programlisting">void xmlParseMarkupDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1004parse Markup declarations
1005</p><p>
1006[29] markupdecl ::= elementdecl | AttlistDecl | EntityDecl |
1007 NotationDecl | PI | Comment
1008</p><p>
1009[ VC: Proper Declaration/PE Nesting ]
1010Parameter-entity replacement text must be properly nested with
1011markup declarations. That is to say, if either the first character
1012or the last character of a markup declaration (markupdecl above) is
1013contained in the replacement text for a parameter-entity reference,
1014both must be contained in the same replacement text.
1015</p><p>
1016[ WFC: PEs in Internal Subset ]
1017In the internal DTD subset, parameter-entity references can occur
1018only where markup declarations can occur, not within markup declarations.
1019(This does not apply to references that occur in external parameter
1020entities or to the external subset.)</p><p>
1021
Daniel Veillard93d95252003-04-29 20:25:40 +00001022</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1023
1024
Daniel Veillardd4330462003-04-29 12:40:16 +00001025</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseCharRef"></a>xmlParseCharRef ()</h3><pre class="programlisting">int xmlParseCharRef (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1026parse Reference declarations
1027</p><p>
1028[66] CharRef ::= '&amp;#' [0-9]+ ';' |
1029 '&amp;<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x">x</GTKDOCLINK>' [0-9a-fA-F]+ ';'
1030</p><p>
1031[ WFC: Legal Character ]
1032Characters referred to using character references must match the
1033production for Char.</p><p>
1034
Daniel Veillard93d95252003-04-29 20:25:40 +00001035</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1036</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1037
1038
Daniel Veillardd4330462003-04-29 12:40:16 +00001039</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEntityRef"></a>xmlParseEntityRef ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> xmlParseEntityRef (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1040parse ENTITY references declarations
1041</p><p>
1042[68] EntityRef ::= '&amp;' Name ';'
1043</p><p>
1044[ WFC: Entity Declared ]
1045In a document without any DTD, a document with only an internal DTD
1046subset which contains no parameter entity references, or a document
1047with &quot;standalone='yes'&quot;, the Name given in the entity reference
1048must match that in an entity declaration, except that well-formed
1049documents need not declare any of the following entities: amp, lt,
1050gt, apos, quot. The declaration of a parameter entity must precede
1051any reference to it. Similarly, the declaration of a general entity
1052must precede any reference to it which appears in a default value in an
1053attribute-list declaration. Note that if entities are declared in the
1054external subset or in external parameter entities, a non-validating
1055processor is not obligated to read and process their declarations;
1056for such documents, the rule that an entity must be declared is a
1057well-formedness constraint only if standalone='yes'.
1058</p><p>
1059[ WFC: Parsed Entity ]
1060An entity reference must not contain the name of an unparsed entity</p><p>
1061
Daniel Veillard93d95252003-04-29 20:25:40 +00001062</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1063</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1064
1065
Daniel Veillardd4330462003-04-29 12:40:16 +00001066</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseReference"></a>xmlParseReference ()</h3><pre class="programlisting">void xmlParseReference (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1067parse and handle entity references in content, depending on the SAX
1068interface, this may end-up in a call to <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="character">character</GTKDOCLINK>() if this is a
1069CharRef, a predefined entity, if there is no <a href="libxml-SAX.html#reference">reference</a>() callback.
1070or if the parser was asked to switch to that mode.
1071</p><p>
1072[67] Reference ::= EntityRef | CharRef</p><p>
1073
Daniel Veillard93d95252003-04-29 20:25:40 +00001074</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1075
1076
Daniel Veillardd4330462003-04-29 12:40:16 +00001077</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParsePEReference"></a>xmlParsePEReference ()</h3><pre class="programlisting">void xmlParsePEReference (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1078parse PEReference declarations
1079The entity content is handled directly by pushing it's content as
1080a new input stream.
1081</p><p>
1082[69] PEReference ::= '%' Name ';'
1083</p><p>
1084[ WFC: No Recursion ]
1085A parsed entity must not contain a recursive
1086reference to itself, either directly or indirectly.
1087</p><p>
1088[ WFC: Entity Declared ]
1089In a document without any DTD, a document with only an internal DTD
1090subset which contains no parameter entity references, or a document
1091with &quot;standalone='yes'&quot;, ... ... The declaration of a parameter
1092entity must precede any reference to it...
1093</p><p>
1094[ VC: Entity Declared ]
1095In a document with an external subset or external parameter entities
1096with &quot;standalone='no'&quot;, ... ... The declaration of a parameter entity
1097must precede any reference to it...
1098</p><p>
1099[ WFC: In DTD ]
1100Parameter-entity references may only appear in the DTD.
1101NOTE: misleading but this is handled.</p><p>
1102
Daniel Veillard93d95252003-04-29 20:25:40 +00001103</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1104
1105
Daniel Veillardd4330462003-04-29 12:40:16 +00001106</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseDocTypeDecl"></a>xmlParseDocTypeDecl ()</h3><pre class="programlisting">void xmlParseDocTypeDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1107parse a DOCTYPE declaration
1108</p><p>
1109[28] doctypedecl ::= '&lt;!DOCTYPE' S Name (S ExternalID)? S?
1110 ('[' (markupdecl | PEReference | S)* ']' S?)? '&gt;'
1111</p><p>
1112[ VC: Root Element Type ]
1113The Name in the document type declaration must match the element
1114type of the root element.</p><p>
1115
Daniel Veillard93d95252003-04-29 20:25:40 +00001116</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1117
1118
Daniel Veillardd4330462003-04-29 12:40:16 +00001119</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseAttribute"></a>xmlParseAttribute ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseAttribute (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1120 <a href="libxml-tree.html#xmlChar">xmlChar</a> **value);</pre><p>
1121parse an attribute
1122</p><p>
1123[41] Attribute ::= Name Eq AttValue
1124</p><p>
1125[ WFC: No External Entity References ]
1126Attribute values cannot contain direct or indirect entity references
1127to external entities.
1128</p><p>
1129[ WFC: No &lt; in Attribute Values ]
1130The replacement text of any entity referred to directly or indirectly in
1131an attribute value (other than &quot;&amp;lt;&quot;) must not contain a &lt;.
1132</p><p>
1133[ VC: Attribute Value Type ]
1134The attribute must have been declared; the value must be of the type
1135declared for it.
1136</p><p>
1137[25] Eq ::= S? '=' S?
1138</p><p>
1139With namespace:
1140</p><p>
1141[NS 11] Attribute ::= QName Eq AttValue
1142</p><p>
1143Also the case QName == xmlns:??? is handled independently as a namespace
1144definition.</p><p>
1145
Daniel Veillard93d95252003-04-29 20:25:40 +00001146</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1147</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>
1148</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1149
1150
Daniel Veillardd4330462003-04-29 12:40:16 +00001151</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseStartTag"></a>xmlParseStartTag ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseStartTag (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1152parse a start of tag either for rule element or
1153EmptyElement. In both case we don't parse the tag closing chars.
1154</p><p>
1155[40] STag ::= '&lt;' Name (S Attribute)* S? '&gt;'
1156</p><p>
1157[ WFC: Unique Att Spec ]
1158No attribute name may appear more than once in the same start-tag or
1159empty-element tag.
1160</p><p>
1161[44] EmptyElemTag ::= '&lt;' Name (S Attribute)* S? '/&gt;'
1162</p><p>
1163[ WFC: Unique Att Spec ]
1164No attribute name may appear more than once in the same start-tag or
1165empty-element tag.
1166</p><p>
1167With namespace:
1168</p><p>
1169[NS 8] STag ::= '&lt;' QName (S Attribute)* S? '&gt;'
1170</p><p>
1171[NS 10] EmptyElement ::= '&lt;' QName (S Attribute)* S? '/&gt;'</p><p>
1172
Daniel Veillard93d95252003-04-29 20:25:40 +00001173</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1174</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1175
1176
Daniel Veillardd4330462003-04-29 12:40:16 +00001177</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEndTag"></a>xmlParseEndTag ()</h3><pre class="programlisting">void xmlParseEndTag (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1178parse an end of tag
1179</p><p>
1180[42] ETag ::= '&lt;/' Name S? '&gt;'
1181</p><p>
1182With namespace
1183</p><p>
1184[NS 9] ETag ::= '&lt;/' QName S? '&gt;'</p><p>
1185
Daniel Veillard93d95252003-04-29 20:25:40 +00001186</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1187
1188
Daniel Veillardd4330462003-04-29 12:40:16 +00001189</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseCDSect"></a>xmlParseCDSect ()</h3><pre class="programlisting">void xmlParseCDSect (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1190Parse escaped pure raw content.
1191</p><p>
1192[18] CDSect ::= CDStart CData CDEnd
1193</p><p>
1194[19] CDStart ::= '&lt;![CDATA['
1195</p><p>
1196[20] Data ::= (Char* - (Char* ']]&gt;' Char*))
1197</p><p>
1198[21] CDEnd ::= ']]&gt;'</p><p>
1199
Daniel Veillard93d95252003-04-29 20:25:40 +00001200</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1201
1202
Daniel Veillardd4330462003-04-29 12:40:16 +00001203</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseContent"></a>xmlParseContent ()</h3><pre class="programlisting">void xmlParseContent (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1204Parse a content:
1205</p><p>
1206[43] content ::= (element | CharData | Reference | CDSect | PI | Comment)*</p><p>
1207
Daniel Veillard93d95252003-04-29 20:25:40 +00001208</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1209
1210
Daniel Veillardd4330462003-04-29 12:40:16 +00001211</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseElement"></a>xmlParseElement ()</h3><pre class="programlisting">void xmlParseElement (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1212parse an XML element, this is highly recursive
1213</p><p>
1214[39] element ::= EmptyElemTag | STag content ETag
1215</p><p>
1216[ WFC: Element Type Match ]
1217The Name in an element's end-tag must match the element type in the
1218start-tag.
1219</p><p>
1220[ VC: Element Valid ]
1221An element is valid if there is a declaration matching elementdecl
1222where the Name matches the element type and one of the following holds:
1223 - The declaration matches EMPTY and the element has no content.
1224 - The declaration matches children and the sequence of child elements
1225 belongs to the language generated by the regular expression in the
1226 content model, with optional white space (characters matching the
1227 nonterminal S) between each pair of child elements.
1228 - The declaration matches Mixed and the content consists of character
1229 data and child elements whose types match names in the content model.
1230 - The declaration matches ANY, and the types of any child elements have
1231 been declared.</p><p>
1232
Daniel Veillard93d95252003-04-29 20:25:40 +00001233</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1234
1235
Daniel Veillardd4330462003-04-29 12:40:16 +00001236</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseVersionNum"></a>xmlParseVersionNum ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseVersionNum (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1237parse the XML version value.
1238</p><p>
1239[26] VersionNum ::= ([a-zA-Z0-9_.:] | '-')+</p><p>
1240
Daniel Veillard93d95252003-04-29 20:25:40 +00001241</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1242</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1243
1244
Daniel Veillardd4330462003-04-29 12:40:16 +00001245</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseVersionInfo"></a>xmlParseVersionInfo ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseVersionInfo (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1246parse the XML version.
1247</p><p>
1248[24] VersionInfo ::= S 'version' Eq (' VersionNum ' | &quot; VersionNum &quot;)
1249</p><p>
1250[25] Eq ::= S? '=' S?</p><p>
1251
Daniel Veillard93d95252003-04-29 20:25:40 +00001252</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1253</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1254
1255
Daniel Veillardd4330462003-04-29 12:40:16 +00001256</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEncName"></a>xmlParseEncName ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseEncName (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1257parse the XML encoding name
1258</p><p>
1259[81] EncName ::= [A-Za-z] ([A-Za-z0-9._] | '-')*</p><p>
1260
Daniel Veillard93d95252003-04-29 20:25:40 +00001261</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1262</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1263
1264
Daniel Veillardd4330462003-04-29 12:40:16 +00001265</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseEncodingDecl"></a>xmlParseEncodingDecl ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlParseEncodingDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1266parse the XML encoding declaration
1267</p><p>
1268[80] EncodingDecl ::= S 'encoding' Eq ('&quot;' EncName '&quot;' | &quot;'&quot; EncName &quot;'&quot;)
1269</p><p>
1270this setups the conversion filters.</p><p>
1271
Daniel Veillard93d95252003-04-29 20:25:40 +00001272</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1273</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1274
1275
Daniel Veillardd4330462003-04-29 12:40:16 +00001276</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseSDDecl"></a>xmlParseSDDecl ()</h3><pre class="programlisting">int xmlParseSDDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1277parse the XML standalone declaration
1278</p><p>
1279[32] SDDecl ::= S 'standalone' Eq
1280 ((&quot;'&quot; ('yes' | 'no') &quot;'&quot;) | ('&quot;' ('yes' | 'no')'&quot;'))
1281</p><p>
1282[ VC: Standalone Document Declaration ]
1283TODO The standalone document declaration must have the value &quot;no&quot;
1284if any external markup declarations contain declarations of:
1285 - attributes with default values, if elements to which these
1286 attributes apply appear in the document without specifications
1287 of values for these attributes, or
1288 - entities (other than amp, lt, gt, apos, quot), if references
1289 to those entities appear in the document, or
1290 - attributes with values subject to normalization, where the
1291 attribute appears in the document with a value which will change
1292 as a result of normalization, or
1293 - element types with element content, if white space occurs directly
1294 within any instance of those types.</p><p>
1295
Daniel Veillard93d95252003-04-29 20:25:40 +00001296</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1297</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1298
1299
Daniel Veillardd4330462003-04-29 12:40:16 +00001300</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseXMLDecl"></a>xmlParseXMLDecl ()</h3><pre class="programlisting">void xmlParseXMLDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1301parse an XML declaration header
1302</p><p>
1303[23] XMLDecl ::= '&lt;?xml' VersionInfo EncodingDecl? SDDecl? S? '?&gt;'</p><p>
1304
Daniel Veillard93d95252003-04-29 20:25:40 +00001305</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1306
1307
Daniel Veillardd4330462003-04-29 12:40:16 +00001308</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseTextDecl"></a>xmlParseTextDecl ()</h3><pre class="programlisting">void xmlParseTextDecl (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1309parse an XML declaration header for external entities
1310</p><p>
1311[77] TextDecl ::= '&lt;?xml' VersionInfo? EncodingDecl S? '?&gt;'
1312</p><p>
1313Question: Seems that EncodingDecl is mandatory ? Is that a typo ?</p><p>
1314
Daniel Veillard93d95252003-04-29 20:25:40 +00001315</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1316
1317
Daniel Veillardd4330462003-04-29 12:40:16 +00001318</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseMisc"></a>xmlParseMisc ()</h3><pre class="programlisting">void xmlParseMisc (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1319parse an XML Misc* optional field.
1320</p><p>
1321[27] Misc ::= Comment | PI | S</p><p>
1322
Daniel Veillard93d95252003-04-29 20:25:40 +00001323</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1324
1325
Daniel Veillardd4330462003-04-29 12:40:16 +00001326</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParseExternalSubset"></a>xmlParseExternalSubset ()</h3><pre class="programlisting">void xmlParseExternalSubset (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1327 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *ExternalID,
1328 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *SystemID);</pre><p>
1329parse Markup declarations from an external subset
1330</p><p>
1331[30] extSubset ::= textDecl? extSubsetDecl
1332</p><p>
1333[31] extSubsetDecl ::= (markupdecl | conditionalSect | PEReference | S) *</p><p>
1334
Daniel Veillard93d95252003-04-29 20:25:40 +00001335</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1336</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i> :</span></td><td>
1337</td></tr><tr><td><span class="term"><i><tt>SystemID</tt></i> :</span></td><td>
1338
1339
1340</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-SUBSTITUTE-NONE-CAPS"></a>XML_SUBSTITUTE_NONE</h3><pre class="programlisting">#define XML_SUBSTITUTE_NONE</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +00001341If no entities need to be substituted.</p><p>
1342
Daniel Veillard93d95252003-04-29 20:25:40 +00001343</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-SUBSTITUTE-REF-CAPS"></a>XML_SUBSTITUTE_REF</h3><pre class="programlisting">#define XML_SUBSTITUTE_REF</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +00001344Whether general entities need to be substituted.</p><p>
1345
Daniel Veillard93d95252003-04-29 20:25:40 +00001346</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-SUBSTITUTE-PEREF-CAPS"></a>XML_SUBSTITUTE_PEREF</h3><pre class="programlisting">#define XML_SUBSTITUTE_PEREF</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +00001347Whether parameter entities need to be substituted.</p><p>
1348
Daniel Veillard93d95252003-04-29 20:25:40 +00001349</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="XML-SUBSTITUTE-BOTH-CAPS"></a>XML_SUBSTITUTE_BOTH</h3><pre class="programlisting">#define XML_SUBSTITUTE_BOTH</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +00001350Both general and parameter entities need to be substituted.</p><p>
1351
1352</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlDecodeEntities"></a>xmlDecodeEntities ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlDecodeEntities (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1353 int len,
1354 int what,
1355 <a href="libxml-tree.html#xmlChar">xmlChar</a> end,
1356 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2,
1357 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3);</pre><p>
1358This function is deprecated, we now always process entities content
1359through xmlStringDecodeEntities
1360</p><p>
1361TODO: remove it in next major release.
1362</p><p>
1363[67] Reference ::= EntityRef | CharRef
1364</p><p>
1365[69] PEReference ::= '%' Name ';'</p><p>
1366
Daniel Veillard93d95252003-04-29 20:25:40 +00001367</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1368</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>
1369</td></tr><tr><td><span class="term"><i><tt>what</tt></i> :</span></td><td>
1370</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td>
1371</td></tr><tr><td><span class="term"><i><tt>end2</tt></i> :</span></td><td>
1372</td></tr><tr><td><span class="term"><i><tt>end3</tt></i> :</span></td><td>
1373</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1374
1375
Daniel Veillardd4330462003-04-29 12:40:16 +00001376</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringDecodeEntities"></a>xmlStringDecodeEntities ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* xmlStringDecodeEntities (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1377 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *str,
1378 int what,
1379 <a href="libxml-tree.html#xmlChar">xmlChar</a> end,
1380 <a href="libxml-tree.html#xmlChar">xmlChar</a> end2,
1381 <a href="libxml-tree.html#xmlChar">xmlChar</a> end3);</pre><p>
1382Takes a entity string content and process to do the adequate substitutions.
1383</p><p>
1384[67] Reference ::= EntityRef | CharRef
1385</p><p>
1386[69] PEReference ::= '%' Name ';'</p><p>
1387
Daniel Veillard93d95252003-04-29 20:25:40 +00001388</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1389</td></tr><tr><td><span class="term"><i><tt>str</tt></i> :</span></td><td>
1390</td></tr><tr><td><span class="term"><i><tt>what</tt></i> :</span></td><td>
1391</td></tr><tr><td><span class="term"><i><tt>end</tt></i> :</span></td><td>
1392</td></tr><tr><td><span class="term"><i><tt>end2</tt></i> :</span></td><td>
1393</td></tr><tr><td><span class="term"><i><tt>end3</tt></i> :</span></td><td>
1394</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1395
1396
Daniel Veillardd4330462003-04-29 12:40:16 +00001397</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="nodePush"></a>nodePush ()</h3><pre class="programlisting">int nodePush (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1398 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> value);</pre><p>
1399Pushes a new element node on top of the node stack</p><p>
1400
Daniel Veillard93d95252003-04-29 20:25:40 +00001401</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1402</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>
1403</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1404
1405
Daniel Veillardd4330462003-04-29 12:40:16 +00001406</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="nodePop"></a>nodePop ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> nodePop (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1407Pops the top element node from the node stack</p><p>
1408
Daniel Veillard93d95252003-04-29 20:25:40 +00001409</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1410</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1411
1412
Daniel Veillardd4330462003-04-29 12:40:16 +00001413</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="inputPush"></a>inputPush ()</h3><pre class="programlisting">int inputPush (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1414 <a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> value);</pre><p>
1415Pushes a new parser input on top of the input stack</p><p>
1416
Daniel Veillard93d95252003-04-29 20:25:40 +00001417</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1418</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>
1419</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1420
1421
Daniel Veillardd4330462003-04-29 12:40:16 +00001422</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="inputPop"></a>inputPop ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> inputPop (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1423Pops the top parser input from the input stack</p><p>
1424
Daniel Veillard93d95252003-04-29 20:25:40 +00001425</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1426</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1427
1428
Daniel Veillardd4330462003-04-29 12:40:16 +00001429</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="namePop"></a>namePop ()</h3><pre class="programlisting"><a href="libxml-tree.html#xmlChar">xmlChar</a>* namePop (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1430Pops the top element name from the name stack</p><p>
1431
Daniel Veillard93d95252003-04-29 20:25:40 +00001432</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1433</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1434
1435
Daniel Veillardd4330462003-04-29 12:40:16 +00001436</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="namePush"></a>namePush ()</h3><pre class="programlisting">int namePush (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1437 <a href="libxml-tree.html#xmlChar">xmlChar</a> *value);</pre><p>
1438Pushes a new element name on top of the name stack</p><p>
1439
Daniel Veillard93d95252003-04-29 20:25:40 +00001440</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1441</td></tr><tr><td><span class="term"><i><tt>value</tt></i> :</span></td><td>
1442</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1443
1444
Daniel Veillardd4330462003-04-29 12:40:16 +00001445</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSkipBlankChars"></a>xmlSkipBlankChars ()</h3><pre class="programlisting">int xmlSkipBlankChars (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1446skip all blanks character found at that point in the input streams.
1447It pops up finished entities in the process if allowable at that point.</p><p>
1448
Daniel Veillard93d95252003-04-29 20:25:40 +00001449</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1450</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1451
1452
Daniel Veillardd4330462003-04-29 12:40:16 +00001453</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlStringCurrentChar"></a>xmlStringCurrentChar ()</h3><pre class="programlisting">int xmlStringCurrentChar (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1454 const <a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
1455 int *len);</pre><p>
1456The current char value, if using UTF-8 this may actually span multiple
1457bytes in the input buffer.</p><p>
1458
Daniel Veillard93d95252003-04-29 20:25:40 +00001459</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1460</td></tr><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td>
1461</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>
1462</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1463
1464
Daniel Veillardd4330462003-04-29 12:40:16 +00001465</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserHandlePEReference"></a>xmlParserHandlePEReference ()</h3><pre class="programlisting">void xmlParserHandlePEReference (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1466[69] PEReference ::= '%' Name ';'
1467</p><p>
1468[ WFC: No Recursion ]
1469A parsed entity must not contain a recursive
1470reference to itself, either directly or indirectly.
1471</p><p>
1472[ WFC: Entity Declared ]
1473In a document without any DTD, a document with only an internal DTD
1474subset which contains no parameter entity references, or a document
1475with &quot;standalone='yes'&quot;, ... ... The declaration of a parameter
1476entity must precede any reference to it...
1477</p><p>
1478[ VC: Entity Declared ]
1479In a document with an external subset or external parameter entities
1480with &quot;standalone='no'&quot;, ... ... The declaration of a parameter entity
1481must precede any reference to it...
1482</p><p>
1483[ WFC: In DTD ]
1484Parameter-entity references may only appear in the DTD.
1485NOTE: misleading but this is handled.
1486</p><p>
1487A PEReference may have been detected in the current input stream
1488the handling is done accordingly to
1489 http://www.w3.org/TR/REC-xml<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="entproc">entproc</GTKDOCLINK>
1490i.e.
1491 - Included in literal in entity values
1492 - Included as Parameter Entity reference within DTDs</p><p>
1493
Daniel Veillard93d95252003-04-29 20:25:40 +00001494</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1495
1496
Daniel Veillardd4330462003-04-29 12:40:16 +00001497</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserHandleReference"></a>xmlParserHandleReference ()</h3><pre class="programlisting">void xmlParserHandleReference (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1498TODO: Remove, now deprecated ... the test is done directly in the
1499 content parsing
1500routines.
1501</p><p>
1502[67] Reference ::= EntityRef | CharRef
1503</p><p>
1504[68] EntityRef ::= '&amp;' Name ';'
1505</p><p>
1506[ WFC: Entity Declared ]
1507the Name given in the entity reference must match that in an entity
1508declaration, except that well-formed documents need not declare any
1509of the following entities: amp, lt, gt, apos, quot.
1510</p><p>
1511[ WFC: Parsed Entity ]
1512An entity reference must not contain the name of an unparsed entity
1513</p><p>
1514[66] CharRef ::= '&amp;#' [0-9]+ ';' |
1515 '&amp;<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="x">x</GTKDOCLINK>' [0-9a-fA-F]+ ';'
1516</p><p>
1517A PEReference may have been detected in the current input stream
1518the handling is done accordingly to
1519 http://www.w3.org/TR/REC-xml<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="entproc">entproc</GTKDOCLINK></p><p>
1520
Daniel Veillard93d95252003-04-29 20:25:40 +00001521</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1522
1523
Daniel Veillardd4330462003-04-29 12:40:16 +00001524</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCheckLanguageID"></a>xmlCheckLanguageID ()</h3><pre class="programlisting">int xmlCheckLanguageID (const <a href="libxml-tree.html#xmlChar">xmlChar</a> *lang);</pre><p>
1525Checks that the value conforms to the LanguageID production:
1526</p><p>
1527NOTE: this is somewhat deprecated, those productions were removed from
1528 the XML Second edition.
1529</p><p>
1530[33] LanguageID ::= Langcode ('-' Subcode)*
1531[34] Langcode ::= ISO639Code | IanaCode | UserCode
1532[35] ISO639Code ::= ([a-z] | [A-Z]) ([a-z] | [A-Z])
1533[36] IanaCode ::= ('i' | 'I') '-' ([a-z] | [A-Z])+
1534[37] UserCode ::= ('x' | 'X') '-' ([a-z] | [A-Z])+
1535[38] Subcode ::= ([a-z] | [A-Z])+</p><p>
1536
Daniel Veillard93d95252003-04-29 20:25:40 +00001537</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>lang</tt></i> :</span></td><td>
1538</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1539
1540
Daniel Veillardd4330462003-04-29 12:40:16 +00001541</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCurrentChar"></a>xmlCurrentChar ()</h3><pre class="programlisting">int xmlCurrentChar (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt,
1542 int *len);</pre><p>
1543The current char value, if using UTF-8 this may actually span multiple
1544bytes in the input buffer. Implement the end of line normalization:
15452.11 End-of-Line Handling
1546Wherever an external parsed entity or the literal entity value
1547of an internal parsed entity contains either the literal two-character
1548sequence &quot;<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK><GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>&quot; or a standalone literal <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xD">xD</GTKDOCLINK>, an XML processor
1549must pass to the application the single character <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK>.
1550This behavior can conveniently be produced by normalizing all
1551line breaks to <GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="xA">xA</GTKDOCLINK> on input, before parsing.)</p><p>
1552
Daniel Veillard93d95252003-04-29 20:25:40 +00001553</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1554</td></tr><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>
1555</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1556
1557
Daniel Veillardd4330462003-04-29 12:40:16 +00001558</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyCharMultiByte"></a>xmlCopyCharMultiByte ()</h3><pre class="programlisting">int xmlCopyCharMultiByte (<a href="libxml-tree.html#xmlChar">xmlChar</a> *out,
1559 int val);</pre><p>
1560append the char value in the array</p><p>
1561
Daniel Veillard93d95252003-04-29 20:25:40 +00001562</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out</tt></i> :</span></td><td>
1563</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td>
1564</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1565
1566
Daniel Veillardd4330462003-04-29 12:40:16 +00001567</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlCopyChar"></a>xmlCopyChar ()</h3><pre class="programlisting">int xmlCopyChar (int len,
1568 <a href="libxml-tree.html#xmlChar">xmlChar</a> *out,
1569 int val);</pre><p>
1570append the char value in the array</p><p>
1571
Daniel Veillard93d95252003-04-29 20:25:40 +00001572</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>len</tt></i> :</span></td><td>
1573</td></tr><tr><td><span class="term"><i><tt>out</tt></i> :</span></td><td>
1574</td></tr><tr><td><span class="term"><i><tt>val</tt></i> :</span></td><td>
1575</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1576
1577
Daniel Veillardd4330462003-04-29 12:40:16 +00001578</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNextChar"></a>xmlNextChar ()</h3><pre class="programlisting">void xmlNextChar (<a href="libxml-tree.html#xmlParserCtxtPtr">xmlParserCtxtPtr</a> ctxt);</pre><p>
1579Skip to the next char input char.</p><p>
1580
Daniel Veillard93d95252003-04-29 20:25:40 +00001581</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td>
1582
1583
Daniel Veillardd4330462003-04-29 12:40:16 +00001584</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlParserInputShrink"></a>xmlParserInputShrink ()</h3><pre class="programlisting">void xmlParserInputShrink (<a href="libxml-tree.html#xmlParserInputPtr">xmlParserInputPtr</a> in);</pre><p>
1585This function removes used input for the parser.</p><p>
1586
Daniel Veillard93d95252003-04-29 20:25:40 +00001587</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>in</tt></i> :</span></td><td>
1588
1589
Daniel Veillardd4330462003-04-29 12:40:16 +00001590</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="htmlInitAutoClose"></a>htmlInitAutoClose ()</h3><pre class="programlisting">void htmlInitAutoClose (void);</pre><p>
1591Initialize the htmlStartCloseIndex for fast lookup of closing tags names.
1592This is not reentrant. Call <a href="libxml-parser.html#xmlInitParser">xmlInitParser</a>() once before processing in
1593case of use in multithreaded programs.</p><p>
1594
1595</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="htmlCreateFileParserCtxt"></a>htmlCreateFileParserCtxt ()</h3><pre class="programlisting"><a href="libxml-HTMLparser.html#htmlParserCtxtPtr">htmlParserCtxtPtr</a> htmlCreateFileParserCtxt (const char *filename,
1596 const char *encoding);</pre><p>
1597Create a parser context for a file content.
1598Automatic support for ZLIB/Compress compressed document is provided
1599by default if found at compile-time.</p><p>
1600
Daniel Veillard93d95252003-04-29 20:25:40 +00001601</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td>
1602</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td>
1603</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>
1604
1605
Daniel Veillardd4330462003-04-29 12:40:16 +00001606</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlEntityReferenceFunc"></a>xmlEntityReferenceFunc ()</h3><pre class="programlisting">void (*xmlEntityReferenceFunc) (<a href="libxml-tree.html#xmlEntityPtr">xmlEntityPtr</a> ent,
1607 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> firstNode,
1608 <a href="libxml-tree.html#xmlNodePtr">xmlNodePtr</a> lastNode);</pre><p>
1609Callback function used when one needs to be able to track back the
1610provenance of a chunk of nodes inherited from an entity replacement.</p><p>
1611
Daniel Veillard93d95252003-04-29 20:25:40 +00001612</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ent</tt></i> :</span></td><td>
1613</td></tr><tr><td><span class="term"><i><tt>firstNode</tt></i> :</span></td><td>
1614</td></tr><tr><td><span class="term"><i><tt>lastNode</tt></i> :</span></td><td>
1615
1616
Daniel Veillardd4330462003-04-29 12:40:16 +00001617</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSetEntityReferenceFunc"></a>xmlSetEntityReferenceFunc ()</h3><pre class="programlisting">void xmlSetEntityReferenceFunc (<a href="libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a> func);</pre><p>
1618Set the function to call call back when a xml reference has been made</p><p>
1619
Daniel Veillard93d95252003-04-29 20:25:40 +00001620</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>func</tt></i> :</span></td><td>
1621
1622
Daniel Veillardd4330462003-04-29 12:40:16 +00001623</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-DOCBparser.html"><b>&lt;&lt; DOCBparser</b></a></td><td align="right"><a accesskey="n" href="libxml-encoding.html"><b>encoding &gt;&gt;</b></a></td></tr></table></body></html>