lxml 5.3.0__cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. lxml/ElementInclude.py +244 -0
  2. lxml/__init__.py +22 -0
  3. lxml/_elementpath.cpython-313-s390x-linux-gnu.so +0 -0
  4. lxml/_elementpath.py +341 -0
  5. lxml/apihelpers.pxi +1793 -0
  6. lxml/builder.cpython-313-s390x-linux-gnu.so +0 -0
  7. lxml/builder.py +232 -0
  8. lxml/classlookup.pxi +580 -0
  9. lxml/cleanup.pxi +215 -0
  10. lxml/cssselect.py +101 -0
  11. lxml/debug.pxi +90 -0
  12. lxml/docloader.pxi +178 -0
  13. lxml/doctestcompare.py +488 -0
  14. lxml/dtd.pxi +478 -0
  15. lxml/etree.cpython-313-s390x-linux-gnu.so +0 -0
  16. lxml/etree.h +248 -0
  17. lxml/etree.pyx +3731 -0
  18. lxml/etree_api.h +195 -0
  19. lxml/extensions.pxi +833 -0
  20. lxml/html/ElementSoup.py +10 -0
  21. lxml/html/__init__.py +1923 -0
  22. lxml/html/_diffcommand.py +86 -0
  23. lxml/html/_html5builder.py +100 -0
  24. lxml/html/_setmixin.py +56 -0
  25. lxml/html/builder.py +133 -0
  26. lxml/html/clean.py +21 -0
  27. lxml/html/defs.py +135 -0
  28. lxml/html/diff.cpython-313-s390x-linux-gnu.so +0 -0
  29. lxml/html/diff.py +878 -0
  30. lxml/html/formfill.py +299 -0
  31. lxml/html/html5parser.py +260 -0
  32. lxml/html/soupparser.py +314 -0
  33. lxml/html/usedoctest.py +13 -0
  34. lxml/includes/__init__.pxd +0 -0
  35. lxml/includes/__init__.py +0 -0
  36. lxml/includes/c14n.pxd +25 -0
  37. lxml/includes/config.pxd +3 -0
  38. lxml/includes/dtdvalid.pxd +18 -0
  39. lxml/includes/etree_defs.h +379 -0
  40. lxml/includes/etreepublic.pxd +237 -0
  41. lxml/includes/extlibs/__init__.py +0 -0
  42. lxml/includes/extlibs/libcharset.h +45 -0
  43. lxml/includes/extlibs/localcharset.h +137 -0
  44. lxml/includes/extlibs/zconf.h +543 -0
  45. lxml/includes/extlibs/zlib.h +1938 -0
  46. lxml/includes/htmlparser.pxd +56 -0
  47. lxml/includes/libexslt/__init__.py +0 -0
  48. lxml/includes/libexslt/exslt.h +108 -0
  49. lxml/includes/libexslt/exsltconfig.h +70 -0
  50. lxml/includes/libexslt/exsltexports.h +63 -0
  51. lxml/includes/libxml/HTMLparser.h +343 -0
  52. lxml/includes/libxml/HTMLtree.h +147 -0
  53. lxml/includes/libxml/SAX.h +202 -0
  54. lxml/includes/libxml/SAX2.h +171 -0
  55. lxml/includes/libxml/__init__.py +0 -0
  56. lxml/includes/libxml/c14n.h +126 -0
  57. lxml/includes/libxml/catalog.h +182 -0
  58. lxml/includes/libxml/chvalid.h +230 -0
  59. lxml/includes/libxml/debugXML.h +217 -0
  60. lxml/includes/libxml/dict.h +82 -0
  61. lxml/includes/libxml/encoding.h +235 -0
  62. lxml/includes/libxml/entities.h +155 -0
  63. lxml/includes/libxml/globals.h +41 -0
  64. lxml/includes/libxml/hash.h +232 -0
  65. lxml/includes/libxml/list.h +137 -0
  66. lxml/includes/libxml/nanoftp.h +186 -0
  67. lxml/includes/libxml/nanohttp.h +81 -0
  68. lxml/includes/libxml/parser.h +1384 -0
  69. lxml/includes/libxml/parserInternals.h +663 -0
  70. lxml/includes/libxml/relaxng.h +219 -0
  71. lxml/includes/libxml/schemasInternals.h +959 -0
  72. lxml/includes/libxml/schematron.h +143 -0
  73. lxml/includes/libxml/threads.h +87 -0
  74. lxml/includes/libxml/tree.h +1362 -0
  75. lxml/includes/libxml/uri.h +95 -0
  76. lxml/includes/libxml/valid.h +450 -0
  77. lxml/includes/libxml/xinclude.h +129 -0
  78. lxml/includes/libxml/xlink.h +189 -0
  79. lxml/includes/libxml/xmlIO.h +421 -0
  80. lxml/includes/libxml/xmlautomata.h +146 -0
  81. lxml/includes/libxml/xmlerror.h +948 -0
  82. lxml/includes/libxml/xmlexports.h +50 -0
  83. lxml/includes/libxml/xmlmemory.h +225 -0
  84. lxml/includes/libxml/xmlmodule.h +57 -0
  85. lxml/includes/libxml/xmlreader.h +434 -0
  86. lxml/includes/libxml/xmlregexp.h +215 -0
  87. lxml/includes/libxml/xmlsave.h +97 -0
  88. lxml/includes/libxml/xmlschemas.h +249 -0
  89. lxml/includes/libxml/xmlschemastypes.h +152 -0
  90. lxml/includes/libxml/xmlstring.h +140 -0
  91. lxml/includes/libxml/xmlunicode.h +202 -0
  92. lxml/includes/libxml/xmlversion.h +511 -0
  93. lxml/includes/libxml/xmlwriter.h +488 -0
  94. lxml/includes/libxml/xpath.h +575 -0
  95. lxml/includes/libxml/xpathInternals.h +633 -0
  96. lxml/includes/libxml/xpointer.h +138 -0
  97. lxml/includes/libxslt/__init__.py +0 -0
  98. lxml/includes/libxslt/attributes.h +39 -0
  99. lxml/includes/libxslt/documents.h +93 -0
  100. lxml/includes/libxslt/extensions.h +262 -0
  101. lxml/includes/libxslt/extra.h +72 -0
  102. lxml/includes/libxslt/functions.h +78 -0
  103. lxml/includes/libxslt/imports.h +75 -0
  104. lxml/includes/libxslt/keys.h +53 -0
  105. lxml/includes/libxslt/namespaces.h +68 -0
  106. lxml/includes/libxslt/numbersInternals.h +73 -0
  107. lxml/includes/libxslt/pattern.h +84 -0
  108. lxml/includes/libxslt/preproc.h +43 -0
  109. lxml/includes/libxslt/security.h +104 -0
  110. lxml/includes/libxslt/templates.h +77 -0
  111. lxml/includes/libxslt/transform.h +207 -0
  112. lxml/includes/libxslt/variables.h +118 -0
  113. lxml/includes/libxslt/xslt.h +110 -0
  114. lxml/includes/libxslt/xsltInternals.h +1995 -0
  115. lxml/includes/libxslt/xsltconfig.h +146 -0
  116. lxml/includes/libxslt/xsltexports.h +64 -0
  117. lxml/includes/libxslt/xsltlocale.h +44 -0
  118. lxml/includes/libxslt/xsltutils.h +343 -0
  119. lxml/includes/lxml-version.h +3 -0
  120. lxml/includes/relaxng.pxd +64 -0
  121. lxml/includes/schematron.pxd +34 -0
  122. lxml/includes/tree.pxd +494 -0
  123. lxml/includes/uri.pxd +5 -0
  124. lxml/includes/xinclude.pxd +22 -0
  125. lxml/includes/xmlerror.pxd +852 -0
  126. lxml/includes/xmlparser.pxd +265 -0
  127. lxml/includes/xmlschema.pxd +35 -0
  128. lxml/includes/xpath.pxd +136 -0
  129. lxml/includes/xslt.pxd +190 -0
  130. lxml/isoschematron/__init__.py +348 -0
  131. lxml/isoschematron/resources/rng/iso-schematron.rng +709 -0
  132. lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl +75 -0
  133. lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl +77 -0
  134. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl +313 -0
  135. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl +1160 -0
  136. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl +55 -0
  137. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl +1796 -0
  138. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl +588 -0
  139. lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt +84 -0
  140. lxml/iterparse.pxi +438 -0
  141. lxml/lxml.etree.h +248 -0
  142. lxml/lxml.etree_api.h +195 -0
  143. lxml/nsclasses.pxi +281 -0
  144. lxml/objectify.cpython-313-s390x-linux-gnu.so +0 -0
  145. lxml/objectify.pyx +2145 -0
  146. lxml/objectpath.pxi +332 -0
  147. lxml/parser.pxi +2000 -0
  148. lxml/parsertarget.pxi +180 -0
  149. lxml/proxy.pxi +619 -0
  150. lxml/public-api.pxi +178 -0
  151. lxml/pyclasslookup.py +3 -0
  152. lxml/readonlytree.pxi +565 -0
  153. lxml/relaxng.pxi +165 -0
  154. lxml/sax.cpython-313-s390x-linux-gnu.so +0 -0
  155. lxml/sax.py +275 -0
  156. lxml/saxparser.pxi +875 -0
  157. lxml/schematron.pxi +168 -0
  158. lxml/serializer.pxi +1781 -0
  159. lxml/usedoctest.py +13 -0
  160. lxml/xinclude.pxi +67 -0
  161. lxml/xmlerror.pxi +1654 -0
  162. lxml/xmlid.pxi +179 -0
  163. lxml/xmlschema.pxi +215 -0
  164. lxml/xpath.pxi +487 -0
  165. lxml/xslt.pxi +950 -0
  166. lxml/xsltext.pxi +242 -0
  167. lxml-5.3.0.dist-info/LICENSE.txt +29 -0
  168. lxml-5.3.0.dist-info/LICENSES.txt +29 -0
  169. lxml-5.3.0.dist-info/METADATA +103 -0
  170. lxml-5.3.0.dist-info/RECORD +172 -0
  171. lxml-5.3.0.dist-info/WHEEL +6 -0
  172. lxml-5.3.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Summary: library of generic URI related routines
