Přeskočit na obsah

Datový model

Dokument popisuje osm entit a dvě strukturální pravidla, která se špatně opravují zpětně. Typovaný model v src/progresus_isir/domain/ stavový automat a hodnotové objekty implementuje; databázové schéma je zatím popsaný cíl, migrace neexistuje.

Jednotka
dílčí pohledávka, ne přihláška
Stav pohledávky
odvozený z append-only seznamu událostí, ne uložený jako jediná pravda
Provenience
document_id, page, method, confidence, extractor_version
Hotovo
stavový automat, klasifikace a provenience v typovaném modelu
Plánováno
databázové schéma a migrace

Dvě pravidla, která se špatně opravují později

Jedna přihláška — jedna P-pozice, jeden věřitel — může obsahovat několik dílčích pohledávek s různým nominálem, zajištěním, důvodem i výsledkem přezkumu. Agregace na úrovni přihlášky zničí přesně tu informaci, kvůli které produkt existuje.

Stav pohledávky je materializovaná pohodlnost; záznamem je uspořádaný seznam událostí. Oprava je nová událost, ne editace té staré. Tím se historie nikdy nepřepisuje a projekce se dá kdykoli postavit znovu.

# Datový model kolem dílčí pohledávky. Přihláška je kontejner, jednotkou je dílčí pohledávka. Její stav je odvozený z uspořádaného seznamu událostí a každá událost odkazuje na dokument a stránku.

Čtyři detaily, které dokument označuje jako nepovinné jen zdánlivě

  • Popření zaznamenává čtyři věci: kdo popřel (insolvenční správce, dlužník, jiný věřitel podle §200), co popřel (pravost, výše, pořadí), popřenou částku a zdrojový dokument. Popření bez „kdo“ se nedá skórovat, protože popření dlužníkem v oddlužení má jiné důsledky než popření správcem.
  • Postoupení podle §18 je kolmé na stav. Pohledávka může být postoupena jako zjištěná, popřená i ve sporu. Modelovat postoupení jako stav by ze stavového automatu udělalo lež.
  • Uspokojení jsou vždycky dvě čísla — absolutní částka a procento nominálu. S jedním z nich se napříč řízeními agregovat nedá.
  • Terminální není totéž co skončené. Zpětvzatá pohledávka je terminální pro pohledávku; řízení běží dál.

Klasifikace a „neznámo“

Každý povinný příznak — zajištěná, vykonatelná, podmíněná, podřízená, právní důvod — má explicitní hodnotu neznámo. Nepřečtený sken se nesmí tiše stát hodnotou false.

„Neznámo“ má důsledky: vypadává z metrik přesnosti klasifikace a může pohledávku vyřadit ze skóringu. Dotlačit ho na výchozí hodnotu je selhání kvality dat převlečené za úplnost.

Co v modelu vědomě není

  • Rodná čísla, zdrojem echovaná data narození a adresy dlužníků — parsují se a zahazují.
  • Pohledávky za majetkovou podstatou (§168, §169). Mimo rozsah v1, ale klasifikace je proto sada atributů, ne výčet typů — aby je model později nevylučoval.
  • Jakýkoli výstup skóringu. Skóring tento model konzumuje, není jeho součástí.

Kde to v repozitáři žije

  • docs/DATA-MODEL.md — entity, stavový automat, klasifikace, provenience, identita věřitele
  • docs/SPEC.md — §3 a §6 — požadavek, který model naplňuje
  • src/progresus_isir/domain/ — typovaná implementace stavového automatu, klasifikace a provenience

Souvisí

Zpět na sekci Dokumentace