Я использую Jena для чтения онтологии, и пока она работает очень хорошо. К сожалению, я не смог понять, как использовать компактные uris, которые я определил в модели. Я определил префиксы, используя метод модели setNSPrefix(String prefix, String uri)
. Когда я пытаюсь получить операторы с помощью префикса, я ничего не получаю. Кроме того, когда я успешно получаю оператор, он содержит полный uri вместо компактного, который я определил. Он даже сделает это для xsd uri http://www.w3.org/2001/XMLSchema#
Например, я использую uri http://www.example.com#
, я определил сопоставление префикса как ex
, а мой оператор — http://www.example.com#father http://www.example.com#parentOf http://www.example.com#child
, где отец — это субъект, parentOf — предикат, а дочерний объект — это объект. Если я попытаюсь получить его с помощью ex:father
, я не получу никаких результатов, а когда я верну оператор, для субъекта, предиката и объекта будет полный uri. Я видел, что он использует префикс вместо uri, когда я делаю model.write(OutputStream)
, но это не особенно полезно для меня. Могу ли я использовать префикс вместо uri, как я пытался сделать, или это не то, что мне предоставит Jena?