stardog 2.0.0 を使用して (ディスク) データベースを作成しました。
オントロジーといくつかのデータをこのデータベースにロードしました。
次のコマンドを実行すると、オントロジーの公理とこのデータが表示されます。
./stardog query -v --username user --passwd pass dbname "select * where { ?s ?p ?o }"
これは、返された公理の選択です。
?s ?p ?o
| http://www.ugent.be/chest#Infection | rdf:type | owl:Class |
| http://www.ugent.be/chest#Infection | rdf:type | http://www.ugent.be/chest#RespiratoryInfection |
| http://www.ugent.be/chest#Infection | rdf:type | owl:NamedIndividual |
| http://www.ugent.be/chest#Infection | rdfs:subClassOf | http://www.ugent.be/chest#Pathology |
これは返されたデータの選択です:
| <http://www.ugent.be/chest#Infection/4641> | rdf:type | <http://www.ugent.be/chest#Infection> |
| <http://www.ugent.be/chest#Infection/4642> | rdf:type | <http://www.ugent.be/chest#Infection> |
| <http://www.ugent.be/chest#Infection/4643> | rdf:type | <http://www.ugent.be/chest#Infection> |
| <http://www.ugent.be/chest#Infection/4644> | rdf:type | <http://www.ugent.be/chest#Infection> |
クエリを実行して rdf:type Infection を持つすべての個人を取得しようとすると、何も得られません。
./stardog query -v --username user --passwd pass "chest" "PREFIX : <http://www.ugent.be/chest#> select ?s where { ?s rdf:type :Infection }"
推論タイプ QL または EL を追加すると、
:Infection
推論タイプ DL を追加すると、次のようになります。
com.clarkparsia.pellet.api.term.impl.entity.DataNotImpl cannot be cast to com.clarkparsia.pellet.api.term.entity.ClassExpression
同じことが整合性チェックにも当てはまります。
私は何か間違ったことをしていますか?