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.
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).
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