Q: how to get value inside node if i have xml content
<aaa> 1111<bbb>222</bbb>333 </aaa>

Then how to get value which is "1111" and "333"
but I only can get value of first node which is "1111" only
Please advise
code is here
#include <iostream>
#include "rapidxml/rapidxml.hpp"
#include <string.h>

using namespace std;
using namespace rapidxml;

string content = "<aaa> 1112<bbb>222</bbb>333 </aaa>";

int main(int argc, char**argv) {


    xml_document<> m_doc;

    try {

        m_doc.parse<0>(&content[0]);

    } catch (rapidxml::parse_error &error) {
        cout <<"parse_error\n";
        exit(1);

    }

     xml_node<>* node = m_doc.first_node();
     cout << "name = " <<node->name()<<endl;
     cout << "value = "<< node->value() <<endl;
     cout << "value_size = "<< node->value_size()<<endl;

    m_doc.clear();

    return 0;
}

Output is
name = aaa
value =  1111
value_size = 5


A: Use next_sibling function to find the next string under same node.
Same is used by Xerces library to find the next string under same node.

A: Good question : I'd initially misread the XML structure you're trying to parse.
I haven't tried this, but I think that once you have found the first node <aaa> you must then get the first child node (which should have type node_data, value 1111 in your example.) , rather than getting the value of the node_element.
Then iterate over all it's siblings looking for other nodes with type node_data.
