-
-
Notifications
You must be signed in to change notification settings - Fork 1
Domain
Все идентификаторы суррогатные, чтобы пользователь мог спокойно менять все названия не нарушая ссылочную целостность. Все выводимые в интерфейс тексты задаются как словарь язык-текст
. Отношения двусторонние одного из 3 топологических типов: 1:1
, 1:M
, M:M
. Если не задано название сущности (или их набора) в отношении, то используется собственно название сущности.
Все поля опциональны. Констрейнты (обязательность, уникальность и тд) задаются не на уровне хранения, а на уровне процессов. Например: "отображать в общем списке лишь сущности с заполненным названием плюс те без названия, автором которых значится текущий пользователь". Соответственно у полей можно рисовать индикаторы типа "это поле необходимо для такого-то процесса". Дальше пользователь уже сам решает какие поля и когда заполнять. То есть сущность всегда создаётся в виде пустого драфта, а потом редактируется. А не так, что отдельно создаётся, отдельно редактируется.
entity *
ppp *
name * ru \Площадка
color \green
attribute *
tt *
name * ru \Название
type \l10n
aa *
name * ru \Адрес
type \l10n
mmm *
name * ru \Митап
color \red
attribute *
nn *
name * ru \Номер
type \text
rr *
name * ru \Трансляция
type \text
uuu *
name * ru \Персона
color \blue
attribute *
ee *
name * ru \Имя
type \l10n
ii *
name * ru \Почта
type \text
ddd *
name * ru \Выступление
color \magenta
attribute *
tt *
name * ru \Название
type \l10n
dd *
name * ru \Описание
type \l10n
uu *
name * ru \Длительность
type \duration
unit \minute
relation *
111 *
topo \1:M
source \ppp
target \mmm
target_name * ru \Митапы
222 *
topo \1:M
source \mmm
target \ddd
target_name * ru \Выступления
333 *
topo \M:M
source \mmm
target \uuu
source_name * ru \Ведущий митапов
target_name * ru \Ведущие
444 *
topo \M:M
source \ddd
target \uuu
source_name * ru \Выступления
target_name * ru \Докладчики
ppp *
oooo *
attribute *
tt * ru \Онлайн
dd * ru \До конца эпидемии встречаемся онлайн
relation *
111 / \ssss
mmm *
ssss *
attribute *
nn \#66
rr \https://youtube.com/piterjs
relation *
111 / \oooo
222 /
\cccc
\yyyy
\dddd
sss *
cccc *
attribute *
tt * ru \Как победить копипасту?
dd * ru \Расскажу о своём ноу-хау.
uu \PT40m
relation *
222 / \ssss
yyyy *
attribute *
tt * ru \Слепое программирование
dd * ru \Настоящее кунг-фу программирования.
uu \PT30m
relation *
222 / \ssss
dddd *
attribute *
tt * ru \Зависимость о программирования
dd * ru \Обмениваемся опытом слезания с кодинга.
uu \PT60m
relation *
222 / \ssss