I’ll probably rewrite this and do all checks at evaluation time. This way, we can reduce or ideally remove errors thrown at PUL execution time. Next, in analogy with the XQUF semantics, we should already know and decide at evaluation time what will happen later and what not.