XML/Input: Difference between revisions
Content added Content deleted
(add Ruby) |
(added slate language) |
||
Line 267: | Line 267: | ||
# using xpath |
# using xpath |
||
doc.each_element("*/Student") {|node| puts node.attributes["Name"]}</lang> |
doc.each_element("*/Student") {|node| puts node.attributes["Name"]}</lang> |
||
=={{header|Slate}}== |
|||
Slate's XML Reader is still being developed at the time of this writing. |
|||
<lang slate> |
|||
slate[1]> [ |tree| |
|||
tree: (Xml SimpleParser newOn: '<Students> |
|||
<Student Name="April" Gender="F" DateOfBirth="1989-01-02" /> |
|||
<Student Name="Bob" Gender="M" DateOfBirth="1990-03-04" /> |
|||
<Student Name="Chad" Gender="M" DateOfBirth="1991-05-06" /> |
|||
<Student Name="Dave" Gender="M" DateOfBirth="1992-07-08"> |
|||
<Pet Type="dog" Name="Rover" /> |
|||
</Student> |
|||
<Student DateOfBirth="1993-09-10" Gender="F" Name="Émily" /> |
|||
</Students>') parse. |
|||
tree name = 'Students' ifTrue: [(tree children select: #is: `er <- Xml Element) |
|||
do: [|:child| child name = 'Student' ifTrue: [inform: (child attributes at: 'Name' ifAbsent: ['Noname'])]]]. |
|||
] do. |
|||
April |
|||
Bob |
|||
Chad |
|||
Dave |
|||
Émily |
|||
Nil |
|||
</lang> |
|||
=={{header|Tcl}}== |
=={{header|Tcl}}== |