При разработке веб-приложения часто возникает задача создавать объекты, которые можно однотипно обрабатывать, но при этом они могут иметь различные свойства. Эти свойства нельзя просто записать в текстовое поле, потому что необходимо по ним искать, фильтровать и группировать объекты. Широко известный пример - это товары в магазине. Карандаши, рубашки, велосипеды, компьютеры обладают совершенно различными свойствами, но одинаково обрабатываются в списках товаров, заказах, корзине и т.п. В декларативном фреймворке Evado можно реализовать несколько способов решения данной задачи. Причём, как и во многом другом, достаточно использовать унифицированный веб-интерфейс вместо написания кода. Наследование Первый способ - это классическое наследование. Создается базовый тип (класс) товара и от него наследуются новые типы, в которые добавляются необходимые свойства (атрибуты). Для работы с дополнительными свойствами нужно как-то их обозначить и для этого хорошо подходит группировка атрибутов