Не
Вложенные шаблоны не допускаются, тебе надо было сделать что-то вроде:
{template foo.tpl(name)}
<h1 onclick="bar.click(this)">Hello {name}!</h1>
{call this.header.tpl(name, 'ещё параметр')}
{/template}
/// Можно смело использовать неймспейсы любой длины, т.к. Snakeskin создаст их если что
{template foo.header.tpl(name, header)}
<h2>{header}</h2>
<h3>{name}</h3>
{/template}
НО
Для повторного использования кода в шаблоне и его дочерних шаблонах есть прототипы, которые в отличии от вызова шаблона в шаблоне не создают зависимостей, т.е.
{template base(name)}
{proto foo}
121
{/proto}
{apply foo}
{apply foo}
{/template}
Прототип может содержать в себе другие прототипы, блоки и т.д. В дочернем шаблоне можно переопределить и вызвать любой родительский прототип. Прототип не может вызывать сам себя, т.е.
{proto foo}
{apply foo}
{/proto}
не получится
И главное, в скомпилированном шаблоне прототипы никак не фигурируют и не создают никаких связей, т.е. они используются только на этапе трансляции.
http://habrahabr.ru/post/168093/ здесь довольно исчерпывающее описание прототипов, хотя сама статья уже местами устарела, т.к. писалась для версии 1 почти год назад, а ща уже 2.4