libxml++: xmlpp::DtdValidator Class Reference
XML DTD validator. More...
#include <libxml++/validators/dtdvalidator.h>

Public Member Functions | |
| DtdValidator () | |
| DtdValidator (const std::string& filename) | |
| 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 (Dtd* dtd, bool take_ownership) | |
| Create a validator. More... | |
| ~DtdValidator () override | |
| Dtd* | get_dtd () noexcept |
| Get the parsed DTD. More... | |
| const Dtd* | get_dtd () const noexcept |
| Get the parsed DTD. More... | |
| operator bool () const noexcept override | |
| Test whether a DTD has been parsed. More... | |
| void | parse_file (const std::string& filename) override |
| Parse an external subset (DTD file). More... | |
| void | parse_memory (const Glib::ustring& contents) override |
| Parse a DTD from a string. More... | |
| void | parse_stream (std::istream& in) |
| Parse a DTD from a stream. More... | |
| void | parse_subset (const Glib::ustring& external, const Glib::ustring& system) |
| Parse an external subset (DTD file). More... | |
| void | set_dtd (Dtd* dtd, bool take_ownership) |
| Set a DTD. More... | |
| void | validate (const Document* document) override |
| Validate a document, using a previously parsed DTD. More... | |
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. More... | |
| 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_ |
Detailed Description
XML DTD validator.
DTD = Document Type Definition
Constructor & Destructor Documentation
| xmlpp::DtdValidator::DtdValidator | ( | ) |
|
explicit |
Create a validator and parse an external subset (DTD file) immediately.
- Parameters
-
filename The URL of the DTD.
- Exceptions
-
xmlpp::parse_error
|
explicit |
Create a validator and parse an external subset (DTD file) immediately.
- Parameters
-
external The external ID of the DTD. system The URL of the DTD.
- Exceptions
-
xmlpp::parse_error
|
explicit |
Create a validator.
- Parameters
-
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.
Iffalse, 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 |
Member Function Documentation
|
noexcept |
Get the parsed DTD.
- Returns
- A pointer to the parsed DTD, or
nullptr.
|
noexcept |
Get the parsed DTD.
- Returns
- A pointer to the parsed DTD, or
nullptr.
|
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.
- Parameters
-
filename The URL of the DTD.
- Exceptions
-
xmlpp::parse_error
Implements xmlpp::Validator.
|
overridevirtual |
Parse a DTD from a string.
If the validator already contains a DTD, that DTD is deleted.
- Parameters
-
contents The DTD as a string.
- Exceptions
-
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.
- Parameters
-
in The stream.
- Exceptions
-
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.
- Parameters
-
external The external ID of the DTD. system The URL of the DTD.
- Exceptions
-
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).
- Parameters
-
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.
Iffalse, 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.
- Parameters
-
document Pointer to the document.
- Exceptions
-
xmlpp::internal_error xmlpp::validity_error
Implements xmlpp::Validator.

Public Member Functions inherited from