Reality
A dynamic type system that replaces hardcoded domain enums with schema-driven ObjectTypes, LinkTypes, Actions, and Interfaces. Designed for billions of instances and millions of type definitions.
Architecture
graph TB
subgraph Schema["Schema Layer"]
OT["ObjectType"] --> PD["PropertyDef"]
PD --> PC["PropertyConstraint"]
LT["LinkType"] --> Card["Cardinality"]
LT --> Dir["Directionality"]
Act["Action"] --> Pre["Precondition"]
Act --> AH["AuditHook"]
Iface["Interface"] --> OT
Iface --> Act
end
subgraph Expr["Expression Layer"]
E["Expr AST"] --> Cmp["Compare"]
E --> Arith["Arithmetic"]
E --> Agg["Aggregate"]
E --> Spat["Spatial"]
OS["ObjectSet"] --> Filt["Filter / Union / Intersect"]
OS --> SA["SearchAround"]
PR["PropertyRef"] --> LH["LinkHop traversal"]
end
subgraph Mut["Mutation Layer"]
M["Mutation"] --> CRUD["Create / Update / Delete"]
M --> Link["Link / Unlink"]
M --> ExAct["ExecuteAction"]
CS["ChangeSet"] --> M
end
subgraph Inst["Instance Layer"]
OI["ObjectInstance"] --> PM["PropertyMap"]
LI["LinkInstance"] --> Src["source"]
LI --> Tgt["target"]
end
subgraph Reg["Registry Layer"]
TR["TypeRegistry"] --> OT
AR["ActionRegistry"] --> Act
FR["FunctionRegistry"] --> FD["FunctionDef"]
end
Schema --> Expr
Expr --> Mut
Mut --> Inst
Reg --> Schema
12 Content-Addressable ID Types
ObjectTypeIdLinkTypeIdActionIdInterfaceIdInstanceIdMigrationIdChangeSetIdSubscriptionIdFunctionIdMarkingIdMappingIdBranchId
Questions?
Reach out for help with integration, deployment, or custom domain codecs.