본문 바로가기
C++ 200제/코딩 IT 정보

구글어스 KML 파일이란, GoogleMaps의 데이터베이스

by vicddory 2017. 4. 2.


구글어스를 다뤄본 분들은 다들 아실만한 파일인 KML에 대한 글입니다. 2009년도에 논문 작성을 위해 정리한 글이라 지금과 다른 사항이 있을 수 있습니다.


구글어스 KML 파일을 다루기 위한 상세한 동영상도 제공되니 참고해 보세요.


Intro


XML(eXtensible Markup Language)은 HTML(Hyper Text Markup Language)을 개선하여 생성된 언어로 웹 페이지의 구축과 기능을 향상시키며 시스템의 복잡한 연산 과정을 쉽게 처리하도록 돕는 언어로써, 사용 시기와 용도에 따라 구조적인 문법을 매번 재정의하여 사용할 수 있다는 특징이 있습니다.


이러한 XML에서 파생되어 XML의 문법 규칙을 따르는 구글지도 KML은, 구글맵 및 기타 응용 프로그램에서 쓰이는 XML 기반의 마크업 언어의 스키마이며, 지형 정보(Annotation)를 모델링하고 표현하는 역할을 합니다.


이 때문에, 국내 이동통신사(SKT, LGT, KT)에 따라서 제공되는 마크업 언어의 차이(STK는 SK-WML과 WML2.0, LGT는 UP-WML과 XHTML, KT는 MTHML)와 단말기 제조사의 모바일 기종에 따라 다르게 제공되는 마크업 언어들로 인한 호환성 문제점을 극복할 수 있는 성질을 지니고 있습니다.



KML 인코딩을 지원하는 구글 이외 회사들의 WWW(World Wide Web) 기반의 2차원 지도나 3차원 지구를 표현하는 지도 브라우저에도 쓰이며, 구글어스 KML 자체는 구글 어스에 쓰일 목적으로 처음 개발되었습니다. KML의 Keyhole은 미국 최초의 광전자 공학 정찰 위성인 KH-11(KeyHole-11) 정찰 위성을 기리기 위해 붙여진 이름이기도 합니다.

아래는 KML이 갖는 기능성을 나타냅니다.


KML 파일의 기능과 특성 (KML 문서 소개 [클릭])


. 아이콘과 라벨로 지구상의 위치를 표시

. 시점, 기능, 지형, 사물 등에 따른 각각의 카메라 설정(Viewer 정의)

. 지표면이나 화면에 그림이나 영상을 띄움

. 기능, 특징별로 해당 위치의 표현 방법을 각각 설정

. 링크, 그림, 영상 등의 설명문을 해당 위치에 HTML을 이용해 작성

. 폴더를 사용하여 기능별 계층을 그룹화

. 인터넷을 이용해 KML 파일을 동적으로 업데이트

. KML 기반의 3D 뷰어 변화 업데이트

. 3D 지원을 위한 콜라다(Collada) 뷰어 사용



Feature

KML은 위치 마크(Placemark), 이미지, 다각형 등이 생성된 지도상의 실제 경도와 위도를 보유하며, 기울기, 헤딩, 고도, 뷰 등의 상세한 정의 데이터들을 포함하여 사용자에게 시각화된 정보를 제공하는 역할을 담당합니다.


그러나 구글의 지도 서비스 모두의 상호 호환성이 완벽하지 않아 구글맵이나 구글맵을 사용하는 모바일 애플리케이션에서는 구글지도 KML 파일 정보의 모두를 확인하지 못하는 경우도 있습니다.

KML의 측지학적(Geodesy) 레퍼런스 시스템은 3차원 지리 좌표계인데, 이 좌표계는 경도, 위도, 고도 성분으로 이루어집니다. 경도, 위도 성분은 1984 World Geodetic System(WGS84)를 근거로 정해지며, 고도(수직 성분)는 WGS84와 EGM96(Earth Gravitational Model 1996)으로 정해집니다.


예를 들어 (-122.91, 49.26)과 같이 좌표 문자열에 고도가 생략되면 고도는 기본값으로 0을 갖게 되며, 이는 해수면 높이와 일치함을 의미합니다.


즉, 앞선 문자열은 (-122.91, 49.26, 0)이란 좌표 문자열이 됩니다. KML이 사용하는 좌표 레퍼런스 시스템에 대한 정의는 OGC KML 2.2 스펙에 포함이 되어 있습니다. 이런 관점에서, KML은 GML(Geography Markup Language), WFS(Web Feature Service), WMS(Web Map Service) 등의 특성을 모두 보유했다고 볼 수 있기도 합니다.



Web 2.0이란 개념이 제시된 이후 전 세계에서 기존의 산업 정보와 서비스의 재정의가 이루어졌으며, 현재도 Web 2.0에서 파생된 새로운 개념이 등장한 뒤 탄생한 용어가 기존의 용어를 대체하는 일이 빈번히 발생하고 있습니다.


특히, 지리 공간 웹(Geospatial Web)은 IT 시스템의 핵심에 놓여있다고 할 수 있으며, Nat Torkington은 위치기반 서비스(Location based service)에 기반을 둔 웹을 “where 2.0"이라는 용어로 처음 개념화하면서 전통적인 응용 프로그램 플랫폼을 발전시킨 요소 중 하나로 구글의 KML 파일을 선정하였습니다.


