40 #ifndef _xmlwrapp_document_h_
41 #define _xmlwrapp_document_h_
46 #include "xmlwrapp/export.h"
102 XMLWRAPP_DEPRECATED(
"use xml::document(xml::node(root_name)) instead")
103 explicit
document(const
char *root_name);
182 const
node& get_root_node() const;
192 node& get_root_node();
200 void set_root_node(const
node& n);
209 const std::
string& get_version() const;
217 void set_version(const
char *version);
225 const std::
string& get_encoding() const;
233 void set_encoding(const
char *encoding);
243 bool get_is_standalone() const;
251 void set_is_standalone(
bool sa);
264 bool process_xinclude();
273 bool has_internal_subset() const;
282 bool has_external_subset() const;
314 bool validate(const
char *dtdname);
334 node::iterator begin();
344 node::const_iterator begin() const;
352 node::iterator end();
360 node::const_iterator end() const;
371 void push_back (const
node &child);
385 node::iterator insert (const
node &n);
399 node::iterator insert(
node::iterator position, const
node &n);
417 node::iterator replace(
node::iterator old_node, const
node& new_node);
433 node::iterator erase(
node::iterator to_erase);
449 node::iterator erase(
node::iterator first,
node::iterator last);
457 void save_to_string(std::
string& s) const;
469 bool save_to_file(const
char *filename,
int compression_level = 0) const;
479 friend XMLWRAPP_API std::ostream& operator<< (std::ostream &stream, const
document &doc);
482 impl::doc_impl *pimpl_;
484 void set_doc_data (
void *data);
485 void set_doc_data_from_xslt (
void *data, xslt::impl::result *xr);
486 void* get_doc_data();
487 void* get_doc_data_read_only() const;
488 void* release_doc_data();
492 friend class xslt::stylesheet;
497 #endif // _xmlwrapp_document_h_