xmlpp::Document Class Reference

Represents an XML document in the DOM model. More...

#include <libxml++/document.h>

Inheritance diagram for xmlpp::Document:

Inheritance graph
[legend]

List of all members.

Public Member Functions

Glib::ustring get_encoding () const
Elementget_root_node () const
 Return the root node.
Elementcreate_root_node (const Glib::ustring& name, const Glib::ustring& ns_uri=Glib::ustring(), const Glib::ustring& ns_prefix=Glib::ustring())
 Creates the root node.
Elementcreate_root_node_by_import (const Node* node, bool recursive=true)
 Creates a root node by importing the node from another document, without affecting the source node.
CommentNodeadd_comment (const Glib::ustring& content)
 Append a new comment node.
void write_to_file (const Glib::ustring& filename, const Glib::ustring& encoding=Glib::ustring())
 Write the document to a file.
void write_to_file_formatted (const Glib::ustring& filename, const Glib::ustring& encoding=Glib::ustring())
 Write the document to a file.
Glib::ustring write_to_string (const Glib::ustring& encoding=Glib::ustring())
 Write the document to the memory.
Glib::ustring write_to_string_formatted (const Glib::ustring& encoding=Glib::ustring())
 Write the document to the memory.
void write_to_stream (std::ostream& output, const Glib::ustring& encoding=Glib::ustring())
 Write the document to a std::ostream.
void write_to_stream_formatted (std::ostream& output, const Glib::ustring& encoding=Glib::ustring())
 Write the document to a std::ostream.
virtual void set_entity_declaration (const Glib::ustring& name, XmlEntityType type, const Glib::ustring& publicId, const Glib::ustring& systemId, const Glib::ustring& content)
 Add an Entity declaration to the document.
_xmlDoc* cobj ()
 Access the underlying libxml implementation.
const _xmlDoc* cobj () const
 Access the underlying libxml implementation.

Protected Member Functions

_xmlEntity* get_entity (const Glib::ustring& name)
 Retrieve an Entity.


Detailed Description

Represents an XML document in the DOM model.

Member Function Documentation

CommentNode* xmlpp::Document::add_comment ( const Glib::ustring content  ) 

Append a new comment node.

Parameters:
content The text. This should be unescaped - see ContentNode::set_content().
Returns:
The new comment node.

Element* xmlpp::Document::create_root_node ( const Glib::ustring name,
const Glib::ustring ns_uri = Glib::ustring(),
const Glib::ustring ns_prefix = Glib::ustring() 
)

Creates the root node.

Parameters:
name The node's name.
ns_uri The namespace URI. A namspace declaration will be added to this node, because it could not have been declared before.
ns_prefix The namespace prefix to associate with the namespace. If no namespace prefix is specified then the namespace URI will be the default namespace.
Returns:
A pointer to the new root node

Element* xmlpp::Document::create_root_node_by_import ( const Node node,
bool  recursive = true 
)

Creates a root node by importing the node from another document, without affecting the source node.

Parameters:
node The node to copy and insert as the root node of the document
recursive Whether to import the child nodes also. Defaults to true.
Returns:
A pointer to the new root node

Glib::ustring xmlpp::Document::get_encoding (  )  const

Returns:
The encoding used in the source from which the document has been loaded.

_xmlEntity* xmlpp::Document::get_entity ( const Glib::ustring name  )  [protected]

Retrieve an Entity.

The entity can be from an external subset or internally declared.

Parameters:
name Then name of the entity to get.
Returns:
A pointer to the libxml2 entity structure.

Element* xmlpp::Document::get_root_node (  )  const

Return the root node.

This function does _not_ create a default root node if it doesn't exist.

Returns:
A pointer to the root node if it exists, 0 otherwise.

virtual void xmlpp::Document::set_entity_declaration ( const Glib::ustring name,
XmlEntityType  type,
const Glib::ustring publicId,
const Glib::ustring systemId,
const Glib::ustring content 
) [virtual]

Add an Entity declaration to the document.

Parameters:
name The name of the entity that will be used in an entity reference.
type The type of entity.
publicId The public ID of the subset.
systemId The system ID of the subset.
content The value of the Entity. In entity reference substitutions, this is the replacement value.

void xmlpp::Document::write_to_file ( const Glib::ustring filename,
const Glib::ustring encoding = Glib::ustring() 
)

Write the document to a file.

Parameters:
filename 
encoding If not provided, UTF-8 is used

void xmlpp::Document::write_to_file_formatted ( const Glib::ustring filename,
const Glib::ustring encoding = Glib::ustring() 
)

Write the document to a file.

The output is formatted by inserting whitespaces, which is easier to read for a human, but may insert unwanted significant whitespaces. Use with care !

Parameters:
filename 
encoding If not provided, UTF-8 is used

void xmlpp::Document::write_to_stream ( std::ostream &  output,
const Glib::ustring encoding = Glib::ustring() 
)

Write the document to a std::ostream.

Parameters:
output A reference to the stream in which the document will be written
encoding If not provided, UTF-8 is used
Warning:
This method is much less efficient than write_to_string if you want to dump the document to a buffer or the standard output. Writing to a fstream is almost as fast as write_to_file

void xmlpp::Document::write_to_stream_formatted ( std::ostream &  output,
const Glib::ustring encoding = Glib::ustring() 
)

Write the document to a std::ostream.

The output is formatted by inserting whitespaces, which is easier to read for a human, but may insert unwanted significant whitespaces. Use with care !

Parameters:
output A reference to the stream in which the document will be written
encoding If not provided, UTF-8 is used
Warning:
See write_to_stream

Glib::ustring xmlpp::Document::write_to_string ( const Glib::ustring encoding = Glib::ustring()  ) 

Write the document to the memory.

Parameters:
encoding If not provided, UTF-8 is used

Glib::ustring xmlpp::Document::write_to_string_formatted ( const Glib::ustring encoding = Glib::ustring()  ) 

Write the document to the memory.

The output is formatted by inserting whitespaces, which is easier to read for a human, but may insert unwanted significant whitespaces. Use with care !

Parameters:
encoding If not provided, UTF-8 is used
Returns:
The written document.


Generated on Fri Apr 16 13:26:11 2010 for libxml++ by  doxygen 1.5.8