Я бы отлично сделал такие вещи, как
<define tag="myTag" options="3">
<h1> #1 </h1>
<ul>
<li> #2
<li> #3
</ul>
</define>
, а затем использовал бы его:
<myTag option="foo" option="bar" option="bean" />
Я считаю макросы действительно большим преимуществом.
Временным решением является использование макропроцессора, такого как m4, или использование php для имитации эффекта макроса. Есть ли другой метод, который следует рассмотреть?