Should be obvious how to apply that to your templates.You can take it quite a bit further and offer a fairly comprehensive reflection service in your engine, allowing a component to reference a data structure that uniquely identifies the component's type, name, members, base classes/interfaces, methods, and other properties.