#ifndef WRAPLIBXML_H #define WRAPLIBXML_H #include #include #include #include #include #include #include #include #include #include #include #include #include #include class WrapLibxml { public: WrapLibxml( bool netAccessParameter = false, const std::string& catalogPathParameter = "catalog"); virtual ~WrapLibxml(); bool validate(const std::string& fileName); bool validateRelaxNG( const std::string& schemaFileName, const std::string& fileName); bool validateW3CSchema( const std::string& schemaFileName, const std::string& fileName); bool parse( const std::string& fileName, bool indent = false, bool resolveEntities = false); bool bufferWellFormed(const std::string& buffer); bool xpath(const std::string& path, const std::string& fileName); bool xslt(const std::string& styleFileName, const std::string& fileName); std::string getLastError(); std::pair getErrorPosition(); std::string getOutput(); int saveEncoding( const std::string& buffer, const std::string& fileName, const std::string& encoding); int saveEncodingFromFile( const std::string& fileNameSource, const std::string& fileNameDestination, const std::string& encoding); std::string lookupPublicId(const std::string& id); private: bool netAccess; std::string catalogPath, output; int errorLine; void loadCatalog(); }; #endif