MAIN
DEFINE i, l INTEGER
DEFINE r om.XmlReader
DEFINE e String
DEFINE a om.SaxAttributes
LET r = om.XmlReader.createFileReader("myfile.xml")
LET l = 0
LET e = r.read()
WHILE e IS NOT NULL
CASE e
WHEN "StartDocument"
DISPLAY "StartDocument:"
WHEN "StartElement"
LET l=l+1
DISPLAY l SPACES, "StartElement:", r.getTagName()
LET a = r.getAttributes()
FOR i=1 to a.getLength()
DISPLAY l SPACES," ",
a.getName(i)," = ",
a.getValueByIndex(i)
END FOR
WHEN "Characters"
DISPLAY l SPACES, " Characters:'",r.getCharacters(),"'"
WHEN "SkippedEntity"
DISPLAY "Entity:'",r.skippedEntity(),"'"
WHEN "EndElement"
DISPLAY l SPACES, "EndElement:", r.getTagName()
LET l=l-1
WHEN "EndDocument"
DISPLAY "EndDocument:"
OTHERWISE
DISPLAY "Invalid event: ",e
END CASE
LET e=r.read()
END WHILE
END MAIN