用于列出XML对象的XML元素

时间:2013-08-28 14:55:30

标签: xml r

如何将XML树拆分为XML对象列表,然后我喜欢使用函数getNodeSet,但返回值应该包含根对象“part”?

require(XML)

txt = "<doc>
         <part>
           <name>ABC</name>
           <type>XYZ</type>
           <cost>3.54</cost>
           <status>available</status>
         </part>
         <part>
           <name>ABC</name>
           <type>XYZ</type>
           <cost>3.54</cost>
           <status>available</status>
         </part>
       </doc>"

doc <- xmlTreeParse(txt, useInternalNodes = TRUE)
special_nodes <- getNodeSet(doc, "/*/part//*")

1 个答案:

答案 0 :(得分:1)

我认为getNodeSet返回的节点是指向底层XML对象的指针,例如

> special_nodes[[1]]
<name>ABC</name> 
> xpathSApply(special_nodes[[1]], "../cost")
[[1]]
<cost>3.54</cost>