libxml++ 3.2.5
|
XML DTD validator. More...
#include <libxml++/validators/dtdvalidator.h>
Public Member Functions | |
DtdValidator () | |
DtdValidator (const Glib::ustring & external, const Glib::ustring & system) | |
Create a validator and parse an external subset (DTD file) immediately. | |
DtdValidator (const std::string & filename) | |
Create a validator and parse an external subset (DTD file) immediately. | |
DtdValidator (Dtd * dtd, bool take_ownership) | |
Create a validator. | |
~DtdValidator () override | |
const Dtd * | get_dtd () const noexcept |
Get the parsed DTD. | |
Dtd * | get_dtd () noexcept |
Get the parsed DTD. | |
operator bool () const noexcept override | |
Test whether a DTD has been parsed. | |
void | parse_file (const std::string & filename) override |
Parse an external subset (DTD file). | |
void | parse_memory (const Glib::ustring & contents) override |
Parse a DTD from a string. | |
void | parse_stream (std::istream & in) |
Parse a DTD from a stream. | |
void | parse_subset (const Glib::ustring & external, const Glib::ustring & system) |
Parse an external subset (DTD file). | |
void | set_dtd (Dtd * dtd, bool take_ownership) |
Set a DTD. | |
void | validate (const Document * document) override |
Validate a document, using a previously parsed DTD. | |
Public Member Functions inherited from xmlpp::Validator | |
Validator () noexcept | |
~Validator () override |
Protected Member Functions | |
void | initialize_context () override |
void | release_underlying () override |
Protected Member Functions inherited from xmlpp::Validator | |
virtual void | check_for_exception () |
virtual void | check_for_validity_messages () |
virtual void | handle_exception () |
To be called in an exception handler. | |
virtual void | on_validity_error (const Glib::ustring & message) |
virtual void | on_validity_warning (const Glib::ustring & message) |
Protected Member Functions inherited from xmlpp::NonCopyable | |
NonCopyable () noexcept | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable (NonCopyable &&)=delete | |
virtual | ~NonCopyable () |
NonCopyable & | operator= (const NonCopyable &)=delete |
NonCopyable & | operator= (NonCopyable &&)=delete |
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,...) |
Protected Attributes inherited from xmlpp::Validator | |
std::unique_ptr< exception > | exception_ |
Glib::ustring | validate_error_ |
Glib::ustring | validate_warning_ |
XML DTD validator.
DTD = Document Type Definition
xmlpp::DtdValidator::DtdValidator | ( | ) |
|
explicit |
Create a validator and parse an external subset (DTD file) immediately.
filename | The URL of the DTD. |
xmlpp::parse_error |
|
explicit |
Create a validator and parse an external subset (DTD file) immediately.
external | The external ID of the DTD. |
system | The URL of the DTD. |
xmlpp::parse_error |
|
explicit |
Create a validator.
dtd | A pointer to the DTD to use when validating XML documents. |
take_ownership | If true, the validator takes ownership of the DTD. The caller must not delete it. If false, the validator does not take ownership of the DTD. The caller must guarantee that the DTD exists as long as the validator keeps a pointer to it. The caller is responsible for deleting the DTD when it's no longer needed. |
|
override |
|
noexcept |
Get the parsed DTD.
|
noexcept |
Get the parsed DTD.
|
overrideprotectedvirtual |
Reimplemented from xmlpp::Validator.
|
explicitoverridevirtualnoexcept |
Test whether a DTD has been parsed.
For instance
Implements xmlpp::Validator.
|
overridevirtual |
Parse an external subset (DTD file).
If the validator already contains a DTD, that DTD is deleted.
filename | The URL of the DTD. |
xmlpp::parse_error |
Implements xmlpp::Validator.
|
overridevirtual |
Parse a DTD from a string.
If the validator already contains a DTD, that DTD is deleted.
contents | The DTD as a string. |
xmlpp::parse_error |
Implements xmlpp::Validator.
void xmlpp::DtdValidator::parse_stream | ( | std::istream & | in | ) |
Parse a DTD from a stream.
If the validator already contains a DTD, that DTD is deleted.
in | The stream. |
xmlpp::parse_error |
void xmlpp::DtdValidator::parse_subset | ( | const Glib::ustring & | external, |
const Glib::ustring & | system ) |
Parse an external subset (DTD file).
If the validator already contains a DTD, that DTD is deleted.
external | The external ID of the DTD. |
system | The URL of the DTD. |
xmlpp::parse_error |
|
overrideprotectedvirtual |
Reimplemented from xmlpp::Validator.
void xmlpp::DtdValidator::set_dtd | ( | Dtd * | dtd, |
bool | take_ownership ) |
Set a DTD.
If the validator already contains a DTD, that DTD is released (deleted if the validator owns the DTD).
dtd | A pointer to the DTD to use when validating XML documents. |
take_ownership | If true, the validator takes ownership of the DTD. The caller must not delete it. If false, the validator does not take ownership of the DTD. The caller must guarantee that the DTD exists as long as the validator keeps a pointer to it. The caller is responsible for deleting the DTD when it's no longer needed. |
|
overridevirtual |
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.
document | Pointer to the document. |
xmlpp::internal_error | |
xmlpp::validity_error |
Implements xmlpp::Validator.