Difference between revisions of "Rationale"

From wiki
Jump to: navigation, search
(Document type definitions (DTD) cannot be specified with an external grammar)
Line 10: Line 10:
 
== Document type definitions (DTD) cannot be specified with an external grammar ==
 
== Document type definitions (DTD) cannot be specified with an external grammar ==
 
* see [http://mail-archives.apache.org/mod_mbox/xerces-c-users/200605.mbox/%3Ce5jj27$vh$2@sea.gmane.org%3E this thread] for details
 
* see [http://mail-archives.apache.org/mod_mbox/xerces-c-users/200605.mbox/%3Ce5jj27$vh$2@sea.gmane.org%3E this thread] for details
 +
 +
== The order of the attributes of an element cannot be controlled ==
 +
* see [http://mail-archives.apache.org/mod_mbox/xerces-c-users/200610.mbox/%3C454783CE.5050604@apache.org%3E this thread] for a (short) explanation

Revision as of 11:59, 22 November 2010

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

The order of the attributes of an element cannot be controlled