3
+ * Description: library of generic URI related routines
4
+ * Implements RFC 2396
5
+ *
6
+ * Copy: See Copyright for the status of this software.
7
+ *
8
+ * Author: Daniel Veillard
9
+ */
10
+
11
+ #ifndef __XML_URI_H__
12
+ #define __XML_URI_H__
13
+
14
+ #include <stdio.h>
15
+ #include <libxml/xmlversion.h>
16
+ #include <libxml/xmlstring.h>
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+ /**
23
+ * xmlURI:
24
+ *
25
+ * A parsed URI reference. This is a struct containing the various fields
26
+ * as described in RFC 2396 but separated for further processing.
27
+ *
28
+ * Note: query is a deprecated field which is incorrectly unescaped.
29
+ * query_raw takes precedence over query if the former is set.
30
+ * See: http://mail.gnome.org/archives/xml/2007-April/thread.html#00127
31
+ */
32
+ typedef struct _xmlURI xmlURI;
33
+ typedef xmlURI *xmlURIPtr;
34
+ struct _xmlURI {
35
+ char *scheme; /* the URI scheme */
36
+ char *opaque; /* opaque part */
37
+ char *authority; /* the authority part */
38
+ char *server; /* the server part */
39
+ char *user; /* the user part */
40
+ int port; /* the port number */
41
+ char *path; /* the path string */
42
+ char *query; /* the query string (deprecated - use with caution) */
43
+ char *fragment; /* the fragment identifier */
44
+ int cleanup; /* parsing potentially unclean URI */
45
+ char *query_raw; /* the query string (as it appears in the URI) */
46
+ };
47
+
48
+ /*
49
+ * This function is in tree.h:
50
+ * xmlChar * xmlNodeGetBase (xmlDocPtr doc,
51
+ * xmlNodePtr cur);
52
+ */
53
+ XMLPUBFUN xmlURIPtr
54
+ xmlCreateURI (void);
55
+ XMLPUBFUN xmlChar *
56
+ xmlBuildURI (const xmlChar *URI,
57
+ const xmlChar *base);
58
+ XMLPUBFUN xmlChar *
59
+ xmlBuildRelativeURI (const xmlChar *URI,
60
+ const xmlChar *base);
61
+ XMLPUBFUN xmlURIPtr
62
+ xmlParseURI (const char *str);
63
+ XMLPUBFUN xmlURIPtr
64
+ xmlParseURIRaw (const char *str,
65
+ int raw);
66
+ XMLPUBFUN int
67
+ xmlParseURIReference (xmlURIPtr uri,
68
+ const char *str);
69
+ XMLPUBFUN xmlChar *
70
+ xmlSaveUri (xmlURIPtr uri);
71
+ XMLPUBFUN void
72
+ xmlPrintURI (FILE *stream,
73
+ xmlURIPtr uri);
74
+ XMLPUBFUN xmlChar *
75
+ xmlURIEscapeStr (const xmlChar *str,
76
+ const xmlChar *list);
77
+ XMLPUBFUN char *
78
+ xmlURIUnescapeString (const char *str,
79
+ int len,
80
+ char *target);
81
+ XMLPUBFUN int
82
+ xmlNormalizeURIPath (char *path);
83
+ XMLPUBFUN xmlChar *
84
+ xmlURIEscape (const xmlChar *str);
85
+ XMLPUBFUN void
86
+ xmlFreeURI (xmlURIPtr uri);
87
+ XMLPUBFUN xmlChar*
88
+ xmlCanonicPath (const xmlChar *path);
89
+ XMLPUBFUN xmlChar*
90
+ xmlPathToURI (const xmlChar *path);
91
+
92
+ #ifdef __cplusplus
93
+ }
94
+ #endif
95
+ #endif /* __XML_URI_H__ */
@@ -0,0 +1,450 @@
1
+ /*
2
+ * Summary: The DTD validation
3
+ * Description: API for the DTD handling and the validity checking
4
+ *
5
+ * Copy: See Copyright for the status of this software.
6
+ *
7
+ * Author: Daniel Veillard
8
+ */
9
+
10
+
11
+ #ifndef __XML_VALID_H__
12
+ #define __XML_VALID_H__
13
+
14
+ #include <libxml/xmlversion.h>
15
+ #include <libxml/xmlerror.h>
16
+ #define XML_TREE_INTERNALS
17
+ #include <libxml/tree.h>
18
+ #undef XML_TREE_INTERNALS
19
+ #include <libxml/list.h>
20
+ #include <libxml/xmlautomata.h>
21
+ #include <libxml/xmlregexp.h>
22
+
23
+ #ifdef __cplusplus
24
+ extern "C" {
25
+ #endif
26
+
27
+ /*
28
+ * Validation state added for non-determinist content model.
29
+ */
30
+ typedef struct _xmlValidState xmlValidState;
31
+ typedef xmlValidState *xmlValidStatePtr;
32
+
33
+ /**
34
+ * xmlValidityErrorFunc:
35
+ * @ctx: usually an xmlValidCtxtPtr to a validity error context,
36
+ * but comes from ctxt->userData (which normally contains such
37
+ * a pointer); ctxt->userData can be changed by the user.
38
+ * @msg: the string to format *printf like vararg
39
+ * @...: remaining arguments to the format
40
+ *
41
+ * Callback called when a validity error is found. This is a message
42
+ * oriented function similar to an *printf function.
43
+ */
44
+ typedef void (*xmlValidityErrorFunc) (void *ctx,
45
+ const char *msg,
46
+ ...) LIBXML_ATTR_FORMAT(2,3);
47
+
48
+ /**
49
+ * xmlValidityWarningFunc:
50
+ * @ctx: usually an xmlValidCtxtPtr to a validity error context,
51
+ * but comes from ctxt->userData (which normally contains such
52
+ * a pointer); ctxt->userData can be changed by the user.
53
+ * @msg: the string to format *printf like vararg
54
+ * @...: remaining arguments to the format
55
+ *
56
+ * Callback called when a validity warning is found. This is a message
57
+ * oriented function similar to an *printf function.
58
+ */
59
+ typedef void (*xmlValidityWarningFunc) (void *ctx,
60
+ const char *msg,
61
+ ...) LIBXML_ATTR_FORMAT(2,3);
62
+
63
+ /*
64
+ * xmlValidCtxt:
65
+ * An xmlValidCtxt is used for error reporting when validating.
66
+ */
67
+ typedef struct _xmlValidCtxt xmlValidCtxt;
68
+ typedef xmlValidCtxt *xmlValidCtxtPtr;
69
+ struct _xmlValidCtxt {
70
+ void *userData; /* user specific data block */
71
+ xmlValidityErrorFunc error; /* the callback in case of errors */
72
+ xmlValidityWarningFunc warning; /* the callback in case of warning */
73
+
74
+ /* Node analysis stack used when validating within entities */
75
+ xmlNodePtr node; /* Current parsed Node */
76
+ int nodeNr; /* Depth of the parsing stack */
77
+ int nodeMax; /* Max depth of the parsing stack */
78
+ xmlNodePtr *nodeTab; /* array of nodes */
79
+
80
+ unsigned int flags; /* internal flags */
81
+ xmlDocPtr doc; /* the document */
82
+ int valid; /* temporary validity check result */
83
+
84
+ /* state state used for non-determinist content validation */
85
+ xmlValidState *vstate; /* current state */
86
+ int vstateNr; /* Depth of the validation stack */
87
+ int vstateMax; /* Max depth of the validation stack */
88
+ xmlValidState *vstateTab; /* array of validation states */
89
+
90
+ #ifdef LIBXML_REGEXP_ENABLED
91
+ xmlAutomataPtr am; /* the automata */
92
+ xmlAutomataStatePtr state; /* used to build the automata */
93
+ #else
94
+ void *am;
95
+ void *state;
96
+ #endif
97
+ };
98
+
99
+ /*
100
+ * ALL notation declarations are stored in a table.
101
+ * There is one table per DTD.
102
+ */
103
+
104
+ typedef struct _xmlHashTable xmlNotationTable;
105
+ typedef xmlNotationTable *xmlNotationTablePtr;
106
+
107
+ /*
108
+ * ALL element declarations are stored in a table.
109
+ * There is one table per DTD.
110
+ */
111
+
112
+ typedef struct _xmlHashTable xmlElementTable;
113
+ typedef xmlElementTable *xmlElementTablePtr;
114
+
115
+ /*
116
+ * ALL attribute declarations are stored in a table.
117
+ * There is one table per DTD.
118
+ */
119
+
120
+ typedef struct _xmlHashTable xmlAttributeTable;
121
+ typedef xmlAttributeTable *xmlAttributeTablePtr;
122
+
123
+ /*
124
+ * ALL IDs attributes are stored in a table.
125
+ * There is one table per document.
126
+ */
127
+
128
+ typedef struct _xmlHashTable xmlIDTable;
129
+ typedef xmlIDTable *xmlIDTablePtr;
130
+
131
+ /*
132
+ * ALL Refs attributes are stored in a table.
133
+ * There is one table per document.
134
+ */
135
+
136
+ typedef struct _xmlHashTable xmlRefTable;
137
+ typedef xmlRefTable *xmlRefTablePtr;
138
+
139
+ /* Notation */
140
+ XMLPUBFUN xmlNotationPtr
141
+ xmlAddNotationDecl (xmlValidCtxtPtr ctxt,
142
+ xmlDtdPtr dtd,
143
+ const xmlChar *name,
144
+ const xmlChar *PublicID,
145
+ const xmlChar *SystemID);
146
+ #ifdef LIBXML_TREE_ENABLED
147
+ XMLPUBFUN xmlNotationTablePtr
148
+ xmlCopyNotationTable (xmlNotationTablePtr table);
149
+ #endif /* LIBXML_TREE_ENABLED */
150
+ XMLPUBFUN void
151
+ xmlFreeNotationTable (xmlNotationTablePtr table);
152
+ #ifdef LIBXML_OUTPUT_ENABLED
153
+ XMLPUBFUN void
154
+ xmlDumpNotationDecl (xmlBufferPtr buf,
155
+ xmlNotationPtr nota);
156
+ XMLPUBFUN void
157
+ xmlDumpNotationTable (xmlBufferPtr buf,
158
+ xmlNotationTablePtr table);
159
+ #endif /* LIBXML_OUTPUT_ENABLED */
160
+
161
+ /* Element Content */
162
+ /* the non Doc version are being deprecated */
163
+ XMLPUBFUN xmlElementContentPtr
164
+ xmlNewElementContent (const xmlChar *name,
165
+ xmlElementContentType type);
166
+ XMLPUBFUN xmlElementContentPtr
167
+ xmlCopyElementContent (xmlElementContentPtr content);
168
+ XMLPUBFUN void
169
+ xmlFreeElementContent (xmlElementContentPtr cur);
170
+ /* the new versions with doc argument */
171
+ XMLPUBFUN xmlElementContentPtr
172
+ xmlNewDocElementContent (xmlDocPtr doc,
173
+ const xmlChar *name,
174
+ xmlElementContentType type);
175
+ XMLPUBFUN xmlElementContentPtr
176
+ xmlCopyDocElementContent(xmlDocPtr doc,
177
+ xmlElementContentPtr content);
178
+ XMLPUBFUN void
179
+ xmlFreeDocElementContent(xmlDocPtr doc,
180
+ xmlElementContentPtr cur);
181
+ XMLPUBFUN void
182
+ xmlSnprintfElementContent(char *buf,
183
+ int size,
184
+ xmlElementContentPtr content,
185
+ int englob);
186
+ #ifdef LIBXML_OUTPUT_ENABLED
187
+ /* DEPRECATED */
188
+ XMLPUBFUN void
189
+ xmlSprintfElementContent(char *buf,
190
+ xmlElementContentPtr content,
191
+ int englob);
192
+ #endif /* LIBXML_OUTPUT_ENABLED */
193
+ /* DEPRECATED */
194
+
195
+ /* Element */
196
+ XMLPUBFUN xmlElementPtr
197
+ xmlAddElementDecl (xmlValidCtxtPtr ctxt,
198
+ xmlDtdPtr dtd,
199
+ const xmlChar *name,
200
+ xmlElementTypeVal type,
201
+ xmlElementContentPtr content);
202
+ #ifdef LIBXML_TREE_ENABLED
203
+ XMLPUBFUN xmlElementTablePtr
204
+ xmlCopyElementTable (xmlElementTablePtr table);
205
+ #endif /* LIBXML_TREE_ENABLED */
206
+ XMLPUBFUN void
207
+ xmlFreeElementTable (xmlElementTablePtr table);
208
+ #ifdef LIBXML_OUTPUT_ENABLED
209
+ XMLPUBFUN void
210
+ xmlDumpElementTable (xmlBufferPtr buf,
211
+ xmlElementTablePtr table);
212
+ XMLPUBFUN void
213
+ xmlDumpElementDecl (xmlBufferPtr buf,
214
+ xmlElementPtr elem);
215
+ #endif /* LIBXML_OUTPUT_ENABLED */
216
+
217
+ /* Enumeration */
218
+ XMLPUBFUN xmlEnumerationPtr
219
+ xmlCreateEnumeration (const xmlChar *name);
220
+ XMLPUBFUN void
221
+ xmlFreeEnumeration (xmlEnumerationPtr cur);
222
+ #ifdef LIBXML_TREE_ENABLED
223
+ XMLPUBFUN xmlEnumerationPtr
224
+ xmlCopyEnumeration (xmlEnumerationPtr cur);
225
+ #endif /* LIBXML_TREE_ENABLED */
226
+
227
+ /* Attribute */
228
+ XMLPUBFUN xmlAttributePtr
229
+ xmlAddAttributeDecl (xmlValidCtxtPtr ctxt,
230
+ xmlDtdPtr dtd,
231
+ const xmlChar *elem,
232
+ const xmlChar *name,
233
+ const xmlChar *ns,
234
+ xmlAttributeType type,
235
+ xmlAttributeDefault def,
236
+ const xmlChar *defaultValue,
237
+ xmlEnumerationPtr tree);
238
+ #ifdef LIBXML_TREE_ENABLED
239
+ XMLPUBFUN xmlAttributeTablePtr
240
+ xmlCopyAttributeTable (xmlAttributeTablePtr table);
241
+ #endif /* LIBXML_TREE_ENABLED */
242
+ XMLPUBFUN void
243
+ xmlFreeAttributeTable (xmlAttributeTablePtr table);
244
+ #ifdef LIBXML_OUTPUT_ENABLED
245
+ XMLPUBFUN void
246
+ xmlDumpAttributeTable (xmlBufferPtr buf,
247
+ xmlAttributeTablePtr table);
248
+ XMLPUBFUN void
249
+ xmlDumpAttributeDecl (xmlBufferPtr buf,
250
+ xmlAttributePtr attr);
251
+ #endif /* LIBXML_OUTPUT_ENABLED */
252
+
253
+ /* IDs */
254
+ XMLPUBFUN xmlIDPtr
255
+ xmlAddID (xmlValidCtxtPtr ctxt,
256
+ xmlDocPtr doc,
257
+ const xmlChar *value,
258
+ xmlAttrPtr attr);
259
+ XMLPUBFUN void
260
+ xmlFreeIDTable (xmlIDTablePtr table);
261
+ XMLPUBFUN xmlAttrPtr
262
+ xmlGetID (xmlDocPtr doc,
263
+ const xmlChar *ID);
264
+ XMLPUBFUN int
265
+ xmlIsID (xmlDocPtr doc,
266
+ xmlNodePtr elem,
267
+ xmlAttrPtr attr);
268
+ XMLPUBFUN int
269
+ xmlRemoveID (xmlDocPtr doc,
270
+ xmlAttrPtr attr);
271
+
272
+ /* IDREFs */
273
+ XML_DEPRECATED
274
+ XMLPUBFUN xmlRefPtr
275
+ xmlAddRef (xmlValidCtxtPtr ctxt,
276
+ xmlDocPtr doc,
277
+ const xmlChar *value,
278
+ xmlAttrPtr attr);
279
+ XML_DEPRECATED
280
+ XMLPUBFUN void
281
+ xmlFreeRefTable (xmlRefTablePtr table);
282
+ XML_DEPRECATED
283
+ XMLPUBFUN int
284
+ xmlIsRef (xmlDocPtr doc,
285
+ xmlNodePtr elem,
286
+ xmlAttrPtr attr);
287
+ XML_DEPRECATED
288
+ XMLPUBFUN int
289
+ xmlRemoveRef (xmlDocPtr doc,
290
+ xmlAttrPtr attr);
291
+ XML_DEPRECATED
292
+ XMLPUBFUN xmlListPtr
293
+ xmlGetRefs (xmlDocPtr doc,
294
+ const xmlChar *ID);
295
+
296
+ /**
297
+ * The public function calls related to validity checking.
298
+ */
299
+ #ifdef LIBXML_VALID_ENABLED
300
+ /* Allocate/Release Validation Contexts */
301
+ XMLPUBFUN xmlValidCtxtPtr
302
+ xmlNewValidCtxt(void);
303
+ XMLPUBFUN void
304
+ xmlFreeValidCtxt(xmlValidCtxtPtr);
305
+
306
+ XMLPUBFUN int
307
+ xmlValidateRoot (xmlValidCtxtPtr ctxt,
308
+ xmlDocPtr doc);
309
+ XMLPUBFUN int
310
+ xmlValidateElementDecl (xmlValidCtxtPtr ctxt,
311
+ xmlDocPtr doc,
312
+ xmlElementPtr elem);
313
+ XMLPUBFUN xmlChar *
314
+ xmlValidNormalizeAttributeValue(xmlDocPtr doc,
315
+ xmlNodePtr elem,
316
+ const xmlChar *name,
317
+ const xmlChar *value);
318
+ XMLPUBFUN xmlChar *
319
+ xmlValidCtxtNormalizeAttributeValue(xmlValidCtxtPtr ctxt,
320
+ xmlDocPtr doc,
321
+ xmlNodePtr elem,
322
+ const xmlChar *name,
323
+ const xmlChar *value);
324
+ XMLPUBFUN int
325
+ xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt,
326
+ xmlDocPtr doc,
327
+ xmlAttributePtr attr);
328
+ XMLPUBFUN int
329
+ xmlValidateAttributeValue(xmlAttributeType type,
330
+ const xmlChar *value);
331
+ XMLPUBFUN int
332
+ xmlValidateNotationDecl (xmlValidCtxtPtr ctxt,
333
+ xmlDocPtr doc,
334
+ xmlNotationPtr nota);
335
+ XMLPUBFUN int
336
+ xmlValidateDtd (xmlValidCtxtPtr ctxt,
337
+ xmlDocPtr doc,
338
+ xmlDtdPtr dtd);
339
+ XMLPUBFUN int
340
+ xmlValidateDtdFinal (xmlValidCtxtPtr ctxt,
341
+ xmlDocPtr doc);
342
+ XMLPUBFUN int
343
+ xmlValidateDocument (xmlValidCtxtPtr ctxt,
344
+ xmlDocPtr doc);
345
+ XMLPUBFUN int
346
+ xmlValidateElement (xmlValidCtxtPtr ctxt,
347
+ xmlDocPtr doc,
348
+ xmlNodePtr elem);
349
+ XMLPUBFUN int
350
+ xmlValidateOneElement (xmlValidCtxtPtr ctxt,
351
+ xmlDocPtr doc,
352
+ xmlNodePtr elem);
353
+ XMLPUBFUN int
354
+ xmlValidateOneAttribute (xmlValidCtxtPtr ctxt,
355
+ xmlDocPtr doc,
356
+ xmlNodePtr elem,
357
+ xmlAttrPtr attr,
358
+ const xmlChar *value);
359
+ XMLPUBFUN int
360
+ xmlValidateOneNamespace (xmlValidCtxtPtr ctxt,
361
+ xmlDocPtr doc,
362
+ xmlNodePtr elem,
363
+ const xmlChar *prefix,
364
+ xmlNsPtr ns,
365
+ const xmlChar *value);
366
+ XMLPUBFUN int
367
+ xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt,
368
+ xmlDocPtr doc);
369
+ #endif /* LIBXML_VALID_ENABLED */
370
+
371
+ #if defined(LIBXML_VALID_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
372
+ XMLPUBFUN int
373
+ xmlValidateNotationUse (xmlValidCtxtPtr ctxt,
374
+ xmlDocPtr doc,
375
+ const xmlChar *notationName);
376
+ #endif /* LIBXML_VALID_ENABLED or LIBXML_SCHEMAS_ENABLED */
377
+
378
+ XMLPUBFUN int
379
+ xmlIsMixedElement (xmlDocPtr doc,
380
+ const xmlChar *name);
381
+ XMLPUBFUN xmlAttributePtr
382
+ xmlGetDtdAttrDesc (xmlDtdPtr dtd,
383
+ const xmlChar *elem,
384
+ const xmlChar *name);
385
+ XMLPUBFUN xmlAttributePtr
386
+ xmlGetDtdQAttrDesc (xmlDtdPtr dtd,
387
+ const xmlChar *elem,
388
+ const xmlChar *name,
389
+ const xmlChar *prefix);
390
+ XMLPUBFUN xmlNotationPtr
391
+ xmlGetDtdNotationDesc (xmlDtdPtr dtd,
392
+ const xmlChar *name);
393
+ XMLPUBFUN xmlElementPtr
394
+ xmlGetDtdQElementDesc (xmlDtdPtr dtd,
395
+ const xmlChar *name,
396
+ const xmlChar *prefix);
397
+ XMLPUBFUN xmlElementPtr
398
+ xmlGetDtdElementDesc (xmlDtdPtr dtd,
399
+ const xmlChar *name);
400
+
401
+ #ifdef LIBXML_VALID_ENABLED
402
+
403
+ XMLPUBFUN int
404
+ xmlValidGetPotentialChildren(xmlElementContent *ctree,
405
+ const xmlChar **names,
406
+ int *len,
407
+ int max);
408
+
409
+ XMLPUBFUN int
410
+ xmlValidGetValidElements(xmlNode *prev,
411
+ xmlNode *next,
412
+ const xmlChar **names,
413
+ int max);
414
+ XMLPUBFUN int
415
+ xmlValidateNameValue (const xmlChar *value);
416
+ XMLPUBFUN int
417
+ xmlValidateNamesValue (const xmlChar *value);
418
+ XMLPUBFUN int
419
+ xmlValidateNmtokenValue (const xmlChar *value);
420
+ XMLPUBFUN int
421
+ xmlValidateNmtokensValue(const xmlChar *value);
422
+
423
+ #ifdef LIBXML_REGEXP_ENABLED
424
+ /*
425
+ * Validation based on the regexp support
426
+ */
427
+ XMLPUBFUN int
428
+ xmlValidBuildContentModel(xmlValidCtxtPtr ctxt,
429
+ xmlElementPtr elem);
430
+
431
+ XMLPUBFUN int
432
+ xmlValidatePushElement (xmlValidCtxtPtr ctxt,
433
+ xmlDocPtr doc,
434
+ xmlNodePtr elem,
435
+ const xmlChar *qname);
436
+ XMLPUBFUN int
437
+ xmlValidatePushCData (xmlValidCtxtPtr ctxt,
438
+ const xmlChar *data,
439
+ int len);
440
+ XMLPUBFUN int
441
+ xmlValidatePopElement (xmlValidCtxtPtr ctxt,
442
+ xmlDocPtr doc,
443
+ xmlNodePtr elem,
444
+ const xmlChar *qname);
445
+ #endif /* LIBXML_REGEXP_ENABLED */
446
+ #endif /* LIBXML_VALID_ENABLED */
447
+ #ifdef __cplusplus
448
+ }
449
+ #endif
450
+ #endif /* __XML_VALID_H__ */
@@ -0,0 +1,129 @@
1
+ /*
2
+ * Summary: implementation of XInclude
3
+ * Description: API to handle XInclude processing,
4
+ * implements the
5
+ * World Wide Web Consortium Last Call Working Draft 10 November 2003
6
+ * http://www.w3.org/TR/2003/WD-xinclude-20031110
7
+ *
8
+ * Copy: See Copyright for the status of this software.
9
+ *
10
+ * Author: Daniel Veillard
11
+ */
12
+
13
+ #ifndef __XML_XINCLUDE_H__
14
+ #define __XML_XINCLUDE_H__
15
+
16
+ #include <libxml/xmlversion.h>
17
+ #include <libxml/tree.h>
18
+
19
+ #ifdef LIBXML_XINCLUDE_ENABLED
20
+
21
+ #ifdef __cplusplus
22
+ extern "C" {
23
+ #endif
24
+
25
+ /**
26
+ * XINCLUDE_NS:
27
+ *
28
+ * Macro defining the Xinclude namespace: http://www.w3.org/2003/XInclude
29
+ */
30
+ #define XINCLUDE_NS (const xmlChar *) "http://www.w3.org/2003/XInclude"
31
+ /**
32
+ * XINCLUDE_OLD_NS:
33
+ *
34
+ * Macro defining the draft Xinclude namespace: http://www.w3.org/2001/XInclude
35
+ */
36
+ #define XINCLUDE_OLD_NS (const xmlChar *) "http://www.w3.org/2001/XInclude"
37
+ /**
38
+ * XINCLUDE_NODE:
39
+ *
40
+ * Macro defining "include"
41
+ */
42
+ #define XINCLUDE_NODE (const xmlChar *) "include"
43
+ /**
44
+ * XINCLUDE_FALLBACK:
45
+ *
46
+ * Macro defining "fallback"
47
+ */
48
+ #define XINCLUDE_FALLBACK (const xmlChar *) "fallback"
49
+ /**
50
+ * XINCLUDE_HREF:
51
+ *
52
+ * Macro defining "href"
53
+ */
54
+ #define XINCLUDE_HREF (const xmlChar *) "href"
55
+ /**
56
+ * XINCLUDE_PARSE:
57
+ *
58
+ * Macro defining "parse"
59
+ */
60
+ #define XINCLUDE_PARSE (const xmlChar *) "parse"
61
+ /**
62
+ * XINCLUDE_PARSE_XML:
63
+ *
64
+ * Macro defining "xml"
65
+ */
66
+ #define XINCLUDE_PARSE_XML (const xmlChar *) "xml"
67
+ /**
68
+ * XINCLUDE_PARSE_TEXT:
69
+ *
70
+ * Macro defining "text"
71
+ */
72
+ #define XINCLUDE_PARSE_TEXT (const xmlChar *) "text"
73
+ /**
74
+ * XINCLUDE_PARSE_ENCODING:
75
+ *
76
+ * Macro defining "encoding"
77
+ */
78
+ #define XINCLUDE_PARSE_ENCODING (const xmlChar *) "encoding"
79
+ /**
80
+ * XINCLUDE_PARSE_XPOINTER:
81
+ *
82
+ * Macro defining "xpointer"
83
+ */
84
+ #define XINCLUDE_PARSE_XPOINTER (const xmlChar *) "xpointer"
85
+
86
+ typedef struct _xmlXIncludeCtxt xmlXIncludeCtxt;
87
+ typedef xmlXIncludeCtxt *xmlXIncludeCtxtPtr;
88
+
89
+ /*
90
+ * standalone processing
91
+ */
92
+ XMLPUBFUN int
93
+ xmlXIncludeProcess (xmlDocPtr doc);
94
+ XMLPUBFUN int
95
+ xmlXIncludeProcessFlags (xmlDocPtr doc,
96
+ int flags);
97
+ XMLPUBFUN int
98
+ xmlXIncludeProcessFlagsData(xmlDocPtr doc,
99
+ int flags,
100
+ void *data);
101
+ XMLPUBFUN int
102
+ xmlXIncludeProcessTreeFlagsData(xmlNodePtr tree,
103
+ int flags,
104
+ void *data);
105
+ XMLPUBFUN int
106
+ xmlXIncludeProcessTree (xmlNodePtr tree);
107
+ XMLPUBFUN int
108
+ xmlXIncludeProcessTreeFlags(xmlNodePtr tree,
109
+ int flags);
110
+ /*
111
+ * contextual processing
112
+ */
113
+ XMLPUBFUN xmlXIncludeCtxtPtr
114
+ xmlXIncludeNewContext (xmlDocPtr doc);
115
+ XMLPUBFUN int
116
+ xmlXIncludeSetFlags (xmlXIncludeCtxtPtr ctxt,
117
+ int flags);
118
+ XMLPUBFUN void
119
+ xmlXIncludeFreeContext (xmlXIncludeCtxtPtr ctxt);
120
+ XMLPUBFUN int
121
+ xmlXIncludeProcessNode (xmlXIncludeCtxtPtr ctxt,
122
+ xmlNodePtr tree);
123
+ #ifdef __cplusplus
124
+ }
125
+ #endif
126
+
127
+ #endif /* LIBXML_XINCLUDE_ENABLED */
128
+
129
+ #endif /* __XML_XINCLUDE_H__ */