У меня есть программа, которая использует правила в формате XML для создания исполняемого кода во время выполнения. Мне нужно определить некоторые действия и логические конструкции, используя свой собственный диалект. У меня есть конструкции OR, AND и NOT, и теперь мне нужно реализовать IF..THEN..ELSE.
Я пытаюсь придумать синтаксис, который имел бы смысл, и вот что у меня есть на данный момент:
<IF id='if-1'>
<TIME from="5pm" to="9pm" />
</IF>
<THEN id='if-1'>
<...some actions defined.../>
</THEN>
<ELSE id='if-1'>
<...other set of actions defined here.../>
</ELSE>
Если мне трудно читать, но я не вижу более чистого способа представить это, не делая слишком много вложений. Есть ли у кого-нибудь предложения? (отказ от использования XML на данный момент невозможен :))