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="&#x00C9;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
&#x00C9;mily
Nil

</lang>


=={{header|Tcl}}==
=={{header|Tcl}}==