RosettaCodeData/Task/XML-Output/Objeck/xml-output.objeck
2023-07-01 13:44:08 -04:00

29 lines
1,000 B
Text

use Data.XML;
use Collection.Generic;
class Test {
function : Main(args : String[]) ~ Nil {
# list of name
names := Vector->New()<String>;
names->AddBack("April");
names->AddBack("Tam O'Shanter");
names->AddBack("Emily");
# list of comments
comments := Vector->New()<String>;
comments->AddBack("Bubbly: I'm > Tam and <= Emily");
comments->AddBack("Burns: \"When chapman billies leave the street ...\"");
comments->AddBack(XmlElement->EncodeString("Short & shrift");
# build XML document
builder := XmlBuilder->New("CharacterRemarks");
root := builder->GetRoot();
if(names->Size() = comments->Size()) {
each(i : names) {
element := XmlElement->New(XmlElement->Type->ELEMENT, "Character");
element->AddAttribute(XmlAttribute->New("name", names->Get(i)));
element->SetContent(XmlElement->EncodeString(comments->Get(i)));
root->AddChild(element);
};
};
builder->ToString()->PrintLine();
}
}