sam*_*man 3 java semantic-web owl ontology jena
我instance1的class1和instance2的class2.我HasName(object property)也在我的本体论中定义了.现在,我如何instance1 HasName instance2通过jena 将triple()添加到我的本体?
Phi*_*l M 10
这是一种不处理中间问题的方法Statements.
// RDF Nodes -- you can make these immutable in your own vocabulary if you want -- see Jena's RDFS, RDF, OWL, etc vocabularies
Resource class1 = ResourceFactory.createResource(yourNamespace + "class1");
Resource class2 = ResourceFactory.createResource(yourNamespace + "class1");
Property hasName = ResourceFactory.createProperty(yourNamespace, "hasName"); // hasName property
// The RDF Model
Model model = ... // Use your preferred method to get an OntModel, InfModel, or just regular Model
Resource instance1 = model.createResource(instance1Uri);
Resource instance2 = model.createResource(instance2Uri);
// Create statements
instance1.addProperty(RDF.type, class1); // Classification of instance1
instance2.addProperty(RDF.type, class2); // Classification of instance2
instance1.addProperty(hasName, instance2); // Edge between instance1 and instance2
Run Code Online (Sandbox Code Playgroud)
您还可以使用builder-ish模式链接其中一些调用.
Resource instance2 = model.createResource(instance2Uri).addProperty(RDF.type, class2);
model.createResource(instance1Uri).addProperty(RDF.type, class1).addProperty(hasName, instance2);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7223 次 |
| 最近记录: |