Step 1 of the vk-gramatvediba build. - normative folder structure: enterprise/ , domains/ , processes/ - enterprise/enterprise.yaml — L0 enterprise index (validates against the UAPF 2.2.0 enterprise-index schema; packages[] filled in later steps) - README and docs/conventions.md — VK function-group to UAPF level mapping, composition rule, transcription-fidelity policy - CODEOWNERS placeholder and .gitignore (built .uapf archives excluded) Targets UAPF specification v2.2.0.
61 lines
2.7 KiB
Markdown
61 lines
2.7 KiB
Markdown
# Conventions — VK accounting processes mapped to UAPF levels
|
|
|
|
## Level mapping
|
|
|
|
| UAPF level | VK concept | Location |
|
|
|-----------|-----------|----------|
|
|
| L0 — enterprise index | The VK / VPC accounting workspace as a whole | `enterprise/enterprise.yaml` |
|
|
| L1 — domain | The accounting domain (*grāmatvedības uzskaite*) | `domains/gramatvediba/` |
|
|
| L2 — function group | Each function group, FG1–FG6 | `processes/fgN/` |
|
|
| L3 — sub-process variant | A sub-process that decomposes into variants | `processes/fgN-x/` (only where needed) |
|
|
| L4 — atomic executable | A single runnable process (BPMN + DMN + resources) | `processes/fgN-x/` |
|
|
|
|
The six function groups:
|
|
|
|
| FG | Domain |
|
|
|----|--------|
|
|
| FG1 | Long-term non-financial assets and inventory accounting |
|
|
| FG2 | Financial assets accounting |
|
|
| FG3 | Liabilities and expenses accounting |
|
|
| FG4 | Remuneration liabilities accounting |
|
|
| FG5 | Receivables and revenue accounting |
|
|
| FG6 | Report preparation for publication |
|
|
|
|
L3 is used only where a sub-process genuinely decomposes into variants. An
|
|
atomic sub-process — for example FG3-1, *Rēķina saņemšana par
|
|
precēm/pakalpojumiem* (invoice receipt) — is an L4 package included directly
|
|
by its function-group (L2) package.
|
|
|
|
## Composition
|
|
|
|
Higher-level packages reference lower-level ones through the manifest
|
|
`includes` field; they never copy BPMN, DMN or CMMN artifacts (UAPF
|
|
specification 2.2.0, §05 — no-duplication rule). The VK schemas link heavily
|
|
between function groups; those cross-function-group links are likewise
|
|
expressed as `includes` references.
|
|
|
|
## Source of truth and engine consumption
|
|
|
|
The Git repository is the single source of truth. Each package is a
|
|
human-readable, diff-able directory: `uapf.yaml` plus cornerstone folders
|
|
(`bpmn/`, `dmn/`, `cmmn/`, `resources/`) and `metadata/`.
|
|
|
|
The UAPF reference engine (`uapf-engine`) consumes packages as `.uapf`
|
|
archives. A package directory is exported to a `.uapf` archive — a zip that
|
|
preserves file paths and the manifest — for execution and validation. The
|
|
archives are build artifacts; they are not committed to the repository.
|
|
|
|
## Transcription fidelity
|
|
|
|
Packages are transcribed from the published VK process schemas (flowcharts)
|
|
and process registers (step tables). The transcription preserves:
|
|
|
|
- step identifiers (the VK `process nr.` numbering);
|
|
- responsibility — RACI columns map to BPMN lanes (Iestāde / Nodarbinātais / VPC);
|
|
- the information system each step uses — mapped to a capability binding;
|
|
- execution deadlines (SLAs) and the data objects each step produces.
|
|
|
|
The transcription does not change the documented process. Where a schema and
|
|
its register disagree on sequence, the discrepancy is recorded in the package
|
|
documentation rather than silently resolved.
|