1. 개요
공간 데이터셋으로부터 특정한 분석을 수행하기 위해 가장 먼저 해야하는 것은 어떠한 대상을 선택하기 위한 작업일 것이다. 선택 방법에는 기하학적, 공간적으로 선택하는 방법 및 속성자료를 기반으로 선택하는 방법이 있다.
2. 대화식 공간적 선택
대화식 공간적 선택이란 사용자가 화면상에서 직접 지정하거나 공간객체를 그려서 선택 범위를 정의하면, 지정된 레이어로부터 객체가 선택되는 방식이다. 대화식으로 지정한 객체를 선택객체라고 하며 선택객체는 점, 선, 면이 될 수 있다. 지리정보시스템은 지정된 레이어에서 입력된 선택객체와 중첩되는(교차, 만남, 포함 등) 대상을 선택한다.
공간자료는 항상 테이블에 저장되는 속성자료와 키, 외부키로 연결되어 있다. 어떤 대상을 선택하면 이러한 링크를 이용하여 속성 레코드도 선택되고, 반대로 속성레코드를 선택하면 공간객체가 선택된다.
대화식 기하학적 선택은 어디에 무엇이 있는가와 같은 질물에 대한 해답을 제공한다.
3.속성조건에 의한 공간적 선택
대상물의 속성에 대하여 선택조건을 부여함으로써 대상을 선택할 수도 있다. 조건은 속성이 관계형 데이터베이스에 보관되어 있을 경우 SQL 문을 사용하거나, 속성이 지리정보시스템 내부에 포함되어 있을 경우 소프트웨어 자체 언어를 사용하여 지정할 수 있다. 이러한 형태의 선택은 "어떠한 대상이 어느 위치에 존재하는가"에 대한 질문에 해당한다. 한편 선택된 대상물의 집합으로부터 새로운 선택조건을 입력하여 새롭게 선택을 수행할 수도 있다. 이와 같이 여러가지 조건을 결합하는 것은 실제로 많이 필요한 작업이다.
4. 속성조건 결합
여러가지 조건을 중복적용하여 객체를 선택하려면 위와 같이 각각의 조건을 하나씩 차례로 적용할 수 있으나 하나의 복합 조건물으로 작성할 수도 있다. 원자조건에서는 <,=와 같은 등호 및 부등호를 사용한다. 이 외에도 <=, >, >=, <>와 같은 부호도 있다. 이러한 부호는 좌측과 우측에 표현식(expression)을 둠으로써 원자조건을 생성할 수 있다. 예를 들어 LandUse<>80이란 조건식은 토지이용분류가 80이 아닌 모든 객체를 선택하는데 사용된다. 표현식은 상수가 될 수도 있고, 속성의 이름이 될 수도 있으며 복합적인 산술표현도 될 수 있다.
원자조건은 논리연산자를 사용하여 복합조건으로 결합할 수 있다. 가장 중요한 논리연산자로는 AND, OR, NOT가 있다. AND 연산자를 사용하여 복합조건을 통해 두 가지 원자조건을 동시에 만족하는 지역을 선택할 수 있다. Area<400,000 AND LandUse=80의 조건식은 면적이 40만 이상이거나 토지이용이 80인 조건을 모두 충족하는 지역을 선택하는 조건식이다. 한편 OR 연산자를 사용하여 복합조건을 통해 두 가지 조건 중 어느 것이든 만족하는 지역을 선택할 수 있다. Area<400,000 OR LandUse=80의 조건식은 면적이 40만 이상이거나 토지이용이 80인 조건 둘 중에 하나를 만족하는 지역을 선택한다. 물론 두 가지 조건을 모두 만족하는 지역도 선택된다.
NOT 연산자는 조건을 반대로 만드는 역할을 수행한다. 예를 들어 NOT(LandUse=80)의 조건식은 토지이용분류가 80이 아닌 모든 지역을 선택하는데 사용될 수 있다. 괄호는 복합조건 중 일부를 묶어주는 역할을 한다. (Area>30,000 AND LandUse=70) OR (Area<400,000 AND LandUse=80)의 조건문은 토지이용분류가 70이며 면적이 3만보다 작은 지역 또는 면적이 40만 이하이면서 토지이용분류가 80인 지역을 선택하는 조건문이다.
5. 위상관계를 이용한 선택
객체간의 위상관계를 이용하여 공간 객체를 선택할 수도 있다. 위상관계를 이용하여 공간객체를 선택하는 방법에는 포함, 중첩, 인접 및 거리함수를 기반으로 하는 선택이 있다. 이러한 선택은 먼저 선택객체를 하나 이상 선택하고 원하는 공간관계 기능을 적용함으로써 선택객체와 관계있는 대상을 선택하는 절차로 이루어질수 있다.
선택객체 내부의 대상을 선택하는 방법은 공간객체간의 포함관계를 이용한 선택방법이다. 폴리곤은 다른 폴리곤이나 선, 점을 포함할 수 있고 선은 다른 선이나 점을 포함할 수 있다. 교차 연산자는 폴리곤과 선의 교차관계를 이용하여 공간객체를 선택한다. 인접이란 경계를 공유하는 대상을 말하며 선과 면 객체에만 적용된다.
지리정보시스템의 거리계산 기능을 이용하여 대상을 선택할 수도 있다. 이떠한 선택객체로부터 일정한 거리 이내나 또는 밖에 있는 대상을 선택하는 것이 이에 해당한다. 어떠한 거리를 이용할지 결정되었다면 지리정보시스템은 이를 수행할 수 있는 여러 가지 기능을 제공한다. 선택조건이 가장 가까운 거리나 가장 먼 것을 찾는 작업일 경우 복잡해진다. 지리정보시스템에서 선택객체에서 가장 가까운 대상에서 모든 대상까지의 거리를 계산해야 할 뿐만 아니라 선택객체에서 가장 가깝거나 가장 먼 대상을 골라내야 하기 때문이다. 즉 최소 및 최대값을 결정할 수 있는 별도의 계산절차가 필요하게 된다. 대부분의 지리정보시스템 패키지는 이러한 선택기능을 제공한다.
6. 소결
속성값에 의한 선택의 경우 AND, OR, NOT와 같은 논리 연산자를 사용하여 결합할 수 있다. 대상을 선택하는 방법 역시 서로 결합할 수 있다. 어떠한 방법으로든 선택된 대상은 다음 선택기능의 선택객체로 사용할 수 있다. 예를 들어 먼저 모든 병원을 선택하고 다음으로 병원에서 200m 이내에 있는 도로를 찾아내며 그 중에서 주요도로만 선택한 뒤 남아있는 도로에서 가장 가까운 병원을 선택함으로써 최우선적으로 재정지원이 필요한 병원을 찾을 수 있다. 이와 같이 여러 가지 선택기법을 원하는대로 결합하여 사용할 수 있다.