00001 00002 00003 #ifndef XMLNAMESPACE_H 00004 #define XMLNAMESPACE_H 00005 00006 00007 #include "libxml/parser.h" 00008 #include "libxml/xpath.h" 00009 00010 #include <string> 00011 #include <vector> 00012 00013 00014 namespace xml { 00015 00016 00017 class CXMLNameSpace { 00018 public: 00020 // Constructor 00022 CXMLNameSpace(void); 00023 CXMLNameSpace(const std::string &prefix, const std::string &href); 00024 CXMLNameSpace(xmlNs *ns); 00025 00026 00028 // Destructor 00030 virtual ~CXMLNameSpace(void); 00031 00032 00034 // Variables 00036 std::string m_nsPrefix; 00037 std::string m_nsHref; 00038 }; 00039 00040 00041 class CXMLNameSpaceList { 00042 public: 00044 // Constructor 00046 CXMLNameSpaceList(void); 00047 00048 00050 // Destructor 00052 virtual ~CXMLNameSpaceList(void); 00053 00054 00056 // Functions 00058 int getSize(void); 00059 void addElement(CXMLNameSpace element); 00060 CXMLNameSpace getElementAt(int index); 00061 void clear(void); 00062 00063 00064 private: 00066 // Variables 00068 std::vector<CXMLNameSpace> *m_nsList; 00069 }; 00070 }; 00071 00072 #endif