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::XsdSchema Class Reference

Represents an XSD schema for validating XML files. More...

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

Inheritance diagram for xmlpp::XsdSchema:
[legend]

## Public Member Functions
LIBXMLPP_API | XsdSchema ()
LIBXMLPP_API | XsdSchema (_xmlSchema* schema)
| Create a schema from the underlying libxml schema element. More...
LIBXMLPP_API | XsdSchema (const std::string& filename)
| Create a schema from a schema definition file. More...
LIBXMLPP_API | XsdSchema (const Document* document)
| Create a schema from an XML document. More...
LIBXMLPP_API | ~XsdSchema () override
LIBXMLPP_API _xmlSchema* | cobj () noexcept
| Access the underlying libxml implementation. More...
LIBXMLPP_API const _xmlSchema* | cobj () const noexcept
| Access the underlying libxml implementation. More...
LIBXMLPP_API void | parse_document (const Document* document) override
| Parse a schema definition from a document. More...
LIBXMLPP_API void | parse_file (const std::string& filename) override
| Parse a schema definition file. More...
LIBXMLPP_API void | parse_memory (const ustring& contents) override
| Parse a schema definition from a string. More...
Public Member Functions inherited from xmlpp::SchemaBase
| SchemaBase () noexcept
| ~SchemaBase () override

## Protected Member Functions
LIBXMLPP_API void | parse_context (_xmlSchemaParserCtxt* context)
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 XSD schema for validating XML files.

XSD = XML Schema Definition, a.k.a. XML Schema or W3C XML Schema

Since libxml++ 2.38:

## Constructor & Destructor Documentation

LIBXMLPP_API xmlpp::XsdSchema::XsdSchema | ( |  | ) |

LIBXMLPP_API xmlpp::XsdSchema::XsdSchema | ( | _xmlSchema * | schema | ) |
| explicit

Create a schema from the underlying libxml schema element.

Parameters

  schema | A pointer to the libxml schema element. The XsdSchema takes ownership of the _xmlSchema. The caller must not deallocate it.

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

Create a schema from a schema definition file.

Parameters

  filename | The URL of the schema.

Exceptions

  xmlpp::parse_error |

LIBXMLPP_API xmlpp::XsdSchema::XsdSchema | ( | const Document* | document | ) |
| explicit

Create a schema from an XML document.

Parameters

  document | A preparsed document tree, containing the schema definition.

Exceptions

  xmlpp::parse_error |

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

## Member Function Documentation

LIBXMLPP_API _xmlSchema* xmlpp::XsdSchema::cobj | ( |  | ) |
| noexcept

Access the underlying libxml implementation.

LIBXMLPP_API const _xmlSchema* xmlpp::XsdSchema::cobj | ( |  | ) | const
| noexcept

Access the underlying libxml implementation.

LIBXMLPP_API void xmlpp::XsdSchema::parse_context | ( | _xmlSchemaParserCtxt * | context | ) |
| protected

LIBXMLPP_API void xmlpp::XsdSchema::parse_document | ( | const Document* | document | ) |
| override virtual

Parse a schema definition from a document.

If another schema has been parsed before, that schema is replaced by the new one.

Parameters

  document | A preparsed document tree, containing the schema definition.

Exceptions

  xmlpp::parse_error |

Implements xmlpp::SchemaBase.

LIBXMLPP_API void xmlpp::XsdSchema::parse_file | ( | const std::string & | filename | ) |
| override virtual

Parse a schema definition file.

If another schema has been parsed before, that schema is replaced by the new one.

Parameters

  filename | The URL of the schema.

Exceptions

  xmlpp::parse_error |

Implements xmlpp::SchemaBase.

LIBXMLPP_API void xmlpp::XsdSchema::parse_memory | ( | const ustring& | contents | ) |
| override virtual

Parse a schema definition from a string.

If another schema has been parsed before, that schema is replaced by the new one.

Parameters

  contents | The schema definition as a string.

Exceptions

  xmlpp::parse_error |

Implements xmlpp::SchemaBase.

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