1. Alfresco Content Services 5.2 Documentation, "FreeMarker Template Guide": This guide explicitly states the role of TemplateNode. In the section "The Alfresco Template Model," it details how objects are made available to the template. It clarifies: "Alfresco Repository script objects of type ScriptNode are automatically converted to objects of type TemplateNode."
Source: Alfresco Content Services 5.2 Documentation > Developing > API > Scripting API > FreeMarker Template Guide.
2. Alfresco Content Services 5.2 Documentation, "ScriptNode API": This document describes the ScriptNode object, which is used in the server-side JavaScript context of a web script controller. This distinguishes it from the TemplateNode used in the FreeMarker view.
Source: Alfresco Content Services 5.2 Documentation > Developing > API > Scripting API > Scripting API services > ScriptNode API.
3. Alfresco Content Services 5.2 Documentation, "Web scripts": The overview of web scripts explains the Model-View-Controller (MVC) pattern used. The controller (JavaScript) prepares a model of data, which often includes ScriptNode objects. These are then passed to the view (FreeMarker template), where they are accessed as TemplateNode objects.
Source: Alfresco Content Services 5.2 Documentation > Developing > API > Web scripts.