XML/XPath: Difference between revisions

no edit summary
(Added Bracmat example)
No edit summary
Line 1,737:
3.56
-> ("Invisibility Cream" "Levitation Salve" "Blork and Freen Instameal" "Grob winglets")</pre>
 
=={{header|PowerShell}}==
<lang PowerShell>
$document = [xml]@'
<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>
'@
 
$query = "/inventory/section/item"
$items = $document.SelectNodes($query)
</lang>
The first item:
<lang PowerShell>
$items[0]
</lang>
{{Out}}
<pre>
upc : 123456789
stock : 12
name : Invisibility Cream
price : 14.50
description : Makes you invisible
</pre>
Get some useful information:
<lang PowerShell>
$namesAndPrices = $items | Select-Object -Property name, price
$namesAndPrices
</lang>
{{Out}}
<pre>
name price
---- -----
Invisibility Cream 14.50
Levitation Salve 23.99
Blork and Freen Instameal 4.95
Grob winglets 3.56
</pre>
Here are the prices:
<lang PowerShell>
$items.price
</lang>
{{Out}}
<pre>
14.50
23.99
4.95
3.56
</pre>
Here are the names:
<lang PowerShell>
$items.name
</lang>
{{Out}}
<pre>
Invisibility Cream
Levitation Salve
Blork and Freen Instameal
Grob winglets
</pre>
 
=={{header|Python}}==
308

edits