실제로 IT 시스템들은 점차 위치 특화된(location-specific) 기능들을 부여하고 있으며, 머지않은 미래에 지리 공간 정보가 IT 시스템의 거의 모든 측면에 깊게 통합될 것이라 예상이 되고 있습니다.


구글어스 KML은 구글맵, 모바일 구글맵(Google Maps for Mobile) 등을 브라우저를 통해 지리정보를 표시하는데 사용하는 파일 포맷으로써, 웹 브라우저가 HTML을 처리하는 방식과 유사하게 처리됩니다. KML은 화면 표시 목적에 맞는 이름과 속성이 있는 태그 기반의 구조를 가지고 있기 때문에 구글어스나 구글맵은 KML에 대한 브라우저의 역할을 합니다.

KML의 주요 기능엔 지구상의 한 위치를 표시하기 위한 아이콘과 레이블 제공, 특정 위치에 대한 카메라 설정, 지표면이나 화면에 오버레이를 띄우는 등의 기능이 있으며 인터넷을 통한 동적인 KML 로딩도 가능합니다.



구글어스가 자바 스크립트(JavaS-ript)와 iFrames를 사용하여 KML을 생성할 때 KMZ도 함께 생성해 배포합니다. KML은 플리커(Flicker), 구글맵, 구글 모바일, 위키매피아(WikiMapia), 플라샬 등에서도 함께 사용할 수 있습니다. KMZ KML은 상호 변환도 가능합니다.


아래 표는 구글어스 KML의 출시 과정을 나타내며, 2008년 4월을 기점으로 더 이상 KML 파일의 업데이트가 이루어지지 않는다는 것을 확인할 수 있습니다.


이는, 전 세계 345개의 기업, 정부 기관, 학술 단체 등으로 구성된 국제 표준화 단체인 개방 지리 공간 컨소시엄(OGC : Open Geospatial Consortium)이 구글의 KML을 국제 표준으로 지정하면서, 구글이 소유권을 더 이상 행사하지 않았기 때문입니다.


2001 / 07

 Keyhole Viewer 1.0

 2004 / 08

 Keyhole 2.2

 2004 / 10

 Google acquires Keyhole

 2005 / 05

 Google Earth 3.0(KML 2.0)

 2007 / 05

 Google Earth 4.1(KML 2.1)

 2008 / 04

 Google Earth 4.3(KML 2.2)

 2009 / 02

 Google Earth 5.0(KML 2.2 + ext)

 2010 / 02

 Google Earth 6.0(KML 2.2)



구글이 제공하는 지도 서비스 모두는 API가 공개되었고, 미국에선, 이를 응용한 매시업이 많이 등장했으며, 특히 KML을 활용한 주유소 가격, 허리케인, 쇼핑, 교통 정보에 대한 제공 등이 주목할 만한 분야로 각광을 받고 있습니다. 최근 iOS와 안드로이드용 구글어스 애플리케이션이 출시되어 두 OS가 탑재된 기기에서도 구글지도를 사용하는 것이 가능해졌습니다.


구글 이메일 계정(gmail.com)“내 지도” 메뉴에서 KML을 업로드 한 뒤, 애플리케이션에서도 “내 지도” 메뉴를 선택하여 현재 업로드된 KML 중 하나를 선택하면, 해당 내역을 애플리케이션이 설치된 기기에서 확인할 수 있습니다.

다만, 웹 브라우저에서 구글어스 KML 파일을 사용하기 위한 플러그인은 현재 윈도우와 MAC OS만 지원하기 때문에 현장에서의 관망 정보 입력을 위한 과정은 아이패드의 웹 브라우저에서 실행이 불가능합니다.


향후 지원이 가능해지면, 다양한 모바일 기기에서의 시공 정보 입력이 가능해지고 또 다른 구글어스 기반의 애플리케이션도 각광을 받을 것이라 예상이 됩니다.



참고자료

- Y.H. Hwang, J.H. Kim and E.K. Seo, "Structure-Aware Web Transcoding for Mobile Devices", IEEE Computer Society, pp. 14-21, 2003.


- Z. Zhang, J.E. Sout, V.L. Yu and R. Vidic, "Effect of pipe corrosion scales on chlorine dioxide consumption in drinking water distribution systems", Water Research, pp. 129-136, 2008.


- J. Yang, Y. Wen and P. Li, "Leak location using blind system identification in water distriibution pipelines", Journal of Sound and Vibration, pp. 134-148, 2008.


- S.A. Imran, J.D. Dietz, G. Mutoti, W. Xiao, J.S. Taylor and V. Desai, "Optimizing Source Water Blends for Corrosion and Residual Control in Distribution Systems", AWWA, pp. 107-115, 2006.


- L. Crocco, G. Prisco, F. Soldovieri and J. Cassidy, "Early-stage leaking pipes GPR monitoring via microwave tomographic inversion, Journal of Applied Geophysics", 2008.


- A.Z. Matthew, G.M. Mark, "Google and the privatization of cyberspace and DigiPlace", Geoforum, vol. 38, pp. 1322-1343, 2007.


- C. Gramling, "with Virtual Globes, earth scientists see a new world", Geotimes, vol. 52, no. 2, pp. 38-39, 2001.


- Wikipedia, http://wikipedia.org.


- KML, http://www.opengeospatial.org/standards/kml/



댓글