# -*- ruby -*- # # How to expand a template with data. # require 'xtemplate' class Comment def initialize(str) @str = str end def to_s @str end end data = { 'members' => [ {'name' => 'name1', 'age' => 21}, {'name' => 'name2', 'age' => 22}, {'name' => 'name3', 'age' => 23}, ], 'comment' => [ "This is not 'sanitized' data.", XTemplate::SanitizedString["This is 'sanitized' data."], Comment.new("This is not 'sanitized' data."), XTemplate::SanitizedString[Comment.new("This is 'sanitized' data.")], ], } text = < This attribute is not regarded as a data ID. EOF t = XTemplate::XMLTemplate.new(text) print(t.expand(data))