ES-DE/external/pugixml/docs/samples/xpath_error.cpp

44 lines
898 B
C++
Raw Normal View History

#include "pugixml.hpp"
#include <iostream>
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