QXmlQuery xQuery(QXmlQuery::XSLT20);
QString xXMLContent
= "<?xml version=\"1.0\" encoding=\"utf-8\" ?><folder id=\"0\" name=\"root\" is_expanded=\"false\"></folder>";
xOriginalContent.setData( xXMLContent.toAscii() );
xOriginalContent.
open(QBuffer::ReadWrite);
xOriginalContent.reset();
xQuery.setFocus(&xOriginalContent);
xRequestString += "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<xsl:stylesheet version=\"2.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\">"
" <xsl:template match=\"/\">"
" <xsl:apply-templates/>"
" </xsl:template>"
" <xsl:template match=\"folder\">"
" <folder name=\"{@name}\" id=\"{@id}\" is_expanded=\"{@is_expanded}\">"
" <xsl:copy-of select=\"child::node()\"/>"
" <xsl:if test=\"@id=0\">"
" <folder id=\"1\" name=\"name\"> </folder>"
" </xsl:if>"
" </folder>"
" </xsl:template>"
" <xsl:template match=\"*\">"
" <xsl:copy-of select=\".\"/>"
" </xsl:template>"
"</xsl:stylesheet>";
xQuery.setQuery(xRequestString);
assert(xQuery.isValid());
xOutputContent.
open(QBuffer::ReadWrite);
xOutputContent.reset();
std::string str1(xOriginalContent.data());
xQuery.evaluateTo(&xOutputContent);
xXMLContent = xOutputContent.data() ;
std::string str(xOutputContent.data());
return xApplication.exec();