Rationale

From wiki
Revision as of 21:03, 4 July 2009 by Mat007 (Talk | contribs)

Jump to: navigation, search

This section lists some design decisions that have been made during the development of the library.

The output streams do not accept a grammar during construction for validation

  • validation can only occur once the document is complete
  • failed validation usually throws an exception
  • the xml::xofstream uses RAII to flush the document to file in its destructor
  • a destructor must not throw
  • anyway it's simple enough to re-open the output stream with an input stream for validation afterwards

Document type definitions (DTD) cannot be specified with an external grammar