我使用Protege生成了OWL本体。我想使用OWL本体并创建RDF三元组,以使用Jena保存在三元组存储中。
我知道如何读写RDF,但我不知道如何为那些OWL类创建实例。例如:
我拥有的示例OWL本体
<owl:Class rdf:about="Person"/>
<owl:Class rdf:about="Animal"/>
<owl:DatatypeProperty rdf:about="salary">
<rdfs:domain rdf:resource="Person"/>
<rdfs:range rdf:resource="&xsd;real"/>
</owl:DatatypeProperty>
Run Code Online (Sandbox Code Playgroud)
需要RDF就是这样
<Person rdf:about="Jack">
<salary>1234</salary>
</Person>
Run Code Online (Sandbox Code Playgroud)
您可以使用Jena Ontology API以编程方式创建实例。有两种方法可以完成此操作。两者都需要您提供一个OntClass对象和一个OntModel
createIndividual在OntClass 对象上调用方法。
OntClass class = ontModel.createClass( yourNamespace + "SomeClass" );
Individual instance = class.createIndividual( yourNamespace + "individual1");
Run Code Online (Sandbox Code Playgroud)createIndividual在OntModel对象上调用方法,并将OntClass对象作为参数传递。
OntClass class = ontModel.createClass( yourNamespace + "SomeClass");
Individual individual = ontModel.createIndividual( yourNameSpace + "individual2", class);
Run Code Online (Sandbox Code Playgroud)有关更多信息,您可以访问Jena Ontology API的官方教程。