ontoref/ontology/constraints/invariant_requires_axiom.ncl

13 lines
424 B
Plaintext
Raw Normal View History

2026-03-13 00:21:04 +00:00
# InvariantRequiresAxiom: nodes with invariant=true must have level='Axiom.
# Apply as a post-schema constraint on individual Node records.
std.contract.custom (
fun label =>
fun value =>
if value.invariant && value.level != 'Axiom then
'Error {
message = "Node '%{value.id}': invariant=true requires level='Axiom (got '%{std.string.from value.level})"
}
else
'Ok value
)