XML을 RDF로 변환하는 표준 XSLT 변환기
초록
본 논문은 XML 문서를 RDF 트리플 형태로 자동 변환하기 위한 일반화된 XSLT 스타일시트를 제안한다. AstroGrid‑D 프로젝트의 원격 망원경 마크업 언어(RTML)를 사례로 삼아, 요소·속성·네임스페이스를 RDF 주어·술어·목적으로 매핑하는 규칙을 정의하고 구현한다. 변환은 일방향이지만 설계상 역변환도 가능하도록 설계되었다.
상세 분석
이 연구는 XML과 RDF 사이의 구조적 차이를 메타데이터 수준에서 해소하고자 한다. XML은 계층적 트리 구조를 갖는 반면 RDF는 주어‑술어‑목적어(Triple) 기반의 그래프 모델이다. 저자는 XSLT 1.0을 활용해 XML 노드(요소, 속성, 텍스트)를 RDF 시퀀스로 일관되게 변환하는 매핑 프레임워크를 설계했다. 핵심 아이디어는 각 XML 요소를 고유 URI(또는 블랭크 노드)로 변환하고, 해당 요소의 속성을 RDF 술어‑목적어 쌍으로 매핑하는 것이다. 네임스페이스 선언은 RDF의 프리픽스 선언으로 전환되어, 원본 XML의 의미적 구분을 유지한다.
특히, 저자는 “element‑as‑subject”와 “attribute‑as‑predicate” 패턴을 기본 규칙으로 채택했으며, 복합 구조(예: 중첩 요소)에서는 재귀적 XSLT 템플릿을 이용해 깊이 무관하게 트리플을 생성한다. 텍스트 노드는 해당 요소의 “value” 술어에 연결되며, 빈 요소는 존재 자체를 트리플로 표현한다. 또한, RTML 스키마에 특화된 매핑 테이블을 외부 XML 파일로 분리함으로써, 다른 도메인에 대한 재사용성을 높였다.
역변환 가능성을 염두에 두고 설계된 점도 주목할 만하다. 현재 구현은 일방향이지만, XSLT 템플릿에 역매핑 규칙을 추가하면 RDF 그래프를 다시 XML 구조로 복원할 수 있다. 다만, RDF의 다중값 속성이나 순서 정보가 XML에 비해 손실될 위험이 있으며, 이를 보완하기 위한 어노테이션(예: rdf:Seq) 사용이 제안된다.
성능 측면에서는 대용량 RTML 파일(수천 개 요소)에서도 변환 시간이 수초 수준에 머물러, 실시간 서비스에 적용 가능함을 실험적으로 입증했다. 그러나 XSLT 1.0의 제한으로 복잡한 조건부 로직이나 대규모 네임스페이스 관리에 한계가 있어, 차후 XSLT 2.0/3.0 혹은 스트리밍 변환기로의 확장이 필요하다.
전반적으로 이 논문은 XML‑RDF 변환을 표준화된 XSLT 템플릿으로 구현함으로써, 시맨틱 웹 서비스와 기존 레거시 시스템 간의 데이터 연동 장벽을 낮추는 실용적 접근을 제시한다.
댓글 및 학술 토론
Loading comments...
의견 남기기