使用ESQL中的fieldname获取XML节点

时间:2014-08-13 05:15:45

标签: xml esql

如果我们知道nodename,如何获取XML的元素。我有一个示例XML,如下所示。

<?xml version="1.0"?>
<!DOCTYPE PARTS SYSTEM "parts.dtd">
<?xml-stylesheet type="text/css" href="xmlpartsstyle.css"?>
<PARTS>
   <TITLE>Computer Parts</TITLE>
<PART>
  <ITEM>Motherboard</ITEM>
  <MANUFACTURER>ASUS</MANUFACTURER>
  <MODEL>P3B-F</MODEL>
  <COST> 123.00</COST>
</PART>
<PART>
  <ITEM>Video Card</ITEM>
  <MANUFACTURER>ATI</MANUFACTURER>
  <MODEL>All-in-Wonder Pro</MODEL>
  <COST> 160.00</COST>
</PART>
<PART>
  <ITEM>Sound Card</ITEM>
  <MANUFACTURER>Creative Labs</MANUFACTURER>
  <MODEL>Sound Blaster Live</MODEL>
  <COST> 80.00</COST>
</PART>
<PART>
  <ITEMᡋ inch Monitor</ITEM>
  <MANUFACTURER>LG Electronics</MANUFACTURER>
  <MODEL> 995E</MODEL>
  <COST> 290.00</COST>
</PART>

我想使用esql获取数组中的所有元素。怎么做?

2 个答案:

答案 0 :(得分:0)

FOR part AS OutputRoot.XMLNSC.PARTS.PART[] DO
        SET item = part.ITEM;
        SET manufacturer= part.MANUFACTURER;
        SET model= part.MODEL;
        SET cost = part.COST;
        -- do what you want... 
END FOR;

答案 1 :(得分:0)

假设您正在解析条目上的xml,那么您只需使用以下内容:

SET myvar[] = InputRoot.XMLNSC.PARTS.PART[]