2013-07-10 1 views
1

Я пишу приложение с использованием OWL-API и Hermit Reasoner. Я хотел бы запросить данные с помощью SPARQL-DL, подав запрос типа:Запрос SPARQL-DL с owl-api

PREFIX wine: <http://www.w3.org/TR/2003/PR-owl-guide-20031209/wine#> 
SELECT ?i 
WHERE { Type(?i, wine:PinotBlanc) } 
OR WHERE { Type(?i, wine:DryRedWine) } 

Могу ли я сделать это directy с совами-апи или я должен использовать внешнюю библиотеку (http://www.derivo.de/en/resources/sparql-dl-api/)? (Мне нужно что-то вроде queryEngine.query(my_query);)

ответ

1

Как и в июле 2013 года, OWL-API не поддерживает родной SPARQL-DL. Вам нужно подключить стороннюю библиотеку, чтобы она работала.

Мне известно о двух реализациях (возможно, больше): один по Derivo (ваша ссылка) и другой по Pellet.

+0

Да, я нашел даже OWL2QueryTab. – Discipulos

0

Я использовал OWL-API с отшелом и гранулой; оба работали нормально. Преимущество Pellet over Hermit заключается в том, что он поддерживает встроенные модули.

т.е. в Пелле, для некоторого класса Teenager, вы можете получить Семнадцатилетние лицо с помощью следующего запроса:

Person and (hasAge value "17.0"^^double) 

Если вы (или кто-то), все еще интересуют, я могу предоставить класс Java для Это.