Design: Gadmaz core model (Entity/Zuordnung) -- bootstrap vocabulary, contract instances, lifecycle #13
Labels
No labels
coordination/cross-repo
coordination/needed
effort
large
effort
medium
effort
small
meta/duplicate
meta/planning
meta/wontfix
priority
high
priority
low
priority
medium
session
blocker
session
handover
session
next
status
blocked
status
done
status
in-progress
status
review
status
to-go
type
admin
type
bug
type
config
type
deployment
type/design
type
docs
type
enhancement
type
feature
type
handover
type
infrastructure
type
installation
type
maintenance
type
migration
type
research
type
security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
DAW/daw-contracts#13
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Track follow-up design work on the Gadmaz core storage contract. This
issue does not propose a schema version yet -- it records where a
long design session landed and names the concrete next questions.
Full session record (decisions, insights, open questions, with
reasoning): .anagild/sessions/1f8fe794-81bd-4dce-8f89-3f299c9239c8.finding
(session_insight/v1). This issue tracks the open_question entries
from that file that need dedicated follow-up work; it does not
duplicate the reasoning already captured there.
Where the session landed (accepted)
ENTITY(UUID, Value)andZUORDNUNG(Primary UUID, Type UUID, Secondary UUID), all three ZUORDNUNG positions referencingEntities.
and the Anagild entry/relation_entry model: none of them requires a
third structural primitive. Categories, types, contracts, and
relations-with-properties all reduce to Entities connected by
ordinary Zuordnungen.
in a source. Only when the fact's assertion, provenance, validity,
priority, or rating must itself be described does that describable
thing become its own Entity.
is declared per contract usage (a slot/Verwendung within a
Vertrag). A well-known
verwendetZuordnung-type marks which factsa concrete contract instance relies on, so independent contracts
never compete over the same mutable state and never need to agree
on cardinality for a shared Type.
Gadmaz contract: Gadmaz defines what is stored, not how.
Open questions to resolve here
UUIDs needed to bootstrap self-discovery of the rest of the
system vocabulary (candidate: UUID(system),
UUID(systemrelevant)), and how well-known UUIDs beyond that
root are defined, versioned, and distributed across
independent Gadmaz instances without becoming a rigid global
schema. Generalizes daw-category-standard's system=true /
seed-file mechanism beyond categories.
between a contract (describing required/allowed relationship
patterns) and a concrete instance of it (the dataset marking
which existing facts it uses via
verwendet), including howslots/Verwendungen and their cardinality are described.
are explicitly not part of the Gadmaz core ("no Zuordnungen
point here" is not a sufficient deletion rule, since edge
types differ in lifecycle significance). Needs rules defined
outside the core, per relevant edge-type, likely at the
contract level.
Explicit non-goals for this issue
gadmaz_core/v1schema version yet.Related
DAW/daw-modul-berhtjan-core#12 (contribution.json / label model,
touches the same Entity/Zuordnung question from the module side)
DAW/daw-modul-berhtjan-core#15 (authorization filtering; the
personalization/view-engine question from the same session is
recorded in the finding file above, not yet assigned an owner)