docs: static Set<String> validateRuleOntologically(TransactionOLTP graph, Rule rule) {
          Set<String> errors = new HashSet<>();
  
          //both body and head refer to the same graph and have to be valid with respect to the schema that governs it
          //as a result the rule can be ontologically validated by combining them into a conjunction
          //this additionally allows to cross check body-head references
          ReasonerQuery combinedQuery = combinedRuleQuery(graph, rule);
          errors.addAll(combinedQuery.validateOntologically(rule.label()));
          return errors;
      }