기은P
시간이 멈추는 장소
기은P
  • Programming (272)
    • 개발노트 (1)
    • FrontEnd (56)
      • ES&JS 문법 (14)
      • HTML&CSS (4)
      • React 기본 (18)
      • React 심화 (12)
      • React 이슈 (2)
      • Project 연습 (1)
      • Next.js (5)
    • Backend&Devops (33)
      • AWS (2)
      • Docker (9)
      • Jenkins (6)
      • Nginx (6)
      • Node.js (1)
      • ElasticSearch (5)
      • 프레임워크&아키텍처 (2)
      • 암호화 (0)
      • 기타 (2)
    • 알고리즘 (3)
    • C# (8)
      • WPF (8)
    • Java (51)
      • 순수 Java (18)
      • RDF&Jena (12)
      • RCP&GEF (9)
      • JMX (5)
      • JMapper (3)
      • 오류해결 (4)
    • Database (21)
      • RDBMS (9)
      • NoSQL (2)
      • TSDB (1)
      • GraphQL (1)
      • Hibernate (3)
      • 데이터베이스 이론 (4)
      • Redis (1)
    • 프로토콜 (11)
      • Netty (4)
      • gRPC (5)
      • 프로토콜 개념 (2)
    • Server (4)
      • Linux (4)
    • 2020 정보처리기사 필기 (43)
      • 목차 (1)
      • 기출문제 (1)
      • 1과목 - 소프트웨어 설계 (6)
      • 2과목 - 소프트웨어 개발 (7)
      • 3과목 - 데이터베이스 구축 (8)
      • 4과목 - 프로그래밍 언어 활용 (7)
      • 5과목 - 정보시스템 구축 관리 (10)
    • 2020 정보처리기사 실기 (31)
      • 목차 (4)
      • 기출예상문제 (19)
      • 실기요약 (8)
    • 빅데이터분석기사 필기 (4)
      • 목차 (0)
      • 필기 요약 (3)
    • 전기 공학 (1)
      • CIM (1)
    • 산업자동화시스템 (3)
      • SCADA (1)
      • OPC UA (2)
    • 디자인패턴 (1)
    • 휴지통 (0)

공지사항

  • 공지사항/포스팅 예정 항목

최근 댓글

최근 글

전체 방문자
오늘
어제

티스토리

hELLO · Designed By 정상우.
기은P

시간이 멈추는 장소

RDF - Eclipse Apache Jena Xml 파일 읽어오기
Java/RDF&Jena

RDF - Eclipse Apache Jena Xml 파일 읽어오기

2020. 3. 10. 14:58
반응형

 

Apache Jena를 사용하여 RDF형식으로 작성된 XML파일을 읽는 코드다

Jena Model Reading 기능이다.

 

public static final String xmlPath로 파일 경로를 지정해준다.

"file:"이 들어가야 하는 점 유의할 것.


Model model = ModelFactory.createDefaultModel(); 

기본 모델 객체를 선언하고,

model.read()를 통해 xml 파일을 읽는다.

 

package org.rcp_dbview.util;

import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.rdf.model.Property;
import com.hp.hpl.jena.rdf.model.RDFNode;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.rdf.model.Statement;
import com.hp.hpl.jena.rdf.model.StmtIterator;

public class JenaConfig {
	// RDF/XML문서의 파일 경로
	public static final String xmlPath = "C:\\workplace\\Source\\RCP_DBView\\temp\\130604_NL_EQ111.xml";
	
	public void Init() {
		Model model = ModelFactory.createDefaultModel();			
		FileInputStream file = new FileInputStream(new File(JenaConfig.xmlPath));
		String base2 = "http://iec.ch/TC57/2013/CIM-schema-cim16";
		model.read(file, base2); // 파일 객체로 경로를 읽는다.
        // base2는 RDF파일의 가장 상위에 있는 링크를 작성한다.
        // reading되는 근간이 되는 링크를 base로 삼는 것임.

		// Iterator를 통해서 주어/행동/목적어 별로 출력
		StmtIterator iter = model.listStatements();
		while (iter.hasNext()) {
			Statement stmt = iter.nextStatement(); // get next statement
			Resource subject = stmt.getSubject(); // get the subject
			Property predicate = stmt.getPredicate(); // get the predicate
			RDFNode object = stmt.getObject(); // get the object

			System.out.print(subject.toString());
			System.out.print(" " + predicate.toString() + " ");
			if (object instanceof Resource) {
				System.out.print(object.toString());
			} else {
				// object is a literal
				System.out.print(" \"" + object.toString() + "\"");
			}

			System.out.println(" .");
		}
		
	}
}

 

이전 글에 사용법에 대해 작성하였는데,

Reading 기능이 빠져있는 것 같아 추가했다.

반응형
저작자표시 변경금지 (새창열림)

'Java > RDF&Jena' 카테고리의 다른 글

Jena SPARQL 사용 방법 및 소스 코드  (0) 2020.03.20
Jena SDB 사용 예제  (0) 2020.03.20
RDF - Jena 예제 및 주로 사용하는 함수 정리  (0) 2020.03.12
RDF - Eclipse Apache Jena 다운로드 및 사용법  (0) 2020.03.04
RDF(Resource Description Framework)란  (0) 2020.03.04
    'Java/RDF&Jena' 카테고리의 다른 글
    • Jena SDB 사용 예제
    • RDF - Jena 예제 및 주로 사용하는 함수 정리
    • RDF - Eclipse Apache Jena 다운로드 및 사용법
    • RDF(Resource Description Framework)란
    기은P
    기은P
    기은P의 블로그 일상과 개발 관련 포스팅 #React #Typescript #Next #Nest https://github.com/kimdongjang

    티스토리툴바