Если вы планируете писать все в сценарии, то пример 1 - это путь.
Вы можете делать в скрипте все, что пожелаете, а если чего-то не хватает, вы можете написать CFC, который будет реализовывать недостающие функциональные возможности, а затем вызвать его с новым синтаксисом.
Если бы вы начали все заново с новой кодовой базы, я бы старался избегать любых тегов вместе, таким образом, вариант 1.