преобразовать мой rdf-файл в именованный граф - PullRequest
0 голосов
/ 28 августа 2018

Для проекта я должен использовать Apache Jena в качестве API и Blazegraph в качестве тройного хранилища. Я пытаюсь запрограммировать код, который позволяет мне преобразовывать мой набор данных (файл N-Triples) в файл, содержащий NamedGraph каждое утверждение.

String APIUrl = "http://localhost:9999/bigdata/namespace/drugbank/sparql";
String req = "select * WHERE {?x ?y ?z}";

RDFConnection conn = RDFConnectionFactory.connect(APIUrl);
FileManager.get().addLocatorClassLoader(Main.class.getClassLoader());
Model model = FileManager.get().loadModel("drugbank.nt",null,"NTRIPLES");
conn.load(model);

Query query = QueryFactory.create(req);
QueryExecution qexec = QueryExecutionFactory.create(query,model);
    try {
        ResultSet rs = qexec.execSelect();

        Model m1 = RDFOutput.encodeAsModel(rs);
        StmtIterator iter = m1.listStatements();

        int i=0;
        final Model mStat = ModelFactory.createDefaultModel();
        while (iter.hasNext()) {
            i++;
            Statement stmt      = iter.nextStatement() ;
            // code for named Graph
        }
   }catch(Exception){

    }

1 Ответ

0 голосов
/ 29 августа 2018

Вы можете загрузить модель напрямую в удаленный граф с именем:

conn.load(model); загружает график по умолчанию.

conn.load(graphName, model); загружает именованный граф.

...