티스토리 뷰

tro:Rule 클래스는 tro:Component 클래스의 하위 클래스로서 변환 규칙을 설정하는 역할을 한다.

이때 변환 규칙은 트리플 단위로 설정을 한다.

tro:Rule 클래스는 변환대상에 따라 tro:CSVRule, tro:DBRule, tro:ExcelRule 클래스의 인스턴스를 생성하여 작성하면 된다.


tro:Rule 의 설정에서 필수적으로 생성해야 하는 프로퍼티는

  • tro:conformWith -  모든 변환 규칙은 미리 정의된 CompositionType에 따라 변환됨으로 이 중 하나를 선택한다.
  • tro:hasSubject - 변환규칙에서 Subject로 연결되는 부분
  • tro:hasPredicate - 변환규칙에서 Predicate로 연결되는 부분
  • tro:hasObject - 변환규칙에서 Object로 연결되는 부분

tro:ConformWith는 7개의 변환 조합 형태를 가지고 있는데 이 중 하나를 선택하도록 되어 있다.

tro:hasSubject, tro:hasPredicate, tro:hasObject는 변환 대상에 따라 range를

tro:Cell(Excel 변환), tro:Attribute(DB 변환), tro:Value(CSV 변환), tro:InputString(그외 사용자 입력시 변환)의 인스턴스로 생성해야 한다.



tro:Cell은 변환 규칙에서  Excel 변환시에 사용되는 Cell로서

tro:Cell의 인스턴스는 TransRuleOntology에 이미 26개가 정의되어 있다.

Excel의 셀 번호 A부터 Z까지 이며 이후 AA부터는 사용자가 정의해서 추가할 수 있다.

<http://joyhong.tistory.com/tro/cell/A> 

rdf:type tro:Cell ;

tro:resourceName "A"^^xsd:string .


tro:Attribute은 변환 규칙에서 DB 변환시에 사용되는 Attribute 값으로 

tro:Attribute는 DB의 query에서 SELECT 절에서 추출하고자 하는 attribute를 사용자가 입력해야 한다.

select name, age from Person 쿼리에서는 대상이 name과 age가 될수 있다.

<http://joyhong.tistory.com/tro/attribute/Attribute_1>

rdf:type tro:Attribute ;

tro:resourceName "name"^^xsd:string .


tro:Value는 변환 규칙에서 CSV 변환시에 사용되는 value 값으로

tro:Value의 인스턴스는 TransRuleOntology에 이미 20개가 정의되어 있다.

CSV에서 첫번째부터 20번째까지의 value값이며 이후의 값은 사용자가 정의해서 추가할 수 있다.

<http://joyhong.tistory.com/tro/value/Value_01> 

rdf:type tro:Value ;

tro:resourceName "1"^^xsd:string .


tro:InputString은 변환 규칙에서 모든 경우에 사용할 수 있는 사용자 정의 String 값으로

사용자가 원하는 String값을 이용하고 싶을 경우 정의해서 추가할 수 있다.

:InputString_1

rdf:type tro:InputString ;

tro:resourceName "http://joyhong.tistory.com/testProperty"^^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 .


:ExcelRule_5

      rdf:type tro:ExcelRule ;

      tro:classNameOfSubject

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

      tro:conformWith <http://joyhong.tistory.com/tro/comptype/singleS_dp_singleO> ;

      tro:hasSubject <http://joyhong.tistory.com/tro/cell/A> ;

      tro:hasPredicate <http://joyhong.tistory.com/tro/property/dc_title> ;

      tro:hasObject <http://joyhong.tistory.com/tro/cell/B> ;

      tro:langTypeOfObject

              <http://joyhong.tistory.com/tro/languagetype/en> ;

      tro:suffixOfObject "_"^^xsd:string .


:ExcelRule_6

      rdf:type tro:ExcelRule ;

      tro:conformWith <http://joyhong.tistory.com/tro/comptype/singleS_dp_singleO> ;

      tro:hasSubject <http://joyhong.tistory.com/tro/cell/D> ;

      tro:hasPredicate :Property_1 ;

      tro:hasObject <http://joyhong.tistory.com/tro/cell/A> ;

      tro:if_not_null <http://joyhong.tistory.com/tro/cell/C> ;

      tro:langTypeOfObject

              <http://joyhong.tistory.com/tro/languagetype/ko> .


:ExcelRule_9

      rdf:type tro:ExcelRule ;

      rdfs:label "Excel rule 9"^^xsd:string ;

      tro:conformWith <http://joyhong.tistory.com/tro/comptype/singleS_op_singleO> ;

      tro:externalUtility_object

              tro:getEngNameOfProvincialArea ;

      tro:hasSubject <http://joyhong.tistory.com/tro/cell/A> ;

      tro:hasPredicate :InputString_7 ;

      tro:hasObject <http://joyhong.tistory.com/tro/cell/F> .


:ExcelRule_10

      rdf:type tro:ExcelRule ;

      rdfs:label "Excel rule 10"^^xsd:string ;

      tro:conformWith <http://joyhong.tistory.com/tro/comptype/singleS_dp_singleO> ;

      tro:hasSubject <http://joyhong.tistory.com/tro/cell/A> ;

      tro:hasPredicate <http://joyhong.tistory.com/tro/property/dc_title> ;

      tro:hasObject <http://joyhong.tistory.com/tro/cell/G> ;

      tro:if_object :Case_3 , :Case_1, :Case_2 .


:ExcelRule_11

      rdf:type tro:ExcelRule ;

      rdfs:label "Excel rule 11"^^xsd:string ;

      tro:conformWith <http://joyhong.tistory.com/tro/comptype/singleS_dp_singleO> ;

      tro:hasSubject <http://joyhong.tistory.com/tro/cell/A> ;

      tro:hasPredicate <http://joyhong.tistory.com/tro/cell/G> ;

      tro:hasObject <http://joyhong.tistory.com/tro/cell/C> ;

      tro:if_predicate :Case_4 .




Excel 변환 규칙 샘플 파일

test_excel.ttl


DB 변환 규칙 샘플 파일

test_db.ttl


CSV 변환 규칙 샘플 파일

test_csv.ttl


최근에 올라온 글
최근에 달린 댓글
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
글 보관함