#include "pugixml.hpp" #include int main() { pugi::xml_document doc; if (!doc.load_file("xgconsole.xml")) return -1; // tag::code[] // Exception is thrown for incorrect query syntax try { doc.select_nodes("//nodes[#true()]"); } catch (const pugi::xpath_exception& e) { std::cout << "Select failed: " << e.what() << std::endl; } // Exception is thrown for incorrect query semantics try { doc.select_nodes("(123)/next"); } catch (const pugi::xpath_exception& e) { std::cout << "Select failed: " << e.what() << std::endl; } // Exception is thrown for query with incorrect return type try { doc.select_nodes("123"); } catch (const pugi::xpath_exception& e) { std::cout << "Select failed: " << e.what() << std::endl; } // end::code[] } // vim:et