Perform the following three XPath queries on the XML Document below:

 //item[1]: Retrieve the first "item" element 
 //price/text(): Perform an action on each "price" element (print it out)
 //name: Get an array of all the "name" elements
XML Document:

<inventory title="OmniCorp Store #45x10^3">
  <section name="health">
    <item upc="123456789" stock="12">
      <name>Invisibility Cream</name>
      <price>14.50</price>
      <description>Makes you invisible</description>
    </item>
    <item upc="445322344" stock="18">
      <name>Levitation Salve</name>
      <price>23.99</price>
      <description>Levitate yourself for up to 3 hours per application</description>
    </item>
  </section>
  <section name="food">
    <item upc="485672034" stock="653">
      <name>Blork and Freen Instameal</name>
      <price>4.95</price>
      <description>A tasty meal in a tablet; just add water</description>
    </item>
    <item upc="132957764" stock="44">
      <name>Grob winglets</name>
      <price>3.56</price>
      <description>Tender winglets of Grob. Just add water</description>
    </item>
  </section>
</inventory>

include builtins/xml.e
constant xml_txt = """
<inventory title="OmniCorp Store #45x10^3">
  <section name="health">
    <item upc="123456789" stock="12">
      <name>Invisibility Cream</name>
      <price>14.50</price>
      <description>Makes you invisible</description>
    </item>
    <item upc="445322344" stock="18">
      <name>Levitation Salve</name>
      <price>23.99</price>
      <description>Levitate yourself for up to 3 hours per application</description>
    </item>
  </section>
  <section name="food">
    <item upc="485672034" stock="653">
      <name>Blork and Freen Instameal</name>
      <price>4.95</price>
      <description>A tasty meal in a tablet; just add water</description>
    </item>
    <item upc="132957764" stock="44">
      <name>Grob winglets</name>
      <price>3.56</price>
      <description>Tender winglets of Grob. Just add water</description>
    </item>
  </section>
</inventory>
""",
-- or, of course, xml_txt = get_text("input.xml")
    xml = xml_parse(xml_txt)
 
sequence sections = xml_get_nodes(xml[XML_CONTENTS],"section"),
         item1 = {},
         prices = {},
         names = {}
 
for s=1 to length(sections) do
    sequence items = xml_get_nodes(sections[s],"item")
    if item1={} then item1 = items[1] end if
    for i=1 to length(items) do
        prices = append(prices,xml_get_nodes(items[i],"price")[1][XML_CONTENTS])
        names = append(names,xml_get_nodes(items[i],"name")[1][XML_CONTENTS])
    end for
end for
 
puts(1,"===item[1]===\n")
sequence tmp = xml_new_doc(item1)
puts(1,xml_sprint(tmp))
puts(1,"===prices===\n")
pp(prices)
puts(1,"===names===\n")
pp(names,{pp_Maxlen,90})
