blob: 92706acd82933344510ccff93bebde9d6805b521 [file] [log] [blame]
Daniel Veillardd4330462003-04-29 12:40:16 +00001<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>xmlschemas</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
2 .synopsis, .classsynopsis {
3 background: #eeeeee;
4 border: solid 1px #aaaaaa;
5 padding: 0.5em;
6 }
7 .programlisting {
8 background: #eeeeff;
9 border: solid 1px #aaaaff;
10 padding: 0.5em;
11 }
12 .variablelist {
13 padding: 4px;
14 margin-left: 3em;
15 }
16 .navigation {
17 background: #ffeeee;
18 border: solid 1px #ffaaaa;
19 margin-top: 0.5em;
20 margin-bottom: 0.5em;
21 }
22 .navigation a {
23 color: #770000;
24 }
25 .navigation a:visited {
26 color: #550000;
27 }
28 .navigation .title {
29 font-size: 200%;
30 }
31 </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-xmlunicode.html" title="xmlunicode"><link rel="next" href="libxml-xmlschemastypes.html" title="xmlschemastypes"></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-xmlunicode.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-xmlschemastypes.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-xmlschemas"></a><div class="titlepage"></div><div class="refnamediv"><h2>xmlschemas</h2><p>xmlschemas &#8212; </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
Daniel Veillard80ce3732002-10-07 17:39:30 +000032
Daniel Veillardd4330462003-04-29 12:40:16 +000033
34
35enum <a href="libxml-xmlschemas.html#xmlSchemaValidError">xmlSchemaValidError</a>;
36struct <a href="libxml-xmlschemas.html#xmlSchema">xmlSchema</a>;
37typedef <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a>;
38void (<a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">*xmlSchemaValidityErrorFunc</a>) (void *ctx,
Daniel Veillard80ce3732002-10-07 17:39:30 +000039 const char *msg,
40 ...);
Daniel Veillardd4330462003-04-29 12:40:16 +000041void (<a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">*xmlSchemaValidityWarningFunc</a>) (void *ctx,
Daniel Veillard80ce3732002-10-07 17:39:30 +000042 const char *msg,
43 ...);
Daniel Veillardd4330462003-04-29 12:40:16 +000044struct <a href="libxml-xmlschemas.html#xmlSchemaParserCtxt">xmlSchemaParserCtxt</a>;
45typedef <a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a>;
46struct <a href="libxml-xmlschemas.html#xmlSchemaValidCtxt">xmlSchemaValidCtxt</a>;
47typedef <a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a>;
48<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> <a href="libxml-xmlschemas.html#xmlSchemaNewParserCtxt">xmlSchemaNewParserCtxt</a>
Daniel Veillard80ce3732002-10-07 17:39:30 +000049 (const char *URL);
Daniel Veillardd4330462003-04-29 12:40:16 +000050<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> <a href="libxml-xmlschemas.html#xmlSchemaNewMemParserCtxt">xmlSchemaNewMemParserCtxt</a>
Daniel Veillardaec63562003-03-23 20:42:17 +000051 (const char *buffer,
52 int size);
Daniel Veillardd4330462003-04-29 12:40:16 +000053void <a href="libxml-xmlschemas.html#xmlSchemaFreeParserCtxt">xmlSchemaFreeParserCtxt</a> (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt);
54void <a href="libxml-xmlschemas.html#xmlSchemaSetParserErrors">xmlSchemaSetParserErrors</a> (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt,
55 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err,
56 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn,
Daniel Veillard80ce3732002-10-07 17:39:30 +000057 void *ctx);
Daniel Veillardd4330462003-04-29 12:40:16 +000058<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> <a href="libxml-xmlschemas.html#xmlSchemaParse">xmlSchemaParse</a> (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt);
59void <a href="libxml-xmlschemas.html#xmlSchemaFree">xmlSchemaFree</a> (<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);
60void <a href="libxml-xmlschemas.html#xmlSchemaDump">xmlSchemaDump</a> (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *output,
61 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);
62void <a href="libxml-xmlschemas.html#xmlSchemaSetValidErrors">xmlSchemaSetValidErrors</a> (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
63 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err,
64 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn,
Daniel Veillard80ce3732002-10-07 17:39:30 +000065 void *ctx);
Daniel Veillardd4330462003-04-29 12:40:16 +000066<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> <a href="libxml-xmlschemas.html#xmlSchemaNewValidCtxt">xmlSchemaNewValidCtxt</a> (<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);
67void <a href="libxml-xmlschemas.html#xmlSchemaFreeValidCtxt">xmlSchemaFreeValidCtxt</a> (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt);
68int <a href="libxml-xmlschemas.html#xmlSchemaValidateDoc">xmlSchemaValidateDoc</a> (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
69 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> instance);
70int <a href="libxml-xmlschemas.html#xmlSchemaValidateStream">xmlSchemaValidateStream</a> (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
71 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input,
72 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc,
73 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax,
74 void *user_data);
75</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
76
77</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidError"></a>enum xmlSchemaValidError</h3><pre class="programlisting">typedef enum {
Daniel Veillard80ce3732002-10-07 17:39:30 +000078 XML_SCHEMAS_ERR_OK = 0,
79 XML_SCHEMAS_ERR_NOROOT = 1,
80 XML_SCHEMAS_ERR_UNDECLAREDELEM,
81 XML_SCHEMAS_ERR_NOTTOPLEVEL,
82 XML_SCHEMAS_ERR_MISSING,
83 XML_SCHEMAS_ERR_WRONGELEM,
84 XML_SCHEMAS_ERR_NOTYPE,
85 XML_SCHEMAS_ERR_NOROLLBACK,
86 XML_SCHEMAS_ERR_ISABSTRACT,
87 XML_SCHEMAS_ERR_NOTEMPTY,
88 XML_SCHEMAS_ERR_ELEMCONT,
89 XML_SCHEMAS_ERR_HAVEDEFAULT,
90 XML_SCHEMAS_ERR_NOTNILLABLE,
91 XML_SCHEMAS_ERR_EXTRACONTENT,
92 XML_SCHEMAS_ERR_INVALIDATTR,
93 XML_SCHEMAS_ERR_INVALIDELEM,
94 XML_SCHEMAS_ERR_NOTDETERMINIST,
95 XML_SCHEMAS_ERR_CONSTRUCT,
96 XML_SCHEMAS_ERR_INTERNAL,
97 XML_SCHEMAS_ERR_NOTSIMPLE,
98 XML_SCHEMAS_ERR_ATTRUNKNOWN,
99 XML_SCHEMAS_ERR_ATTRINVALID,
Daniel Veillardc2d4a932003-04-01 11:13:05 +0000100 XML_SCHEMAS_ERR_VALUE,
Daniel Veillardd4330462003-04-29 12:40:16 +0000101 XML_SCHEMAS_ERR_FACET,
Daniel Veillard80ce3732002-10-07 17:39:30 +0000102 XML_SCHEMAS_ERR_,
103 XML_SCHEMAS_ERR_XXX
Daniel Veillardd4330462003-04-29 12:40:16 +0000104} xmlSchemaValidError;
105</pre><p>
106
107</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchema"></a>struct xmlSchema</h3><pre class="programlisting">struct xmlSchema {
Daniel Veillard80ce3732002-10-07 17:39:30 +0000108 xmlChar *name; /* schema name */
109 xmlChar *targetNamespace; /* the target namespace */
110 xmlChar *version;
111 xmlChar *id;
112 xmlDocPtr doc;
113 xmlSchemaAnnotPtr annot;
114 int flags;
115
116 xmlHashTablePtr typeDecl;
117 xmlHashTablePtr attrDecl;
118 xmlHashTablePtr attrgrpDecl;
119 xmlHashTablePtr elemDecl;
120 xmlHashTablePtr notaDecl;
Daniel Veillardaec63562003-03-23 20:42:17 +0000121
122 xmlHashTablePtr schemasImports;
123
124 void *_private; /* unused by the library for users or bindings */
Daniel Veillardd7cec922003-06-13 12:30:10 +0000125 xmlHashTablePtr groupDecl;
Daniel Veillardd4330462003-04-29 12:40:16 +0000126};
127</pre><p>
128
Daniel Veillardd7cec922003-06-13 12:30:10 +0000129</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaPtr"></a>xmlSchemaPtr</h3><pre class="programlisting">typedef xmlSchema *xmlSchemaPtr;
130</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000131
132</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidityErrorFunc"></a>xmlSchemaValidityErrorFunc ()</h3><pre class="programlisting">void (*xmlSchemaValidityErrorFunc) (void *ctx,
Daniel Veillard80ce3732002-10-07 17:39:30 +0000133 const char *msg,
Daniel Veillardd4330462003-04-29 12:40:16 +0000134 ...);</pre><p>
135
136</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i> :</span></td><td>
137</td></tr><tr><td><span class="term"><i><tt>msg</tt></i> :</span></td><td>
138</td></tr><tr><td><span class="term"><i><tt>...</tt></i> :</span></td><td>
139
140
141</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidityWarningFunc"></a>xmlSchemaValidityWarningFunc ()</h3><pre class="programlisting">void (*xmlSchemaValidityWarningFunc) (void *ctx,
Daniel Veillard48267432002-10-18 11:21:38 +0000142 const char *msg,
Daniel Veillardd4330462003-04-29 12:40:16 +0000143 ...);</pre><p>
144
145</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i> :</span></td><td>
146</td></tr><tr><td><span class="term"><i><tt>msg</tt></i> :</span></td><td>
147</td></tr><tr><td><span class="term"><i><tt>...</tt></i> :</span></td><td>
148
149
150</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaParserCtxt"></a>struct xmlSchemaParserCtxt</h3><pre class="programlisting">struct xmlSchemaParserCtxt;</pre><p>
151
Daniel Veillardd7cec922003-06-13 12:30:10 +0000152</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaParserCtxtPtr"></a>xmlSchemaParserCtxtPtr</h3><pre class="programlisting">typedef xmlSchemaParserCtxt *xmlSchemaParserCtxtPtr;
153</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000154
155</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidCtxt"></a>struct xmlSchemaValidCtxt</h3><pre class="programlisting">struct xmlSchemaValidCtxt;</pre><p>
156A Schemas validation context</p><p>
157
Daniel Veillardd7cec922003-06-13 12:30:10 +0000158</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidCtxtPtr"></a>xmlSchemaValidCtxtPtr</h3><pre class="programlisting">typedef xmlSchemaValidCtxt *xmlSchemaValidCtxtPtr;
159</pre><p>
Daniel Veillardd4330462003-04-29 12:40:16 +0000160
161</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaNewParserCtxt"></a>xmlSchemaNewParserCtxt ()</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> xmlSchemaNewParserCtxt
162 (const char *URL);</pre><p>
163Create an XML Schemas parse context for that file/resource expected
164to contain an XML Schemas file.</p><p>
165
Daniel Veillardd7cec922003-06-13 12:30:10 +0000166</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> the location of the schema
167</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the parser context or NULL in case of error
Daniel Veillardd4330462003-04-29 12:40:16 +0000168</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaNewMemParserCtxt"></a>xmlSchemaNewMemParserCtxt ()</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> xmlSchemaNewMemParserCtxt
Daniel Veillardaec63562003-03-23 20:42:17 +0000169 (const char *buffer,
Daniel Veillardd4330462003-04-29 12:40:16 +0000170 int size);</pre><p>
171Create an XML Schemas parse context for that memory buffer expected
172to contain an XML Schemas file.</p><p>
173
Daniel Veillardd7cec922003-06-13 12:30:10 +0000174</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> a pointer to a char array containing the schemas
175</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> the size of the array
176</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the parser context or NULL in case of error
Daniel Veillardd4330462003-04-29 12:40:16 +0000177</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaFreeParserCtxt"></a>xmlSchemaFreeParserCtxt ()</h3><pre class="programlisting">void xmlSchemaFreeParserCtxt (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt);</pre><p>
178Free the resources associated to the schema parser context</p><p>
179
Daniel Veillardd7cec922003-06-13 12:30:10 +0000180</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> the schema parser context
Daniel Veillardd4330462003-04-29 12:40:16 +0000181</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaSetParserErrors"></a>xmlSchemaSetParserErrors ()</h3><pre class="programlisting">void xmlSchemaSetParserErrors (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt,
182 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err,
183 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn,
184 void *ctx);</pre><p>
185Set the callback functions used to handle errors for a validation context</p><p>
186
Daniel Veillardd7cec922003-06-13 12:30:10 +0000187</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> a schema validation context
188</td></tr><tr><td><span class="term"><i><tt>err</tt></i> :</span></td><td> the error callback
189</td></tr><tr><td><span class="term"><i><tt>warn</tt></i> :</span></td><td> the warning callback
190</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i> :</span></td><td> contextual data for the callbacks
Daniel Veillardd4330462003-04-29 12:40:16 +0000191</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaParse"></a>xmlSchemaParse ()</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> xmlSchemaParse (<a href="libxml-xmlschemas.html#xmlSchemaParserCtxtPtr">xmlSchemaParserCtxtPtr</a> ctxt);</pre><p>
192parse a schema definition resource and build an internal
Daniel Veillard80ce3732002-10-07 17:39:30 +0000193XML Shema struture which can be used to validate instances.
Daniel Veillardd4330462003-04-29 12:40:16 +0000194*WARNING* this interface is highly subject to change</p><p>
195
Daniel Veillardd7cec922003-06-13 12:30:10 +0000196</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> a schema validation context
197</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the internal XML Schema structure built from the resource or
198 NULL in case of error
Daniel Veillardd4330462003-04-29 12:40:16 +0000199</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaFree"></a>xmlSchemaFree ()</h3><pre class="programlisting">void xmlSchemaFree (<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);</pre><p>
200Deallocate a Schema structure.</p><p>
201
Daniel Veillardd7cec922003-06-13 12:30:10 +0000202</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>schema</tt></i> :</span></td><td> a schema structure
Daniel Veillardd4330462003-04-29 12:40:16 +0000203</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaDump"></a>xmlSchemaDump ()</h3><pre class="programlisting">void xmlSchemaDump (<GTKDOCLINK xmlns="http://www.w3.org/TR/xhtml1/transitional" HREF="FILE-CAPS">FILE</GTKDOCLINK> *output,
204 <a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);</pre><p>
205Dump a Schema structure.</p><p>
206
Daniel Veillardd7cec922003-06-13 12:30:10 +0000207</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>output</tt></i> :</span></td><td> the file output
208</td></tr><tr><td><span class="term"><i><tt>schema</tt></i> :</span></td><td> a schema structure
Daniel Veillardd4330462003-04-29 12:40:16 +0000209</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaSetValidErrors"></a>xmlSchemaSetValidErrors ()</h3><pre class="programlisting">void xmlSchemaSetValidErrors (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
210 <a href="libxml-xmlschemas.html#xmlSchemaValidityErrorFunc">xmlSchemaValidityErrorFunc</a> err,
211 <a href="libxml-xmlschemas.html#xmlSchemaValidityWarningFunc">xmlSchemaValidityWarningFunc</a> warn,
212 void *ctx);</pre><p>
213Set the error and warning callback informations</p><p>
214
Daniel Veillardd7cec922003-06-13 12:30:10 +0000215</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> a schema validation context
216</td></tr><tr><td><span class="term"><i><tt>err</tt></i> :</span></td><td> the error function
217</td></tr><tr><td><span class="term"><i><tt>warn</tt></i> :</span></td><td> the warning function
218</td></tr><tr><td><span class="term"><i><tt>ctx</tt></i> :</span></td><td> the functions context
Daniel Veillardd4330462003-04-29 12:40:16 +0000219</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaNewValidCtxt"></a>xmlSchemaNewValidCtxt ()</h3><pre class="programlisting"><a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> xmlSchemaNewValidCtxt (<a href="libxml-xmlschemas.html#xmlSchemaPtr">xmlSchemaPtr</a> schema);</pre><p>
220Create an XML Schemas validation context based on the given schema</p><p>
221
Daniel Veillardd7cec922003-06-13 12:30:10 +0000222</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>schema</tt></i> :</span></td><td> a precompiled XML Schemas
223</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the validation context or NULL in case of error
Daniel Veillardd4330462003-04-29 12:40:16 +0000224</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaFreeValidCtxt"></a>xmlSchemaFreeValidCtxt ()</h3><pre class="programlisting">void xmlSchemaFreeValidCtxt (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt);</pre><p>
225Free the resources associated to the schema validation context</p><p>
226
Daniel Veillardd7cec922003-06-13 12:30:10 +0000227</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> the schema validation context
Daniel Veillardd4330462003-04-29 12:40:16 +0000228</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidateDoc"></a>xmlSchemaValidateDoc ()</h3><pre class="programlisting">int xmlSchemaValidateDoc (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
229 <a href="libxml-tree.html#xmlDocPtr">xmlDocPtr</a> instance);</pre><p>
230Validate a document tree in memory.</p><p>
231
Daniel Veillardd7cec922003-06-13 12:30:10 +0000232</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> a schema validation context
Daniel Veillardd4330462003-04-29 12:40:16 +0000233</td></tr><tr><td><span class="term"><i><tt>instance</tt></i> :</span></td><td>
Daniel Veillardd7cec922003-06-13 12:30:10 +0000234</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if the document is schemas valid, a positive error code
235 number otherwise and -1 in case of internal or API error.
Daniel Veillardd4330462003-04-29 12:40:16 +0000236</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlSchemaValidateStream"></a>xmlSchemaValidateStream ()</h3><pre class="programlisting">int xmlSchemaValidateStream (<a href="libxml-xmlschemas.html#xmlSchemaValidCtxtPtr">xmlSchemaValidCtxtPtr</a> ctxt,
237 <a href="libxml-tree.html#xmlParserInputBufferPtr">xmlParserInputBufferPtr</a> input,
238 <a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc,
239 <a href="libxml-tree.html#xmlSAXHandlerPtr">xmlSAXHandlerPtr</a> sax,
240 void *user_data);</pre><p>
241Validate a document tree in memory.</p><p>
242
Daniel Veillardd7cec922003-06-13 12:30:10 +0000243</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> a schema validation context
244</td></tr><tr><td><span class="term"><i><tt>input</tt></i> :</span></td><td> the input to use for reading the data
245</td></tr><tr><td><span class="term"><i><tt>enc</tt></i> :</span></td><td> an optional encoding information
246</td></tr><tr><td><span class="term"><i><tt>sax</tt></i> :</span></td><td> a SAX handler for the resulting events
247</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i> :</span></td><td> the context to provide to the SAX handler.
248</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if the document is schemas valid, a positive error code
249 number otherwise and -1 in case of internal or API error.
Daniel Veillardd4330462003-04-29 12:40:16 +0000250</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-xmlunicode.html"><b>&lt;&lt; xmlunicode</b></a></td><td align="right"><a accesskey="n" href="libxml-xmlschemastypes.html"><b>xmlschemastypes &gt;&gt;</b></a></td></tr></table></body></html>