Seoul City's Linked Data

공공 데이터와 링크드 데이터의 만남

서울시는 열린 데이터 광장을 통해 다양한 데이터를 공개하고 있습니다. 누구나 공개된 데이터를 활용할 수 있습니다. 그러나 데이터를 활용하기 위해 가공하는 과정이 복잡하고, 개별적으로 정제한 데이터는 공유되기 어렵습니다. 문화시설 상세 정보 제공 데이터에서 서울시의 강남구에 있는 문화시설을 어떻게 찾을 수 있을까요?

본 과제는 공공 데이터를 정제하여 구조화하고, 관계를 정의하기 위해 Linked Data 기술을 적용합니다.

본 프로젝트에서 활용한 데이터는 서울시, 문화재청, 행안부에 공개된 자료이며, 행정구역과 위치를 기준으로 데이터를 연결했습니다. 서울시 또는 전국의 행정구역에 따라 해당되는 문화시설과 문화재를 탐색할 수 있습니다.

데이터셋 출처 수집방법 설명
문화시설 열린 데이터 광장 API 서울시에 있는 문화시설 약 600여종
문화재 문화재청 HTML 수집 대한민국의 국보, 보물, 유형/무형 문화재 약 13,000여종
행정구역 행안부 XLS 대한민국의 도, 시, 구, 군, 읍, 면, 동을 포함하는 모든 행정구역 (행정동 기준)

웹에 존재하는 다양한 정보자원을 노출 (expose), 공유 (share), 연결 (connect)하기 위한 기술입니다. 사전적 의미에서 “Linked”는 링크로 연결된 (connected by a link)이란 의미이며, 이런 측면에서 Linked Data는 “링크로 연결된 의미적 데이터”로 정의됩니다.

기술적 관점에서 Linked Data는 모든 정보를 URI라는 고유한 이름과 RDF라는 형식으로 정의하고 HTTP를 통해 접근하는 것을 구현하는 것입니다.

쉽게 표현하면 웹에 있는 모든 정보를 의미적으로 연결하는 것으로 현재 웹과 보완적 관계입니다. Linked Data에 대한 개념은 팀 버너스리 (Tim Berners-Lee)에 의해 정의되었지만, Dbpedia를 만든 독일의 크리스 비처(Chris Bizer)를 통해 상당한 진전이 있었습니다. 크리스는 웹에 구조적인 데이터가 많지 않던 2006년부터 관계형 데이터베이스에 있는 데이터를 RDF로 변환하는 방법에 대해 연구했습니다. Dbpedia는 위키피디아의 모든 데이터를 구조적인 형식으로 변환하여 서비스하고 있으며, 수많은 데이터와 연결관계를 만드는 핵심으로 성장하고 있습니다.

최근 구글의 Knowledge Graph나 페이스북의 Graph Search는 데이터 사이의 관계를 표현하고 이를 바탕으로 의미적인 검색을 지원하고 있는데, 이런 기술도 Linked Data의 응용영역으로 이해할 수 있습니다.

일반적으로 데이터를 관계형 데이터베이스로 저장하면 SQL (Structured Query Language)이라는 질의 언어를 통해 데이터를 검색합니다. Linked Data로 구축된 데이터는 SPARQL이라는 질의 언어를 사용합니다. 이 언어는 RDF로 표현된 데이터를 질의하기 위해 만들어진 것으로 SQL과 같은 역할을 합니다. SPARQL Endpoint는 원격으로 데이터에 접근할 수 있는 인터페이스로 Endpoint 주소만 알면 모든 데이터에 접근할 수 있습니다.

서울시 열린 데이터광장은 숨어있는 데이터셋을 공개하고 탐색할 수 있지만 데이터셋에 포함된 개별 데이터는 탐색할 수 없습니다. SPARQL Endpoint는 별도의 오픈 API를 설계하지 않고 개별 데이터를 탐색할 수 기능을 제공합니다. SPARQL에 대한 튜토리얼은 Cambridge Semantics의 자료를 참조하시기 바랍니다. \00

Linked Data로 구축된 데이터를 효과적으로 탐색하기 위해 패싯 네비게이션을 제공합니다. Linked Data로 구축된 데이터는 다양한 속성을 포함하게 됩니다. 데이터의 구조와 특징을 모르면 검색이 어렵습니다.

패싯 네비게이션은 사용자가 선택한 옵션에 따라 원하는 방향으로 정보를 탐색할 수 있습니다. 패싯 (Facet)은 사물의 측면 또는 단면을 의미합니다. 예를 들어, 문화 시설은 박물관, 미술관, 기념관 등 여러 형식으로 구분이 되고, 서울시의 각 자치구에 위치합니다. 이 때 문화시설의 형식과 위치를 하나의 패싯으로 구분할 수 있습니다. 패싯 네이게이션의 왼쪽에 있는 옵션을 선택하면 자치구에 따라 문화 시설의 현재 현황을 탐색할 수 있습니다.

일반적으로 Linked Data나 온톨로지하면 어렵다라는 생각을 많이 하는데, 패싯 네이게이션을 적용함으로써 구축된 데이터에서 원하는 정보를 효과적으로 탐색할 수 있습니다.

  • 시맨틱 웹 (Semantic Web): 기계가 정보의 의미를 이해하고 처리할 수 있는 거대한 정보의 공간. 의미적으로 연결된 데이터를 만드는 기술이며 동시에 비전으로 언급됨
  • 온톨로지 (Ontology): 세계를 구성하는 대상들의 본질과 유형에 관한 이론이며, 개념과 개념 사이의 관계를 표현하는데 사용됨
  • LOD (Linked Open Data): 시맨틱 웹을 실현하기 위한 응용 기술로 Linked Data 기술을 통해 공개된 거대한 데이터를 말함
  • HTTP (Hyper text Transfer Protocol): 웹을 통해 컴퓨터가 통신하기 위한 메시지 기반 언어 프로토콜
  • URI (Uniform Resource Identifier): 모든 웹 자원을 식별하기 위한 고유한 이름
  • RDF (Resource Description Framework): 웹 데이터를 의미적으로 기술하기 위한 언어
  • SPARQL (SPARQL Protocol and RDF Query Language): RDF 데이터를 질의하기 위한 언어. SQL 언어와 유사하지만 그래프 구조를 질의하기 위한 언어임