Building on #28, we use tree() by specifying an under(table.column, value) structure. The 'table.column' points to the definition of the tree(). The 'value' specifies a node X in the tree. When validating a value Y, X must be identical to Y or X must be an ancestor of Y in the tree.
I think we should have at least these two different validation error cases/messages:
Building on #28, we use
tree()
by specifying anunder(table.column, value)
structure. The 'table.column' points to the definition of thetree()
. The 'value' specifies a node X in the tree. When validating a value Y, X must be identical to Y or X must be an ancestor of Y in the tree.I think we should have at least these two different validation error cases/messages:
In previous VALVE implementations the whole tree was held in memory. This time we would prefer not to keep in memory, and instead use a WITH RECURSIVE query similar to this: https://github.com/ontodev/gizmos/blob/master/gizmos/tree.py#L806