Petri nets are a class of models of computation used to compactly represent discrete event systems. Among many application domains, they have now become the most prominent formalism to express process models in Process Mining, thanks to their formal semantics that enables automated analysis techniques. In this context, model repair is the task of aligning a process model with actual executions of the process. Current solutions to model repair do not allow for embedding domain knowledge, providing guarantees of rigor, and enforcing structural requirements at the same time. In this paper, we fill this gap by proposing an approach based on the Inductive Logic Programming system ILASP. We then implement our approach and perform an experimental evaluation, showing both its expressiveness and feasibility.