Jena API

     

온톨로지를 만들고 온톨로지를 활용하여 프로그래밍 하기 위해 여러 API가 있다는 것을 알았다. 일단 OWL API가 있고 protege에서 만든 protege-api가 있고 jena API가 있다. 3가지 모두 자바를 활용하여 온톨로지를 사용할 수 있게 하는 api인데 어떤것을 가지고 사용해야될지 고민을 했었다.


구글링 결과 OWL API와 protege-api의 경우 RDF언어보다는 OWL언어를 사용하기때문에 추론이나 그래프적인 묘사부분이 힘들다는 의견이 나왔다. 반면 jena API의 경우 RDF언어를 기반으로 온톨로지를 사용하기 때문에 사용이 더 편하다고 한다. 그래서 이번에 온톨로지를 사용한 프로그램을 제작하기위해 jena api를 사용해보기로 했다. 


jena api의 설치는 이클립스에서 build path를 추가하는 것으로 가능한데 자세한 설명은 파일로 첨부한다.




Jena_Install_Guide.pdf





위 그림대로 따라하게되면 뭔가 나온대로 실행이 되긴 되는데 실질적으로 내가 만든 온톨로지를 사용하는 부분에대한 설명은 잘 나와있지 않다. 인터넷 검색을 통해 여러가지 명령어를 알아본 결과 


1
2
3
4
5
6
7
8
9
public class Main {
    public static void main(String[] args){
        Model m = ModelFactory.createDefaultModel();
        m.read("file:C:/Users/Cho/Documents/owl/1.owl");
    
        m.write(System.out"RDF/XML");
    }
 
}


위와같은 코드를 입력하면 내가 만든 온톨로지 파일을 출력할 수 있다.

m.write()메소드의 경우 첫번째 인자값이 출력되는 장소라고 할 수 있고, 두번째가 출력되는 형태라고 말할 수 있다. 위에 m.write()함수는 Sysrem.out을 사용해 온톨로지를 "RDF/XML"포맷으로 출력하라는 뜻이다. 보여지게 되는 온톨로지는 내 컴퓨터에있는 1.owl문서이다. 이 문서는 protege 4.3 버전으로 만든 온톨로지인데  코드를 실행하게되면 온톨로지가 consol창에 뜨게 된다.


이제 내가 만든 온톨로지를 불러오는 것 까지 가능하다. 이제 이것을 사용해서 속성등을 추가하거나 추론기능등을 추론하면 온톨로지를 데이터베이스로 사용하는 무엇인가를 만들 수 있을 것 같다.

반응형

'Study > OWL,RDF' 카테고리의 다른 글

Jena RDF api 활용하기 (3)  (0) 2014.02.05
Jena RDF api 활용하기 (2)  (1) 2014.02.05
Jena RDF api 활용하기  (0) 2014.02.04
Ontology(온톨로지)란? (2)  (3) 2014.02.03
Ontology(온톨로지)란? (1)  (0) 2014.02.03

댓글

Designed by JB FACTORY