ESRI Shapefiles (SHP)¶
Also known as just “Shapefiles”, or ESRI ArcView Shapefiles. Esri is the software company that introduced this format. ArcView was the first product to use shapefiles.
File listing¶
Shapefiles are made up of a minimum of three similarly named files, with different suffixes:
Countries_area.dbf
Countries_area.shp
Countries_area.shx
Data Access / Connection Method¶
Shapefile access is built directly into MapServer. It is also available through OGR, but direct access without OGR is recommended and discussed here. The path to the shapefile is required (relative to the SHAPEPATH). Specifying the «.shp» extension is recommended. Shapefiles only hold one layer of data, therefore no distinction needs to be made (as is required for other OGR vector formats that can contain many layers).
OGRINFO Examples¶
The directory can serve as a data source.
Each shapefile in a directory serves as a layer.
A shapefile can also be a data source. In this case the layer has the same prefix as the shapefile.
Using ogrinfo on a directory with multiple shapefiles:
> ogrinfo /data/shapefiles/
INFO: Open of `/data/shapefiles/'
using driver `ESRI Shapefile' successful.
1: wpg_h2o (Line String)
2: wpg_roads (Line String)
3: wpg_roads_dis (Line String)
4: wpgrestaurants (Point)
Using ogrinfo on a single shapefile:
> ogrinfo /data/shapefiles/Countries_area.shp
Had to open data source read-only.
INFO: Open of `Countries_area.shp'
using driver `ESRI Shapefile' successful.
1: Countries_area (Polygon)
Using ogrinfo to examine the structure of the file/layer:
> ogrinfo -summary /data/shapefiles/Countries_area.shp Countries_area
Had to open data source read-only.
INFO: Open of `Countries_area.shp'
using driver `ESRI Shapefile' successful.
Layer name: Countries_area
Geometry: Polygon
Feature Count: 27458
Extent: (-180.000000, -90.000000) - (180.000000, 83.627419)
Layer SRS WKT:
(unknown)
FAC_ID: Integer (5.0)
TILE: Integer (3.0)
ARCLIST: String (254.0)
NAM: String (77.0)
PERIMETER: Real (22.17)
POLYGONCOU: Integer (6.0)
NA2DESC: String (45.0)
Map File Example:
LAYER
NAME "my_shapefile"
STATUS ON
TYPE POLYGON
DATA "countries_area.shp"
CLASS
NAME "Countries"
STYLE
OUTLINECOLOR 0 0 0
COLOR 150 150 150
END #style
END #class
END #layer