GeoPackage — Three Feature Layers in One SQLite Container
The territory as an OGC GeoPackage: an ordinary SQLite database with the three required metadata tables and three feature layers whose geometry columns hold GeoPackage binary blobs. Unlike a shapefile it carries several geometry types, long column names and real typed columns in one file.
| table_name | data_type | geometry_type_name | srs_id | features |
|---|---|---|---|---|
| towns | features | POINT | 4326 | 5 |
| roads | features | LINESTRING | 4326 | 3 |
| parcels | features | POLYGON | 4326 | 3 |
Specifications
- Format
- OGC GeoPackage 1.3 (SQLite)
- Application Id
- GPKG (0x47504B47)
- User Version
- 10300
- Feature Tables
- 3
- Table Names
- towns, roads, parcels
- Features
- 11
- Geometry Encoding
- GeoPackage binary header + OGC WKB, little-endian, no envelope
- Srs Id
- 4326
- Required Tables
- gpkg_spatial_ref_sys, gpkg_contents, gpkg_geometry_columns
- Last Change
- 2026-01-01T00:00:00.000Z (fixed for reproducibility)
Testing contract
Expected to pass- Scenario
- Open the file with a GeoPackage reader, then again with a plain SQLite client.
- Expected result
- The reader lists three layers totalling 11 features with the correct geometry types; the SQLite client sees the same rows plus the gpkg_contents and gpkg_geometry_columns metadata, and every geom blob starts with the bytes 'GP'.
What is a .gpkg file?
GeoPackage is an OGC standard that stores vector features, raster tiles, and their metadata inside a single SQLite database. Required tables such as gpkg_contents, gpkg_spatial_ref_sys, and gpkg_geometry_columns describe what the file holds, and feature geometries are stored in a standard binary header followed by Well-Known Binary. Being one self-contained file with real SQL indexing, it is the modern replacement for the multi-file shapefile.
How to use this file
Use an example .gpkg file to test GIS readers, SQLite-based spatial tooling, and shapefile-to-GeoPackage converters, checking the required metadata tables, the geometry header's SRS id and envelope flags, and attribute round-tripping.
How to use this file for testing
“GeoPackage — Three Feature Layers in One SQLite Container” is a deterministic Novus Examples fixture for Geospatial, Conversion testing, Data import. GeoJSON, GPX, and KML files with points, lines, polygons, and tracks — for testing map tools, route parsers, and geo importers.
Documented properties for this file: OGC GeoPackage 1.3 (SQLite). Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Geospatial fixtures publish one invented territory across formats, with the coordinate reference system and feature counts documented in specs. Convert or reproject and diff against the twin in the same group; edge-case geometries state exactly which assumption they are built to break.
Related files
- gpxGPX — Route (rte) Rather Than a TrackA `rte` element: an ordered list of waypoints describing a planned route, with no timestamps because it has not been travelled yet. Many importers only look for `trk` and report this perfectly valid file as empty.

- gpxGPX — Standalone Waypoints OnlyFive `wpt` elements for the towns of the territory, with names, symbols and descriptions but no track or route. It is the GPX equivalent of a point layer, and the third of the three top-level GPX content types.

- osmKestrel Bay Territory — OpenStreetMap XML TwinThe towns and roads in OSM XML: tagged nodes, three highway ways sharing the junction node at Kestrel Bay, and a route relation over them. All object IDs are negative — the convention for objects that have never been uploaded — so nothing here can be mistaken for real OSM data.

- kmlKML — LineString Placemarks With tessellateThe three roads as LineString Placemarks with `tessellate` set, which tells a globe renderer to drape the line over terrain rather than drawing it as a straight chord. Converters that drop the flag produce lines that tunnel through hills.

- kmlKML — Point Placemarks With DescriptionsFive town Placemarks with plain-text descriptions and no styling — the smallest useful KML and the baseline for the rest of this subcategory. Coordinates match the master territory, so a KML-to-GeoJSON conversion can be diffed against a known answer.

- kmzKMZ — Bundled Icon Referenced by a Relative PathA KMZ whose style points at `files/markers/town.png` inside the same archive. Resolving that relative href against the archive rather than the filesystem is the whole job of a KMZ reader, and it is where extract-then-parse implementations break.

Generated by generation/geospatial.py. Free for any use, no attribution required — license.