libxml++  5.4.0
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
xmlpp::Validator Class Referenceabstract

Base class for XML validators. More...

#include <libxml++/validators/validator.h>

Inheritance diagram for xmlpp::Validator:
Inheritance graph
[legend]

Public Member Functions

 Validator () noexcept
 
 ~Validator () override
 
virtual operator bool () const noexcept=0
 Test whether a schema or a DTD has been parsed. More...
 
virtual void parse_file (const std::string & filename)=0
 Parse a schema definition file or an external subset (DTD file). More...
 
virtual void parse_memory (const ustring & contents)=0
 Parse a schema definition or a DTD from a string. More...
 
virtual void validate (const Document * document)=0
 Validate a document, using a previously parsed schema or DTD. More...
 
- Public Member Functions inherited from xmlpp::NonCopyable
 NonCopyable (const NonCopyable &)=delete
 
 NonCopyable (NonCopyable &&)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 
NonCopyableoperator= (NonCopyable &&)=delete
 

Protected Member Functions

virtual void check_for_exception ()
 
virtual void check_for_validity_messages ()
 
virtual void handle_exception ()
 To be called in an exception handler. More...
 
virtual void initialize_context ()
 
virtual void on_validity_error (const ustring & message)
 
virtual void on_validity_warning (const ustring & message)
 
virtual void release_underlying ()
 
- Protected Member Functions inherited from xmlpp::NonCopyable
 NonCopyable () noexcept
 
virtual ~NonCopyable ()
 

Static Protected Member Functions

static void callback_error_or_warning (bool error, void * ctx, const char * msg, va_list var_args)
 
static void callback_validity_error (void * ctx, const char * msg,...)
 
static void callback_validity_warning (void * ctx, const char * msg,...)
 
static ValidatorCallbackCFuncType get_callback_validity_error_cfunc ()
 
static ValidatorCallbackCFuncType get_callback_validity_warning_cfunc ()
 

Protected Attributes

std::unique_ptr< exceptionexception_
 
ustring validate_error_
 
ustring validate_warning_
 

Detailed Description

Base class for XML validators.

Constructor & Destructor Documentation

◆ Validator()

xmlpp::Validator::Validator ( )
noexcept

◆ ~Validator()

xmlpp::Validator::~Validator ( )
override

Member Function Documentation

◆ callback_error_or_warning()

static void xmlpp::Validator::callback_error_or_warning ( bool  error,
void *  ctx,
const char *  msg,
va_list  var_args 
)
staticprotected

◆ callback_validity_error()

static void xmlpp::Validator::callback_validity_error ( void *  ctx,
const char *  msg,
  ... 
)
staticprotected

◆ callback_validity_warning()

static void xmlpp::Validator::callback_validity_warning ( void *  ctx,
const char *  msg,
  ... 
)
staticprotected

◆ check_for_exception()

virtual void xmlpp::Validator::check_for_exception ( )
protectedvirtual

◆ check_for_validity_messages()

virtual void xmlpp::Validator::check_for_validity_messages ( )
protectedvirtual

◆ get_callback_validity_error_cfunc()

static ValidatorCallbackCFuncType xmlpp::Validator::get_callback_validity_error_cfunc ( )
staticprotected

◆ get_callback_validity_warning_cfunc()

static ValidatorCallbackCFuncType xmlpp::Validator::get_callback_validity_warning_cfunc ( )
staticprotected

◆ handle_exception()

virtual void xmlpp::Validator::handle_exception ( )
protectedvirtual

To be called in an exception handler.

◆ initialize_context()

virtual void xmlpp::Validator::initialize_context ( )
protectedvirtual

◆ on_validity_error()

virtual void xmlpp::Validator::on_validity_error ( const ustring message)
protectedvirtual

◆ on_validity_warning()

virtual void xmlpp::Validator::on_validity_warning ( const ustring message)
protectedvirtual

◆ operator bool()

virtual xmlpp::Validator::operator bool ( ) const
explicitpure virtualnoexcept

Test whether a schema or a DTD has been parsed.

For instance

if (validator)
do_something();

Implemented in xmlpp::SchemaValidatorBase, xmlpp::XsdValidator, xmlpp::RelaxNGValidator, and xmlpp::DtdValidator.

◆ parse_file()

virtual void xmlpp::Validator::parse_file ( const std::string filename)
pure virtual

Parse a schema definition file or an external subset (DTD file).

Parameters
filenameThe URL of the schema or the DTD.
Exceptions
xmlpp::parse_error

Implemented in xmlpp::SchemaValidatorBase, xmlpp::XsdValidator, xmlpp::RelaxNGValidator, and xmlpp::DtdValidator.

◆ parse_memory()

virtual void xmlpp::Validator::parse_memory ( const ustring contents)
pure virtual

Parse a schema definition or a DTD from a string.

Parameters
contentsThe schema definition or the DTD as a string.
Exceptions
xmlpp::parse_error

Implemented in xmlpp::SchemaValidatorBase, xmlpp::XsdValidator, xmlpp::RelaxNGValidator, and xmlpp::DtdValidator.

◆ release_underlying()

virtual void xmlpp::Validator::release_underlying ( )
protectedvirtual

◆ validate()

virtual void xmlpp::Validator::validate ( const Document document)
pure virtual

Validate a document, using a previously parsed schema or DTD.

Parameters
documentPointer to the document.
Exceptions
xmlpp::internal_error
xmlpp::validity_error

Implemented in xmlpp::SchemaValidatorBase, xmlpp::XsdValidator, xmlpp::RelaxNGValidator, and xmlpp::DtdValidator.

Member Data Documentation

◆ exception_

std::unique_ptr<exception> xmlpp::Validator::exception_
protected

◆ validate_error_

ustring xmlpp::Validator::validate_error_
protected

◆ validate_warning_

ustring xmlpp::Validator::validate_warning_
protected