2010-12-03 6 views
1

JENA、RDF、W3C SSNXGのセンサーオントロジーを使用してセンサー観測に注釈を付ける。センサーデータに注釈を付けるがrdfはない:

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); 

しかし、これはこれは、SPARQLには見えていないようで...

<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> 

結果。タイプメタデータを正しく追加するにはどうすればよいですか?

答えて

2

あなたが接近していた:文字列のタイプは "http://purl.oclc.org/NET/..." というよりも、そのURLのリソース設定したRDFを使用

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

コール。

ただし、これを2つの方法で簡略化できます。最初にProperty typeはすでにjenaにRDF.typeとして存在しています。第二に、あなただけの直接モデルに追加し、ステートメントを作成する必要はありません。(ところで、あなたはイエナのschemagenを使用してオントロジーからJavaの定数を作成することができます)

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

関連する問題