Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
32
Task/XML-Input/Oz/xml-input.oz
Normal file
32
Task/XML-Input/Oz/xml-input.oz
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
declare
|
||||
[XMLParser] = {Module.link ['x-oz://system/xml/Parser.ozf']}
|
||||
Parser = {New XMLParser.parser init}
|
||||
|
||||
Data =
|
||||
"<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>"
|
||||
|
||||
fun {IsStudentElement X}
|
||||
case X of element(name:'Student' ...) then true
|
||||
else false
|
||||
end
|
||||
end
|
||||
|
||||
fun {GetStudentName element(attributes:As ...)}
|
||||
[NameAttr] = {Filter As fun {$ attribute(name:N ...)} N == 'Name' end}
|
||||
in
|
||||
NameAttr.value
|
||||
end
|
||||
|
||||
[StudentsDoc] = {Parser parseVS(Data $)}
|
||||
Students = {Filter StudentsDoc.children IsStudentElement}
|
||||
StudentNames = {Map Students GetStudentName}
|
||||
in
|
||||
{ForAll StudentNames System.showInfo}
|
||||
Loading…
Add table
Add a link
Reference in a new issue