libxml++ 5.0.1

- Main Page
- Related Pages
- Namespaces
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | List of all members
xmlpp::Dtd Class Reference

Represents an XML DTD for validating XML files. More...

`#include <libxml++/dtd.h>`

Inheritance diagram for xmlpp::Dtd:
[legend]

## Public Member Functions
LIBXMLPP_API | Dtd ()
LIBXMLPP_API | Dtd (_xmlDtd* dtd, bool take_ownership=false)
| Create a Dtd from the underlying libxml DTD element. More...
LIBXMLPP_API | Dtd (const std::string& filename)
| Create a Dtd and parse an external subset (DTD file) immediately. More...
LIBXMLPP_API | Dtd (const ustring& external, const ustring& system)
| Create a Dtd and parse an external subset (DTD file) immediately. More...
LIBXMLPP_API | ~Dtd () override
LIBXMLPP_API _xmlDtd* | cobj () noexcept
| Access the underlying libxml implementation. More...
LIBXMLPP_API const _xmlDtd* | cobj () const noexcept
| Access the underlying libxml implementation. More...
LIBXMLPP_API ustring | get_external_id () const
LIBXMLPP_API ustring | get_name () const
LIBXMLPP_API ustring | get_system_id () const
LIBXMLPP_API void | parse_file (const std::string& filename)
| Parse an external subset (DTD file). More...
LIBXMLPP_API void | parse_memory (const ustring& contents)
| Parse a DTD from a string. More...
LIBXMLPP_API void | parse_stream (std::istream& in)
| Parse a DTD from a stream. More...
LIBXMLPP_API void | parse_subset (const ustring& external, const ustring& system)
| Parse an external subset (DTD file). More...

## Protected Member Functions
LIBXMLPP_API void | release_underlying ()
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

## Detailed Description

Represents an XML DTD for validating XML files.

DTD = Document Type Definition

## Constructor & Destructor Documentation

LIBXMLPP_API xmlpp::Dtd::Dtd | ( |  | ) |

LIBXMLPP_API xmlpp::Dtd::Dtd | ( | _xmlDtd * | dtd,
|  | bool | take_ownership = `false`
| ) |  |
| explicit

Create a Dtd from the underlying libxml DTD element.

Parameters

  dtd | A pointer to the libxml DTD element.
  take_ownership | If `true`, this Dtd instance takes ownership of the libxml DTD element. The caller must not delete it. If `false`, this Dtd does not take ownership of the libxml DTD element. The caller must guarantee that the libxml DTD element exists as long as this Dtd keeps a pointer to it. The caller is responsible for deleting the libxml DTD element when it's no longer needed, unless it belongs to a Document, in which case it's deleted when the Document is deleted.

LIBXMLPP_API xmlpp::Dtd::Dtd | ( | const std::string & | filename | ) |
| explicit

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

Since libxml++ 3.0:

Parameters

  filename | The URL of the DTD.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API xmlpp::Dtd::Dtd | ( | const ustring& | external,
|  | const ustring& | system
| ) |  |

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

Since libxml++ 3.0:

Parameters

  external | The external ID of the DTD.
  system | The URL of the DTD.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API xmlpp::Dtd::~Dtd | ( |  | ) |
| override

## Member Function Documentation

LIBXMLPP_API _xmlDtd* xmlpp::Dtd::cobj | ( |  | ) |
| noexcept

Access the underlying libxml implementation.

LIBXMLPP_API const _xmlDtd* xmlpp::Dtd::cobj | ( |  | ) | const
| noexcept

Access the underlying libxml implementation.

LIBXMLPP_API ustring xmlpp::Dtd::get_external_id | ( |  | ) | const

LIBXMLPP_API ustring xmlpp::Dtd::get_name | ( |  | ) | const

LIBXMLPP_API ustring xmlpp::Dtd::get_system_id | ( |  | ) | const

LIBXMLPP_API void xmlpp::Dtd::parse_file | ( | const std::string & | filename | ) |

Parse an external subset (DTD file).

If another DTD has been parsed before, that DTD is replaced by the new one (deleted if this Dtd owns it).

Since libxml++ 3.0:

Parameters

  filename | The URL of the DTD.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API void xmlpp::Dtd::parse_memory | ( | const ustring& | contents | ) |

Parse a DTD from a string.

If another DTD has been parsed before, that DTD is replaced by the new one (deleted if this Dtd owns it).

Since libxml++ 3.0:

Parameters

  contents | The DTD as a string.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API void xmlpp::Dtd::parse_stream | ( | std::istream & | in | ) |

Parse a DTD from a stream.

If another DTD has been parsed before, that DTD is replaced by the new one (deleted if this Dtd owns it).

Since libxml++ 3.0:

Parameters

  in | The stream.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API void xmlpp::Dtd::parse_subset | ( | const ustring& | external,
|  | const ustring& | system
| ) |  |

Parse an external subset (DTD file).

If another DTD has been parsed before, that DTD is replaced by the new one (deleted if this Dtd owns it).

Since libxml++ 3.0:

Parameters

  external | The external ID of the DTD.
  system | The URL of the DTD.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API void xmlpp::Dtd::release_underlying | ( |  | ) |
| protected