Я использую Jena API для чтения TTL-файлов и получения информации из них с помощью запросов Sparql. Это запрос, который я использую:
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX test: <http://www.test.com/Test#>
select ?property (str(?value) as ?valueLiteral) (str(count(distinct ?
ind)) as ?noOfValueOccurrences)
where { ?ind rdf:type test:Lecturer. ?ind ?property ?
value.
?property a owl:DatatypeProperty .}
group by ?property ?value
order by ?property
Моя цель - выполнить запросы Sparql для разных файлов TTL, каждый из которых будет иметь разные URI или IRI. Поскольку я пытаюсь автоматизировать запросы в Java, мне нужно иметь возможность получить <http://www.test.com/Test#>
или IRI (из того, что я понял), когда я прочитал .TTL file.
Вот как я пытаюсь получить:
public class Main {
BasicConfigurator.configure();
FileManager.get().addLocatorClassLoader(Main.class.getClassLoader());
Model model = FileManager.get().loadModel(pathToFile, "TTL");
System.out.println(model.getNsPrefixURI(""));
...
}
, который возвращает
null
Я новичок в онтологиях, я ценю, что вы могли бы помочь понять это. Пожалуйста, дайте мне знать, если предоставленной мной информации недостаточно.
Заранее спасибо