Scope of change: Medium
Champion: Chris Cole (MySpace)
Not all gadgets need the full weight of the current gadget spec. This proposal creates a simplified format that may be used.
<?xml version='1.0' encoding='utf-8'?> <Module title="Simple Gadget"> <Data> <os:ViewerRequest key='vwr' /> </Data> <Templates> <Template tag="my:foo"> <div> <img src="${My.person.thumbnailUrl}" /> <br/> (Picture of ${My.person.displayName}) </div> </Template> </Templates> <Content type='osml' > <h1>Hello, ${vwr.displayName}</h1> <my:foo person="${vwr}" /> </Content> </Module>
ModulePrefs as optional
The ModulePrefs section may be optional in a gadget. The Module node may contain a @title attribute for the gadget. When ModulePrefs is not specified the container may infer what features are required.
Data section
A new Data element may be used to specify data pipeline tags. This is a direct child of the Module element. All data pipeline tags are globally registered. Data may be scoped to a view(s) by specifying the view name(s) in a @scope attribute of the data pipeline tag.
Templates section
A new Templates element may be used to specify data pipeline tags. This is a direct child of the Module element. All custom tag templates are globally registered. Templates may be scoped to a view(s) by specifying the view name(s) in a @scope attribute of the Template tag. This utilizes the syntax defined for template libraries.http://opensocial-resources.googlecode.com/svn/spec/1.0/OpenSocial-Templating.xml#rfc.section.15