If you use a "source" data binding and don't specify a template, it should use the contents of the elements as the template, exactly as it would in knockout.js. Example: <div data-bind="source: list"> <p> My name is <span data-bind="text: name"></span> and I am <span data-bind="text: age"></span> years old. </p> </div> Since the «template» binding is not specified, the contents of this element would become the template used for the binding. So when you render it you get something like this, without having to use an external template: <div> <p> My name is Pete and I am 20 years old. </p> <p> My name is Sarah and I am 27 years old. </p> </div> The point of this is to make it easier to create source binding without having to go through the hassle of using external templates. External templates seem a little overkill when you're doing very simple things with the source binding.