Я нисколько не уверен, что это - даже разрешимая проблема, но если у меня есть шаблон freemarker, я хотел бы иметь возможность спросить шаблон, какие переменные это использует.
В моих целях мы можем предположить, что шаблон freemarker очень прост - просто "корневой уровень" записи (модель для такого шаблона могла быть простой Картой). Другими словами, я не должен обрабатывать шаблоны, которые призывают к вложенным структурам и т.д.
Это, вероятно, поздно, но на тот случай, если кто-то еще столкнулся с этой проблемой: вы можете использовать 'data_model' и 'globals' для проверки модели - data_model будет содержать только значения, предоставленные моделью, в то время как глобальные также будет содержать любые переменные, определенные в шаблоне. Вам нужно добавить к специальным переменным точку - поэтому для доступа к глобальным переменным используйте $ {. Globals}
Для других специальных переменных см. http://freemarker.sourceforge.net/docs/ref_specvar.html