Как сохранить файл в формате rdf в Protege 4.3?

Я сделал онтологию на Protege. она имеет . сова расширение. Я пытаюсь импортировать эту онтологию в oracle 12c с помощью jena. но модель. Для метода чтения требуется файл rdf. Я даю код и ошибку. Пожалуйста, помогите мне в этом случае.

ошибка

Exception in thread "main" com.hp.hpl.jena.shared.JenaException: java.lang.UnsatisfiedLinkError: no ocijdbc11 in java.library.path
    at oracle.spatial.rdf.client.jena.Oracle.<init>(Oracle.java:207)
    at test.TestClass.main(TestClass.java:26)

код пакетный тест;

import java.io.InputStream;
import com.hp.hpl.jena.rdf.model.*;
import oracle.spatial.rdf.client.jena.GraphOracleSem;
import oracle.spatial.rdf.client.jena.ModelOracleSem;
import oracle.spatial.rdf.client.jena.Oracle;
import oracle.spatial.rdf.client.jena.OracleUtils;
import com.hp.hpl.jena.graph.GraphUtil;
import com.hp.hpl.jena.graph.Triple;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.util.FileManager;

public class TestJena{
    public static void main(String[] args) throws Exception
    {
        //String szJdbcURL = args[0];
        //String szUser = args[1];
        //String szPasswd = args[2];
        //String szModelName = args[3];
        // in memory Jena Model
        Model model = ModelFactory.createDefaultModel();
        InputStream is = FileManager.get().open("E:/abcd.owl");
        model.read(is, "", "RDF/XML");
        is.close();

        Oracle oracle = new Oracle("jdbc:oracle:oci8:@", "c##hr_admin","Hira123");

        ModelOracleSem modelDest = ModelOracleSem.createOracleSemModel(oracle,"M1");
        GraphOracleSem g = modelDest.getGraph();
        g.dropApplicationTableIndex();
        int method = 2; // try bulk loader
        String tbs = "SYSAUX"; // can be customized
        if (method == 0) {
            System.out.println("start incremental");
            modelDest.add(model);
            System.out.println("end size " + modelDest.size());
        }
        else if (method == 1) {
            System.out.println("start batch load");
            g.getBulkUpdateHandler().addInBatch(
            GraphUtil.findAll(model.getGraph()), tbs);
            System.out.println("end size " + modelDest.size());
        }
        else {
            System.out.println("start bulk load");
            g.getBulkUpdateHandler().addInBulk(
            GraphUtil.findAll(model.getGraph()), tbs);
            System.out.println("end size " + modelDest.size());
        }
        g.rebuildApplicationTableIndex();
        long lCount = g.getCount(Triple.ANY);
        System.out.println("Asserted triples count: " + lCount);
        model.close();
        OracleUtils.dropSemanticModel(oracle, "M1");
        oracle.dispose();
    }
}

person user3427445    schedule 17.03.2014    source источник


Ответы (1)


Вы можете переименовать файл в RDF: при условии, что формат, который вы использовали для онтологии, - это RDF / XML (по умолчанию), все, что нужно, - это изменить расширение файла.

Что касается публикуемой вами ошибки, вам не хватает двоичной библиотеки. Вам необходимо установить java.library.path так, чтобы он указывал на папку, содержащую библиотеку, упомянутую в ошибке. См., Например, как установить путь к библиотеке Java для обработки для как это сделать.

person Ignazio    schedule 17.03.2014