Структура метаданных

Метаданные (Мета) - совокупность JSON-файлов в полной мере описывающих комплект структур, которыми оперирует приложение, способов отображения данных структур в пользовательском интерфейсе и навигации по ним, а так же файлов конфигурации приложения.

Структура основных типов меты

shema

Структуру основных типов меты можно представить следующим образом:

Мета классов является основным источником формирования данных в приложении. Мета классов состоит из атрибутов (атрибутивная часть) и параметров самого класса (общая часть). Атрибуты - это объекты массива «properties» общей части, которая содержит поля, имеющие отношение к самой структуре и способам оперирования данными в структуре.

На основе меты классов задается мета представлений, мета навигации, мета отчетов, мета бизнес-процессов и т.д.

Мета представления (класса) позволяет задавать желаемый состав атрибутов этого класса для отображения на форме, в соответствии с типом формы представления (представление формы списка list.json, создания create.json, изменения класса item.json) и указывать для каждого отдельного атрибута свойства, переопределяемые и (или) дополняемые свойства, задаваемые в мете класса для данного атрибута.

Мета представления + Атрибуты класса = Отображение атрибутов на форме

Мета навигации регулирует расположение элементов в навигационном блоке. Мета навигации разделяется на мету узлов навигации и мету секции навигации.

Наименование файлов меты:

Мета класса Мета представлений Мета навигации
Находится в
директории meta
и состоит из
наименования
общей части меты
класса +
.class.json..
Например:
adress.class.json.

В наименовании директории
определяется к какому классу относится
представление. Мета представлений
располагается в директории views, в
которой содержатся директории,
наименования которых совпадают с
первой частью наименований файлов
меты классов. Например:
address@project_name, где address
относится к классу address.
Мета секций
навигации: состоит из
поля "name" +
.section.json и
находится в
директории
navigation.
Например:
workflow.section.json.