ui-gxmlcpp  1.4.4
RelaxNGTree.hpp
Go to the documentation of this file.
1 
10 #ifndef UI_GXML_RELAXNGTREE_HPP
11 #define UI_GXML_RELAXNGTREE_HPP
12 
13 // STDC++
14 #include <string>
15 
16 // C++ Libraries
18 
19 // C libraries
20 #include <libxml/relaxng.h>
21 
22 namespace UI {
23 namespace GXML {
24 
27 {
28 private:
29  void init();
30 
31 public:
34  RelaxNGTree(char const * xml, int len=-1, std::string const & base=DefaultDocbase_, int const options=0);
35  RelaxNGTree(std::string const & xml, std::string const & base=DefaultDocbase_, int const options=0);
36  RelaxNGTree(std::istream & xml, std::string const & base=DefaultDocbase_, int const options=0);
37  RelaxNGTree(FileConstructor const dummy, std::string const & file, int const options=0);
40 public:
41  ~RelaxNGTree();
42 
43 private:
44  virtual int libxml2Validate(Tree const & tree) const;
45 
46  xmlRelaxNGParserCtxt * parserCtxt_;
47  xmlRelaxNG * relaxng_;
48 };
49 
50 }}
51 #endif
Namespace for all Schlund+Partner Code.
Definition: Buffer.cpp:30
FileConstructor
Helper enum for constructor from file name.
Definition: Tree.hpp:102
static std::string const DefaultDocbase_
Default document base. This is used for from-memory parsing if not specified otherwise.
Definition: Tree.hpp:74
XML tree.
Definition: Tree.hpp:30
Common abstract base class for validator trees (XML Schema and RelaxNG).
Definition: ValidatorTree.hpp:23
RelaxNG Schema XML Tree.
Definition: RelaxNGTree.hpp:26