blob: 274cf6326479726fccfb59fb907fc16642eafcb6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
/* Tool to validate Baserock definitions data against the OWL schema.
*
* Based in part on:
*
* https://github.com/castagna/jena-examples/blob/master/src/main/java/org/apache/jena/examples/ExampleONT_02.java
*/
import java.util.Iterator;
import com.hp.hpl.jena.rdf.model.InfModel;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.reasoner.Reasoner;
import com.hp.hpl.jena.reasoner.ReasonerRegistry;
import com.hp.hpl.jena.reasoner.ValidityReport;
import com.hp.hpl.jena.util.FileManager;
public class ValidateTool {
public static void main(String[] args) {
Model data = FileManager.get().loadModel(
"../definitions.rdfxml", null, "RDF/XML");
Model schema = FileManager.get().loadModel(
"../baserock-example.schema", null, "Turtle");
Reasoner reasoner = ReasonerRegistry.getOWLReasoner();
reasoner = reasoner.bindSchema(schema.getGraph());
InfModel infmodel = ModelFactory.createInfModel(reasoner, data);
ValidityReport validity = infmodel.validate();
if (validity.isValid()) {
System.out.println("OK");
} else {
System.out.println("Conflicts");
for (Iterator i = validity.getReports(); i.hasNext(); ) {
System.out.println(" - " + i.next());
}
}
}
}
|