Stepan0v,
ну, по меньшей мере, у вас Настройки ТДС почему-то оказались в макете, хотя между собой они никак не связаны, это раз, и более того, из настроек ТДС можно переопределить тот макет, который указан в разделе структуры, это два
Соответственно, и разделение на Документ и ТДС происходит еще до макета, а не внутри, как у вас )
И внутри серого прямоугольника "ИС" у вас тоже какая-от странная последовательность стрелочек. На выходе у кода ТДС не может быть БД

На выходе у ТДС почти всегда html, иногда XML, как в случае с Яндекс-маркетом, например.
XML для XSL-шаблона получается не напрямую из БД, вокруг данных БД еще много всякой логики навешивается, прежде чем эти данные целиком или частично попадут в результирующий XML.
То есть вот такой явной связи между блоками - что вот тут мы сходили в базку, а сразу потом и только потом получили XML - нету такой связи.
А по поводу неуловленной мысли, я имел в виду, что вставки кода в макет лучше все таки считать независимыми от ТДС, но при этом иметь в виду, что они
а) Могут использовать результаты работы настроек ТДС
б) Могут повлиять на результат исполнения Кода ТДС, если код в макете находится выше чем Core_Page::instance()->execute();
в) Могут использовать результаты работы Кода ТДС, если код в макете находится ниже чем Core_Page::instance()->execute();
г) Один и тот же макет может обслуживать _разные_ ТДС, т.е. прежде чем использовать, например, результат работы настроек ТДС, необходимо убедиться, что текущая ТДС в принципе способна вернуть вам те данные, которые вы хотите использовать.
По поводу пункта г) приведу примерчик. Есть ТДС Инфосистемы, она в настройках определяет, как минимум, текущую группу ИС. И есть, например, ТДС Поиск, она в настройках вычисляет текущую страницу поисковой выдачи. Если, мы находясь в разделе поиска, в макете в php-коде получим текущий инстанс Core_Page::instance() и запросим у него текущую группу инфосистемы, то получим ошибку, потому что данное свойство не определено.