Assuming that both the training and test sets are made up of pairs (patient_id, label). To use a reasoner to predict if a patient is infected or not, you should have an OWL ontology containing concepts such as patients, diseases etc. Then a machine learning algorithm producing an OWL Class Expression can be used. After this training step, the resulting concept and a test example will be given to a reasoner as input to assess the membership w.r.t the class expression. Then, the result can be compared against the actual label to estimate the accuracy, precision and recall. There are several systems to this purpose, e.g. DL-Foil and DL-Learner .