DatalogViolationException
class DatalogViolationException(prefix: String = "", val culprit: Any, suffix: String = "", cause: Throwable? = null) : TuPrologException
Thrown by the ensure* functions of it.unibo.tuprolog.datalog (e.g. it.unibo.tuprolog.datalog.ensureIsDatalog, it.unibo.tuprolog.datalog.ensureHasNoCompound) when a it.unibo.tuprolog.core.Clause or an it.unibo.tuprolog.theory.Theory fails one of the Datalog well-formedness checks (contains a compound argument, has an unsafe head or negated variable, or is recursive).
Parameters
culprit
the offending it.unibo.tuprolog.core.Clause/it.unibo.tuprolog.theory.Theory (or its string rendering), included as-is in message between prefix and suffix.