test: guess_raw_type: plain signed incoming message
[libisds.git] / src / physxml.h
blob0e66d06c90ddb105639b34b01d96ee5f87c5f382
1 #ifndef __ISDS_PHYSXML_H__
2 #define __ISDS_PHYSXML_H__
4 #include "isds.h"
6 #define PHYSXML_ELEMENT_SEPARATOR "|"
7 #define PHYSXML_NS_SEPARATOR ">"
9 /* Check for expat compile-time configuration
10 * @current_version is static string describing current expat version */
11 isds_error init_expat(const char **current_version);
13 /* Locate element specified by element path in XML stream.
14 * TODO: Support other encodings than UTF-8
15 * @document is XML documuent as bitstream
16 * @length is size of @docuement in bytes. Zero length is forbidden.
17 * @path is special path (e.g. "|html|head|title",
18 * quallified element names are specified as
19 * NSURI '>' LOCALNAME, ommit NSURI and '>' separator if no namespace
20 * should be addressed (i.e. use only locale name)
21 * You can use PHYSXML_ELEMENT_SEPARATOR and PHYSXML_NS_SEPARATOR string
22 * macros.
23 * @start outputs start of the element location in @document (inclusive,
24 * counts from 0)
25 * @end outputs end of element (inclusive, counts from 0)
26 * @return 0 if element found */
27 isds_error find_element_boundary(void *document, size_t length,
28 char *path, size_t *start, size_t *end);
29 #endif