summaryrefslogtreecommitdiff
path: root/docs/samples/modify_add.cpp
blob: 88c8fe6592d9b5b4069978530b77fd34a38156ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "pugixml.hpp"

#include <iostream>

int main()
{
	pugi::xml_document doc;

    //[code_modify_add
	// add node with some name
	pugi::xml_node node = doc.append_child();
	node.set_name("node");

	// add description node with text child
	pugi::xml_node descr = node.append_child();
	descr.set_name("description");
	descr.append_child(pugi::node_pcdata).set_value("Simple node");

	// add param node before the description
	pugi::xml_node param = node.insert_child_before(pugi::node_element, descr);
	param.set_name("param");

	// add attributes to param node
	param.append_attribute("name") = "version";
	param.append_attribute("value") = 1.1;
	param.insert_attribute_after("type", param.attribute("name")) = "float";
	//]

	doc.print(std::cout);
}