libxml++  2.40.1
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
xmlpp::DtdValidator Class Reference

XML DTD validator. More...

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

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

Public Member Functions

 DtdValidator ()
 
 DtdValidator (const Glib::ustring& file)
 Create a validator and parse an external subset (DTD file) immediately. More...
 
 DtdValidator (const Glib::ustring& external, const Glib::ustring& system)
 Create a validator and parse an external subset (DTD file) immediately. More...
 
 ~DtdValidator () override
 
Dtdget_dtd ()
 Get the parsed DTD. More...
 
const Dtdget_dtd () const
 Get the parsed DTD. More...
 
 operator bool () const
 Test whether a DTD has been parsed. More...
 
virtual void parse_file (const Glib::ustring& filename)
 Parse an external subset (DTD file). More...
 
virtual void parse_memory (const Glib::ustring& contents)
 Parse a DTD from a string. More...
 
virtual void parse_stream (std::istream& in)
 Parse a DTD from a stream. More...
 
virtual void parse_subset (const Glib::ustring& external, const Glib::ustring& system)
 Parse an external subset (DTD file). More...
 
bool validate (const Document* doc)
 Validate a document, using a previously parsed DTD. More...
 
- Public Member Functions inherited from xmlpp::Validator
 Validator ()
 
 ~Validator () override
 

Protected Member Functions

void release_underlying () override
 
- Protected Member Functions inherited from xmlpp::Validator
virtual void check_for_exception ()
 
virtual void check_for_validity_messages ()
 
virtual void handleException (const exception& e)
 
virtual void initialize_valid ()
 
virtual void on_validity_error (const Glib::ustring& message)
 
virtual void on_validity_warning (const Glib::ustring& message)
 

Protected Attributes

Dtddtd_
 
- Protected Attributes inherited from xmlpp::Validator
exceptionexception_
 
_xmlValidCtxt* valid_
 
Glib::ustring validate_error_
 
Glib::ustring validate_warning_
 

Additional Inherited Members

- Static Protected Member Functions inherited from xmlpp::Validator
static void callback_validity_error (void* ctx, const char* msg,...)
 
static void callback_validity_warning (void* ctx, const char* msg,...)
 

Detailed Description

XML DTD validator.

Constructor & Destructor Documentation

xmlpp::DtdValidator::DtdValidator ( )
xmlpp::DtdValidator::DtdValidator ( const Glib::ustring file)
explicit

Create a validator and parse an external subset (DTD file) immediately.

Parameters
fileThe URL of the DTD.
Exceptions
xmlpp::parse_error
xmlpp::DtdValidator::DtdValidator ( const Glib::ustring external,
const Glib::ustring system 
)
explicit

Create a validator and parse an external subset (DTD file) immediately.

Parameters
externalThe external ID of the DTD.
systemThe URL of the DTD.
Exceptions
xmlpp::parse_error
xmlpp::DtdValidator::~DtdValidator ( )
override

Member Function Documentation

Dtd* xmlpp::DtdValidator::get_dtd ( )

Get the parsed DTD.

Returns
A pointer to the parsed DTD, or nullptr.
const Dtd* xmlpp::DtdValidator::get_dtd ( ) const

Get the parsed DTD.

Returns
A pointer to the parsed DTD, or nullptr.
xmlpp::DtdValidator::operator bool ( ) const

Test whether a DTD has been parsed.

virtual void xmlpp::DtdValidator::parse_file ( const Glib::ustring filename)
virtual

Parse an external subset (DTD file).

If the validator already contains a DTD, that DTD is deleted.

Parameters
filenameThe URL of the DTD.
Exceptions
xmlpp::parse_error
virtual void xmlpp::DtdValidator::parse_memory ( const Glib::ustring contents)
virtual

Parse a DTD from a string.

If the validator already contains a DTD, that DTD is deleted.

Parameters
contentsThe DTD as a string.
Exceptions
xmlpp::parse_error
virtual void xmlpp::DtdValidator::parse_stream ( std::istream in)
virtual

Parse a DTD from a stream.

If the validator already contains a DTD, that DTD is deleted.

Parameters
inThe stream.
Exceptions
xmlpp::parse_error
virtual void xmlpp::DtdValidator::parse_subset ( const Glib::ustring external,
const Glib::ustring system 
)
virtual

Parse an external subset (DTD file).

If the validator already contains a DTD, that DTD is deleted.

Parameters
externalThe external ID of the DTD.
systemThe URL of the DTD.
Exceptions
xmlpp::parse_error
void xmlpp::DtdValidator::release_underlying ( )
overrideprotectedvirtual

Reimplemented from xmlpp::Validator.

bool xmlpp::DtdValidator::validate ( const Document doc)

Validate a document, using a previously parsed DTD.

The internal subset (if present) is de-coupled (i.e. not used), which could give problems if ID or IDREF is present.

Parameters
docPointer to the document.
Returns
Whether the document is valid.
Exceptions
xmlpp::internal_error
xmlpp::validity_error

Member Data Documentation

Dtd* xmlpp::DtdValidator::dtd_
protected