1

XQuery を使用して、QString expected_xml に格納されている次の xml (型 ID とテスト出力などを取得) を解析したいのですが、

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE TEST_XML>
<TEST TEST_VERSION="14">
 <TEST_TYPES>
  <TEST_TYPE ID="0"/>
  <TEST_TYPE ID="1"/>
 </TEST_TYPES>
 <TEST_QUERY_LIST PROP="0">
  <TEST_QUERY_FILE>"C:/Files/File.txt"</TEST_QUERY_FILE>
 </TEST_QUERY_LIST>
 <TEST_OUTPUT>
  <FILE PATH="C:/Files/File2.txt" TEST_TYPE_ID_REF="1">
   <USED_BY TEST_PATH="C:/Files/File2.txt" ALIAS="thisData"/>
  </FILE>
 </TEST_OUTPUT>
</TEST>

たとえば、次のコードを使用して Id を取得しますが、何も得られません。私は非常に明白な何かを見落としていますか?

   //Test Parsing
   QByteArray xmlByteArry;
   QBuffer device(&xmlByteArry);
   device.setData(expected_xml.toUtf8());
   device.open(QIODevice::ReadOnly);

   QXmlQuery query;
   query.bindVariable("xmlByteArry", &device);
   query.setQuery("doc($xmlByteArry)//TEST/TEST_TYPES");

   if(query.isValid())
   {
      QStringList values;
      query.evaluateTo(&values);
      qDebug() << values;
   }
4

1 に答える 1