Атрибут документа карты

Доменная сущность Версия: 0.1 draft

Заполнение атрибута в документе карты: значения, происхождение, кем и когда заполнено.

⟨/⟩ Исходник

1. Назначение

Здесь живёт факт заполнения — то, что не относится ни к описанию, ни к самому значению: кем и когда заполнено, распознано или введено вручную. В варианте без этой сущности такие сведения пришлось бы вешать либо на значение, либо на документ целиком, теряя привязку к полю.

Значение — поле этой сущности, а не отдельная сущность: собственных реквизитов у него нет. Уверенность распознавания, кадр и область остались в пакете ввода, потому что это данные о распознавании, а не о результате.

2. Значения

Значения хранятся списком: тип может допускать несколько. Материалы основы, украшения и физико-механические повреждения отмечаются сразу несколькими клетками.

Цена такого хранения — запрос «во всех картах, где среди материалов есть картон» становится поиском по содержимому списка, а не соединением таблиц. Это приемлемо: поиск за пределами ядра карты решено не поддерживать.

Значения хранятся текстом, а правило их разбора известно из типа значения атрибута. Для выбора из перечисления и справочника хранятся коды вариантов, а не подписи: подпись зависит от бланка, код — нет.

Свойства

СвойствоТипОписание
ValuesIReadOnlyList<String>Значения в текстовом представлении; для выбора — коды вариантов. Пусто — не заполнено.
FilledByUserIdGuidПользователь, заполнивший значение.
FilledAtDateTimeМомент заполнения.
DocumentCardDocumentДокумент, которому принадлежит заполненный атрибут.
KindAttributeDocumentKindAttributeАтрибут вида документа, который заполнен.
OriginValueOriginПроисхождение значения: распознано или введено пользователем.