A prototype for mutation of OWL ontology with respect to entailment constraints
- Java JRE and JDK
- gradle
mutate.sh
is the main script that can be used to generate a mutant for an input knowledge graph. Runmutate.sh -h
to see the options how to run the program. The user needs to specify the input knowledge graph and a file name for the output graph. Optionally, a mask that the output needs to conform to and the number of mutations that are applied can be provided. Note, that the script first builds the project, which only need to be done once after the source code is modified.test_system.sh
is a simple script that tests whether the source code can be compiled and does a simple mutation to evaluate if the setup is correct.
Per default, five domain-independent mutation oprators are used. To add more (existing) mutation operators, their classes need to be added to the list in lines 108–112 in file Main.kt. To define new mutation operators, one can define them as sub-classes of the class Mutation (see e.g. mutation operators targeting the ABox in MutationAbox).