30 #ifndef OVAL_PARSER_H_
31 #define OVAL_PARSER_H_
33 #include <libxml/xmlreader.h>
35 #include "common/util.h"
39 #define OVAL_ROOT_ELM_DEFINITIONS "oval_definitions"
40 #define OVAL_ROOT_ELM_DIRECTIVES "oval_directives"
41 #define OVAL_ROOT_ELM_RESULTS "oval_results"
42 #define OVAL_ROOT_ELM_SYSCHARS "oval_system_characteristics"
43 #define OVAL_ROOT_ELM_VARIABLES "oval_variables"
51 xmlTextReader *reader;
59 int oval_parser_boolean_attribute(xmlTextReaderPtr reader,
char *attname,
int defval);
60 int oval_parser_int_attribute(xmlTextReaderPtr reader,
char *attname,
int defval);
61 typedef void (*oval_xml_value_consumer) (
char *,
void *);
62 int oval_parser_text_value(xmlTextReaderPtr,
struct oval_parser_context *, oval_xml_value_consumer,
void *);
64 typedef int (*oval_xml_tag_parser) (xmlTextReaderPtr,
struct oval_parser_context *,
void *);
68 void oval_text_consumer(
char *text,
void *user);