# -*- ruby -*- # # tag text nodes. # require 'xtemplate' data = { 'members1' => ["name1", "name2", "name3"], 'members2' => [ {"name" => "name1", "uid" => 1}, {"name" => "name2", "uid" => 2}, {"name" => "name3", "uid" => 3}, ] } text = <<EOF <?xml version="1.0" encoding="EUC-JP"?> <members> <uids> <uid id="members2{untag(uid);text()}" /> </uids> <member id="members1{tag(name)}"> <name id="name" /> </member> </members> EOF t = XTemplate::XMLTemplate.new(text) print(t.expand(data))