GEOGRAPHY 176B: TECHNICAL ISSUES IN GIS

LECTURE 4: COVERAGES, SHAPEFILES, AND OBJECT-ORIENTED MODELING

1. SHAPEFILES AND COVERAGES

2. OBJECT-ORIENTED DATA MODELING



1. SHAPEFILES AND COVERAGES

Coverages

application of the relational model

ARC/INFO v.1

1980

non-overlapping, space-exhausting polygons

nodes, arcs, areas

0, 1, 2-dimensional objects

points, polylines, polygons

AAT, PAT

no node table

arcs in an ARC file

not in relational database

a hybrid structure

topological links

each arc to polygons on either side

each arc to nodes at each end

continuous field

mapping location to a class or name

exactly one class or name per location

can only edit positions of common boundaries

Shapefiles

points, lines, areas

no topological links

the ArcView data model

circa 1987

simpler

to compete with Atlas GIS, MapInfo

PC based

computer assisted design (CAD)

AutoCAD, ArcCAD

discrete objects

may overlap

don't have to exhaust the space

empty space between objects

pieces of a jigsaw

What happens when you try to edit a polygon boundary?
in the shapefile model

in the coverage model

What happens when you add a polygon?

Attributes in shapefiles

stored in tables
Six types of shapefiles
point
multipoint
polyline
a line made by connecting points with straight lines
new options: arc of circle, arc of ellipse, Bezier curve
multipart polyline

may have associated measure

polyline M

distance along highway from intersection

may have point elevations
Z values
polygon
an area made by connecting points with straight lines
new options
multipart polygon

slide

slide

Coverages or shapefiles?

history

coverages came earlier

the only way of dealing with problems in 1970s

problems partly go away with increased computing power

will shapefiles eventually replace coverages?

integrity

can edit shapefiles into impossible situations

overlapping counties

violating the rules of fields

coverages ensure integrity automatically

data volume

double lines in shapefiles for shared features

in coverages no double lines

shared features will always be identical

approximately half the data volume

computing efficiency

many operations run faster on coverages

overlaps

coverages can't deal with easily

violate the rules of fields

change through time

use coverages whenever possible

 



2. OBJECT-ORIENTED DATA MODELING

Principles

the things in the world are instances of classes

John Smith - human being

State Street - street

Santa Barbara - city

Mt Everest - mountain

classes form hierarchies

John Smith is an instance of the class male human beings

male human beings are a subclass of human beings

human beings are a subclass of mammals

mammals are a subclass of fauna

each subclass shares the properties of the class, and adds some special properties

geographic objects often group into complex objects

an airport is composed of runways, hangars, terminals,...

a state is composed of counties

an area coverage is composed of polygons, arcs, and nodes

Advantages of object-oriented databases
1. Hierarchy
earlier hierarchical model (1960s)

complex spatial objects

inheritance of properties

e.g., some things true of all polygons
area, number of vertices, ID
some things true only of polygons in an application
attributes: county name, population count
in OO data models objects can inherit properties

object inheritance

objects can inherit properties that are true of all objects of that type

e.g., all polygons
and can also add new properties
e.g., properties true only of a certain class
2. Behavior
objects can be associated with behavior

would like to define behavior for individual objects

behavior encapsulation

what kinds of behavior?

editing rules
e.g, corners of a building must be square

might apply to all buildings, but not all polygons

might apply only to some buildings

e.g., two adjacent objects must have the same common boundary
attribute rules
e.g., range of possible numbers
split and merge rules
when a feature is split, or two features are merged, what happens to their attributes?

e.g., merge two polygons, their population counts are summed for the combined polygon

e.g., merge two polygons, their population densities are averaged (weighted by the respective areas)

e.g., split a street, the lengths of the two parts are shares of the total

spatially extensive variables

variables whose values are true only of an entire area as a whole

e.g., population count, length, area, total income

spatially intensive variables

variables whose values are potentially true of all parts of an area

e.g., population density, average income, percent unemployed

example

split policies:
duplicate, default, geometry ratio
merge policies:
default, sum, weighted average
special procedures
e.g., procedure to measure areas of polygons
associated with polygon object type
e.g., procedure to annotate contours
specific interaction rules between objects

e.g., a liquor store cannot be within 500m of a school

e.g., an offramp is required if a street and a freeway intersect

e.g., at least one stream must flow out of every stream junction

instances of a class must share:

same topological dimensions

same attributes

same behaviors

Deficiency of the georelational model
geometric information not stored in database

the ARC/INFO hybrid

ArcGIS stores geometric information as "shape" attribute

Geodatabase
closer to how we actually think about geographic features
e.g., we don't naturally think about a coverage as a collection of arcs
inheritance hierarchy