Да, носят чисто декларативный характер. Но в проектировании и при разработке в команде разработчиков очень сильно нужен. Например, у нас есть некая сущность Тариф, от которой порождены конкретные реализации (Акционный, лимитный, безлимитный, специальный - не суть ) - их может что-то объединять/разделять.