Apache Jenaの使い方は非常に新しいです。私はここで問題に直面しています。Apache Jenaは自動的にオブジェクトのプロパティを一緒にマージします
Protegeを使用してRDFファイルを設計しました。基本的には、私はアソシエーション、集約、&の3つのオブジェクトプロパティを持っています。 AGGREGATION & COMPOSITIONは両方とも、協会のサブプロパティです。 Protegeからここにあるように、これら3つのオブジェクトはうまく一緒に生成されます。
しかし、JavaでJenaを使用すると(私のコードは以下のとおりです)、生成される出力は期待される結果とは異なります。
モデルm = ModelFactory.createDefaultModel(); 文字列NS = "http://example.com/test/";
OntModel ontoModel = >ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM, null); ObjectProperty ASSOCIATION = ontoModel.createObjectProperty(NS + >"ASSOCIATION"); ObjectProperty AGGREGATION = ontoModel.createObjectProperty(NS + >"AGGREGATION"); AGGREGATION.addProperty(RDFS.subPropertyOf, ASSOCIATION); ObjectProperty COMPOSITION = ontoModel.createObjectProperty(NS + >"COMPOSITION"); COMPOSITION.addProperty(RDFS.subPropertyOf, ASSOCIATION);
あなたが生成した出力で見ることができるように:
1)ASSOCIATIONオブジェクトのプロパティがAGGREGATION & COMPOSITIONの下にネストされています。
2)AGGREGATION & COMPOSITIONのウェイサブプロパティが生成されます。
ここのお手伝いをさせていただきます。
Expected output generated from Protege & output generated with Jena
ありがとうございます。