1

JENA、RDF、およびW3CSSNXGのセンサーオントロジーを使用してセンサー観測に注釈を付けています。

個人のローカル名前空間を使用して、SSNXGのSensingDeviceの個人を作成しました。個人のURIを使用してRDFリソースを作成すると、説明だけが得られます。ただし、rdf:typeメタデータは作成されません。これはコードで明示的に行う必要がありますか?

私はこのような情報を追加しようとしました:

OntClass sensingDevice = ssn.getOntClass(NS + "SensingDevice");
Individual ard = ssn.createIndividual(DTPNS + arduino, sensingDevice);
Property type = incomingData.createProperty(RDFNS, "type");
Statement stmt0 = incomingData.createStatement(ardu, type, NS + "SensingDevice");
incomingData.add(stmt0);

ただし、これにより...

<rdf:Description rdf:about="http://dtp-126.sncs.abdn.ac.uk#CD7514">
    <rdf:type>http://purl.oclc.org/NET/ssnx/ssn#SensingDevice</rdf:type
</rdf:Description>

これはSPARQLには見えないようです。タイプメタデータを適切に追加するにはどうすればよいですか?

4

1 に答える 1

2

あなたは近かった:

Statement stmt0 = incomingData.createStatement(ardu, type, sensingDevice);

使用した呼び出しは、rdf:typeを、そのURLのリソースではなく、文字列「http://purl.oclc.org/NET/...」に設定しました。

ただし、これは2つの方法で簡略化できます。まず、Property typeすでにイエナにとして存在しRDF.typeます。次に、ステートメントを作成する必要はありません。モデルに直接追加するだけです。

incomingData.add(ard, RDF.type, sendingDevice);

(jenaのschemagen、btwを使用して、オントロジーからJava定数を作成できます)

于 2010-12-03T16:41:03.783 に答える