티스토리 뷰

RDF 변환기에는 세가지 종류의 변환을 제공한다.

1. Excel을 RDF로 변환

2. CSV형식을 RDF로 변환

3. RDB를 RDF로 변환


변환규칙을 작성할 때는 온톨로지 편집툴을 활용하여

사용하는 방법이 편리하며

변환온톨로지를 참고하면서 작업을 할 수 있다면

텍스트 편집툴을 활용해도 무방하다.


온톨로지 편집툴은 TopQuadrant 사의 TopBraid Composer를 권장한다.


편집툴을 사용하여 변환규칙 파일을 생성할 준비가 되었다면


다운받은 소스폴더의 ontology 폴더 안에 있는 TransRuleOntology.owl 파일을

임포트하는 변환규칙 파일을 생성한다.


임포트가 제대로 된 상태라면 클래스뷰 탭에 변환 온톨로지 클래스들이 생성될 것이다.


변환규칙 생성 순서

  1. tro:Work 의 인스턴스 생성
  2. tro:Collection 의 인스턴스 생성
  3. tro:Rule 의 인스턴스 생성


RDF 변환은 tro:Work 클래스에서부터 시작점을 찾을 수 있다.

tro:Work 클래스는 RDF로 변환하는 Project 개념으로서 하나의 Work에 복수개의 Collection(수집)이 가능하다.

tro:Work 클래스의 하위클래스로 tro:CSVTrans, tro:DBTrans, tro:ExcelTrans 클래스들이 존재한다.

변환을 하고자 하는 데이터에 따라 하나를 선택하여 그 클래스의 인스턴스를 생성한다.

(여기서는 엑셀파일을 변환하는 예로 설명한다. 단, tro:Work의 설정은 CSV, Excel, RDB를 변환하는 모든 경우에 동일함)


생성된 인스턴스를 소스를 살펴보면



:ExcelTrans_1

      rdf:type tro:ExcelTrans .




이 상태가 된다.

변환규칙은 TTL 형식으로 작성하였다.(RDF/XML, RDF/XML-ABBBREV, N3 모두 가능)


tro:Work 클래스(여기서는 tro:ExcelTrans 클래스) 에서 필수적으로 설정해야 하는 부분은

  1. tro:hasOriginalSource - 원본데이터에 대한 설정
  2. tro:serialize - 변환되어 생성될 RDF 파일에 대한 설정
  3. tro:setBaseURI - BseURI 설정
  4. tro:collect - 원본데이터로부터 데이터를 수집하기 위한 설정

이며 선택적인 설정은

  • tro:isEnabled - 변환규칙에 있는 Project 개념을 변환에 실행할지 여부

규칙을 생성하고 false로 설정함으로 변환하지 않도록 가능, default는 true임

  • tro:setURI - prefix 설정

이 있다.


tro:hasOriginalSource의 range는 tro:OriginalSource 클래스로서

tro:CSV, tro:DB, tro:Excel 3개의 하위 클래스가 존재한다.


tro:serialize 의 range는 tro:Result 클래스로서

tro:File 클래스의 하위 클래스이며, tro:File 클래스는 tro:Result 클래스 이외에

tro:CSV, tro:Excel, tro:Schema 클래스가 존재한다.


tro:setBaseURI 의 range는 tro:Prefix 클래스이다.


tro:collect 의 tro:Collection  클래스로서

데이터를 수집하기 위한 설정을 하는 클래스이다.


각각의 range 클래스에 인스턴스를 하나씩 생성하면 처음의 소스코드가



:ExcelTrans_1

      rdf:type tro:ExcelTrans ;

      tro:hasOriginalSource

              :Excel_1 ;

      tro:serialize :Result_1 ;

      tro:setBaseURI :Prefix_1 ;

      tro:collect :ExcelCollection_2 ;

      tro:isEnabled "true"^^xsd:boolean ;

      tro:setURI :joyp.




위와 같이 생성될 것이다.(인스턴스명은 임의로 생성하였음)


전체 인스턴스까지 살펴보면


:ExcelTrans_1

      rdf:type tro:ExcelTrans ;

      tro:hasOriginalSource

              :Excel_1 ;

      tro:serialize :Result_1 ;

      tro:setBaseURI :Prefix_1 ;

      tro:collect :ExcelCollection_2 ;

      tro:isEnabled "true"^^xsd:boolean ;

      tro:setURI :joyp .


:Excel_1

      rdf:type tro:Excel .


:Result_1

      rdf:type tro:Result  .


:Prefix_1

      rdf:type tro:Prefix .

      

:ExcelCollection_2

      rdf:type tro:ExcelCollection .


:joyp

      rdf:type tro:Prefix .



여기서 엑셀 원본 파일은
sample폴더의 test.xls 파일을 사용하며
결과는 result폴더안에 ttl 파일타입으로서 tro_test.ttl 파일로 생성할 것이라고 설정한다.
그리고 BaseURI는 http://joyhong.tistory.com/으로 설정하고 prefix 는 joy로 설정하겠다.
추가적인 URI는 http://joyhong.tistory.com/Person/ , joyp로 설정한다.

tro:Work 에 대한 모든 설정 결과는

:ExcelTrans_1

      rdf:type tro:ExcelTrans ;

      tro:hasOriginalSource

              :Excel_1 ;

      tro:serialize :Result_1 ;

      tro:setBaseURI :Prefix_1 ;

      tro:collect :ExcelCollection_2 ;

      tro:isEnabled "true"^^xsd:boolean ;

      tro:setURI :joyp.


:Excel_1

      rdf:type tro:Excel ;

      tro:filePath "./sample/test.xls"^^xsd:string .


:Result_1

      rdf:type tro:Result ;

      tro:filePath "./result/tro_test.ttl"^^xsd:string ;

      tro:resultType <http://joyhong.tistory.com/tro/resulttype/ttl> .


:Prefix_1

      rdf:type tro:Prefix ;

      tro:namespace "http://joyhong.tistory.com/"^^xsd:string ;

      tro:prefixName "joy"^^xsd:string .

      

:ExcelCollection_2

      rdf:type tro:ExcelCollection ;

      tro:refersTo :ExcelRule_5 , :ExcelRule_6 , :ExcelRule_9 , :ExcelRule_10 , :ExcelRule_11 ;

      tro:sheetNumber 1 ;

      tro:startRowNumber 1 .


:joyp

      rdf:type tro:Prefix ;

      tro:namespace "http://joyhong.tistory.com/Person/"^^xsd:string ;

      tro:prefixName "joyp"^^xsd:string .



위와 같이 설정한다.


  • tro:filePath - 파일의 경로를 Literal로 생성
  • tro:resultType - 변환 결과 파일의 형태, 변환 온톨로지에 7개의 종류가 지정되어 있음
                          n3, n3-pp, nt, rdfxml, rdfxml_abbrev, ttl, turtle
                          온톨로지 편집툴(TopBraid) 을 활용할시에는 선택하는 방식으로 생성할 수 있으나
                          텍스트 에디터 사용시에는 변환 온톨로지 모델을 참조하여 지정해야 함.
  • tro:namespace - prefix의 namespace를 Literal로 생성
  • tro:prefixName - prefix 명을 Literal로 생성

Excel 변환 규칙 파일 

test_excel.ttl

CSV 변환 규칙 파일

test_csv.ttl


DB 변환 규칙 파일

test_rdb.ttl



다음에는 tro:ExcelCollection 에 대한 설정 방법을 설명합니다.



최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함