#include <DbXml.hpp>
class DbXml::XmlException : public std::exception {
public:
	virtual const char *what() const throw();
	ExceptionCode getExceptionCode();
	int getDbErrno();
	...
};
      
        The XmlException class represents an error 
        condition that has occurred within the Berkeley DB XML system. The 
        system throws an XmlException if an API method 
        call results in an error condition.  Methods on this class may be 
        used to get further information regarding the exception.  Some of 
        these include  XmlException::what and  
        XmlException::getExceptionCode. This object is not thread-safe, and 
        can only be safely used by one thread at a time in an application.   
    
Below is a description of the exceptions codes that may be returned from XmlException::getExceptionCode:
                XmlException::CONTAINER_CLOSED
            
An operation was performed that requires the container to be open.
                XmlException::CONTAINER_EXISTS
            
An attempt was made to create an existing container.
                XmlException::CONTAINER_NOT_FOUND
            
The specified container was not found.
                XmlException::CONTAINER_OPEN
            
An operation was performed that requires the container to be closed.
                XmlException::DATABASE_ERROR
            
An unexpected error was returned from Berkeley DB.
                XmlException::DOCUMENT_NOT_FOUND
            
A named document was not found.
                XmlException::EVENT_ERROR
            
An error occurred during the use of the event reader or writer interface.
                XmlException::INDEXER_PARSER_ERROR
            
There was an XML parsing error while attempting to index a document.
                XmlException::INTERNAL_ERROR
            
An internal error has occurred inside BDB XML.
                XmlException::INVALID_VALUE
            
An invalid operation was attempted, or an invalid value passed to an operation.
                XmlException::LAZY_EVALUATION
            
An operation that requires eager evaluation was attempted on a lazily evaluated result set.
                XmlException::NO_MEMORY_ERROR
            
An attempt to allocate memory failed.
                XmlException::NULL_POINTER
            
An attempt was made to use a NULL pointer, most likely from a non-C++ API, such as Java or Python.
                XmlException::OPERATION_INTERRUPTED
            
A query operation was interrupted by the application.
                XmlException::OPERATION_TIMEOUT
            
A query operation timed out.
                XmlException::TRANSACTION_ERROR
            
An attempt was made to refer to a transaction that was already committed or aborted.
                XmlException::UNIQUE_ERROR
            
An index uniqueness constraint was violated.
                XmlException::UNKNOWN_INDEX
            
The referenced indexing strategy is not known.
                XmlException::VERSION_MISMATCH
            
The container version and library version are not compatible.
                XmlException::QUERY_EVALUATION_ERROR
            
An error occurred during evaluation of an XQuery expression.
                XmlException::QUERY_PARSER_ERROR
            
An error occurred attempting to parse an XQuery expression.