Запрос Jena ARQ к локальному хранилищу данных N3 не дает результатов. Командная строка ARQ работает

У меня проблема с Jena ARQ, с которой, возможно, вы могли бы мне помочь. У меня есть локальный файл N3, и я хочу выбрать его, используя ARQ из Java. проблема в том, что я получаю 0 результатов.

Это код, который я использую:

FileManager.get().addLocatorClassLoader(SomeClass.class.getClassLoader());
Model model = FileManager.get().loadModel("props/temp.n3");
QueryExecution qexec = QueryExecutionFactory.create(query, model);
queryResultSet = qexec.execSelect();

...

У меня включено полное ведение журнала (не показано выше), но оно не сообщает об ошибках.

Самое смешное, что если я попробую версию arq для командной строки, я получу результаты. Так что это не проблема с запросом. Я пытался создавать FileManagers, Datasets и LocationMappings, но безрезультатно. Я даже отлаживал утилиту командной строки arq, чтобы увидеть, где все параметры объединяются для создания объекта выполнения запроса, но я не продвинулся далеко. У меня нет идей. Любые подсказки? Я знаю, что это должно быть что-то в создании объекта выполнения запроса. Я использую последнюю версию ARQ (2.9.3).

model.size()  

сообщает 173.

Запрос:

SELECT *

WHERE {
    ?Node ?property ?object .  

}  

person user1754019    schedule 17.10.2012    source источник


Ответы (1)


Было бы полезно получить две части информации: запишите результат model.size() и покажите нам свой запрос. В принципе, ваш код выглядит нормально, так что либо данные в вашей модели не соответствуют вашим ожиданиям, либо есть проблема с запросом, несмотря на то, что он запускается из командной строки.

person Ian Dickinson    schedule 17.10.2012