mirror of
https://git.osgeo.org/gitea/postgis/postgis
synced 2024-10-24 09:02:37 +00:00
05664e6558
submission to the OGC compliance process. git-svn-id: http://svn.osgeo.org/postgis/trunk@2411 b70326c6-7e19-0410-871a-916f4a2858ee
698 lines
21 KiB
SQL
698 lines
21 KiB
SQL
-- FILE: sqltsch.sql 10/01/98
|
|
--
|
|
-- 1 2 3 4 5 6 7 8
|
|
--345678901234567890123456789012345678901234567890123456789012345678901234567890
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- Copyright 1998, Open GIS Consortium, Inc.
|
|
--
|
|
-- The material in this document details an Open GIS Consortium Test Suite in
|
|
-- accordance with a license that your organization has signed. Please refer
|
|
-- to http://www.opengis.org/testing/ to obtain a copy of the general license
|
|
-- (it is part of the Conformance Testing Agreement).
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- OpenGIS Simple Features for SQL (Types and Functions) Test Suite Software
|
|
--
|
|
-- This file "sqltsch.sql" is part 1 of a two part standardized test
|
|
-- suite in SQL script form. The other file that is required for this test
|
|
-- suite, "sqltque.sql", one additional script is provided ("sqltcle.sql") that
|
|
-- performs cleanup operations between test runs, and other documents that
|
|
-- describe the OGC Conformance Test Program are available via the WWW at
|
|
-- http://www.opengis.org/testing/index.htm
|
|
--
|
|
-- NOTE CONCERNING INFORMATION ON CONFORMANCE TESTING AND THIS TEST SUITE
|
|
-- ----------------------------------------------------------------------
|
|
--
|
|
-- Organizations wishing to submit product for conformance testing should
|
|
-- access the above WWW site to discover the proper procedure for obtaining
|
|
-- a license to use the OpenGIS(R) certification mark associated with this
|
|
-- test suite.
|
|
--
|
|
--
|
|
-- NOTE CONCERNING TEST SUITE ADAPTATION
|
|
-- -------------------------------------
|
|
--
|
|
-- OGC recognizes that many products will have to adapt this test suite to
|
|
-- make it work properly. OGC has documented the allowable adaptations within
|
|
-- this test suite where possible. Other information about adaptations may be
|
|
-- discovered in the Test Suite Guidelines document for this test suite.
|
|
--
|
|
-- PLEASE NOTE THE OGC REQUIRES THAT ADAPTATIONS ARE FULLY DOCUMENTED USING
|
|
-- LIBERAL COMMENT BLOCKS CONFORMING TO THE FOLLOWING FORMAT:
|
|
--
|
|
-- -- !#@ ADAPTATION BEGIN
|
|
-- explanatory text goes here
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- original sql goes here
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
-- adated sql goes here
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- BEGIN TEST SUITE CODE
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- Create the neccessary feature and geometry tables(views) and metadata tables
|
|
-- (views) to load and query the "Blue Lake" test data for OpenGIS Simple
|
|
-- Features for SQL (Types and Functions) test.
|
|
--
|
|
-- Required feature tables (views) are:
|
|
-- Lakes
|
|
-- Road Segments
|
|
-- Divided Routes
|
|
-- Buildings
|
|
-- Forests
|
|
-- Bridges
|
|
-- Named Places
|
|
-- Streams
|
|
-- Ponds
|
|
-- Map Neatlines
|
|
--
|
|
-- Please refer to the Test Suite Guidelines for this test suite for further
|
|
-- information concerning this test data.
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
--
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- CREATE SPATIAL_REF_SYS METADATA TABLE
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
--
|
|
-- *** ADAPTATION ALERT ****
|
|
-- Implementations do not need to execute this statement if they already
|
|
-- create the spatial_ref_sys table or view via another mechanism.
|
|
-- The size of the srtext VARCHAR exceeds that allowed on some systems.
|
|
--
|
|
-- ---------------------
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- This table is already defined by PostGIS so we comment it out here.
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
--CREATE TABLE spatial_ref_sys (
|
|
-- srid INTEGER NOT NULL PRIMARY KEY,
|
|
-- auth_name VARCHAR(256),
|
|
-- auth_srid INTEGER,
|
|
-- srtext VARCHAR(2048)
|
|
-- srtext VARCHAR(2000)
|
|
--);
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
--
|
|
INSERT INTO spatial_ref_sys (SRID,AUTH_NAME,AUTH_SRID,SRTEXT)
|
|
VALUES (101, 'POSC', 32214,
|
|
'PROJCS["UTM_ZONE_14N", GEOGCS["World Geodetic System 72",
|
|
DATUM["WGS_72", SPHEROID["NWL_10D", 6378135, 298.26]],
|
|
PRIMEM["Greenwich", 0], UNIT["Meter", 1.0]],
|
|
PROJECTION["Transverse_Mercator"],
|
|
PARAMETER["False_Easting", 500000.0],
|
|
PARAMETER["False_Northing", 0.0],
|
|
PARAMETER["Central_Meridian", -99.0],
|
|
PARAMETER["Scale_Factor", 0.9996],
|
|
PARAMETER["Latitude_of_origin", 0.0],
|
|
UNIT["Meter", 1.0]]'
|
|
);
|
|
--
|
|
--
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- CREATE FEATURE SCHEMA
|
|
--
|
|
-- *** ADAPTATION ALERT ***
|
|
-- The following schema is created using CREATE TABLE statements.
|
|
-- Furthermore, it DOES NOT create the GEOMETRY_COLUMNS metadata table.
|
|
-- Implementer's should replace the CREATE TABLES below with the mechanism
|
|
-- that it uses to create feature tables and the GEOMETRY_COLUMNS table/view
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
--------------------------------------------------------------------------------
|
|
--
|
|
-- Create feature tables
|
|
--
|
|
--------------------------------------------------------------------------------
|
|
--
|
|
-- Lakes
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE lakes (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64),
|
|
-- shore POLYGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE lakes (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('lakes','shore','101','POLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Road Segments
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE road_segments (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64),
|
|
-- aliases VARCHAR(64),
|
|
-- num_lanes INTEGER
|
|
-- centerline LINESTRING
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
|
|
CREATE TABLE road_segments (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64),
|
|
aliases VARCHAR(64),
|
|
num_lanes INTEGER
|
|
);
|
|
SELECT AddGeometryColumn('road_segments','centerline','101','LINESTRING','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Divided Routes
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE divided_routes (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64),
|
|
-- num_lanes INTEGER
|
|
-- centerlines MULTILINESTRING
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE divided_routes (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64),
|
|
num_lanes INTEGER
|
|
);
|
|
SELECT AddGeometryColumn('divided_routes','centerlines','101','MULTILINESTRING','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Forests
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE forests (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64)
|
|
-- boundary MULTIPOLYGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE forests (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('forests','boundary','101','MULTIPOLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Bridges
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE bridges (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64)
|
|
-- position POINT
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE bridges (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('bridges','position','101','POINT','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
|
|
--
|
|
-- Streams
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE streams (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64)
|
|
-- centerline LINESTRING
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE streams (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('streams','centerline','101','LINESTRING','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Buildings
|
|
--
|
|
--*** ADAPTATION ALERT ***
|
|
-- A view could be used to provide the below semantics without multiple geometry
|
|
-- columns in a table. In other words, create two tables. One table would
|
|
-- contain the POINT position and the other would create the POLYGON footprint.
|
|
-- Then create a view with the semantics of the buildings table below.
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE buildings (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- address VARCHAR(64)
|
|
-- position POINT
|
|
-- footprint POLYGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE buildings (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
address VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('buildings','position','101','POINT','2');
|
|
SELECT AddGeometryColumn('buildings','footprint','101','POLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Ponds
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE ponds (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64),
|
|
-- type VARCHAR(64)
|
|
-- shores MULTIPOYLGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE ponds (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64),
|
|
type VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('ponds','shores','101','MULTIPOLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
-- Named Places
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
|
|
-- CREATE TABLE named_places (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY,
|
|
-- name VARCHAR(64)
|
|
-- boundary POLYGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE named_places (
|
|
fid INTEGER NOT NULL PRIMARY KEY,
|
|
name VARCHAR(64)
|
|
);
|
|
SELECT AddGeometryColumn('named_places','boundary','101','POLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
-- Map Neatline
|
|
--
|
|
--
|
|
--
|
|
--
|
|
-- !#@ ADAPTATION BEGIN
|
|
-- We break the schema creation into two steps, first create the
|
|
-- attribute table, second use the AddGeometryColumn() function
|
|
-- to create and register the geometry column.
|
|
-- ---------------------
|
|
-- -- BEGIN ORIGINAL SQL
|
|
-- ---------------------
|
|
-- CREATE TABLE map_neatlines (
|
|
-- fid INTEGER NOT NULL PRIMARY KEY
|
|
-- neatline POLYGON
|
|
-- );
|
|
-- ---------------------
|
|
-- -- END ORIGINAL SQL
|
|
-- ---------------------
|
|
-- ---------------------
|
|
-- -- BEGIN ADAPTED SQL
|
|
-- ---------------------
|
|
CREATE TABLE map_neatlines (
|
|
fid INTEGER NOT NULL PRIMARY KEY
|
|
);
|
|
SELECT AddGeometryColumn('map_neatlines','neatline','101','POLYGON','2');
|
|
-- ---------------------
|
|
-- -- END ADAPTED SQL
|
|
-- ---------------------
|
|
-- -- !#@ ADAPTATION END
|
|
|
|
--
|
|
--
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
-- POPULATE GEOMETRY AND FEATURE TABLES
|
|
--
|
|
-- *** ADAPTATION ALERT ***
|
|
-- This script DOES NOT make any inserts into a GEOMTERY_COLUMNS table/view.
|
|
-- Implementers should insert whatever makes this happen in their implementation
|
|
-- below. Furthermore, the inserts below may be replaced by whatever mechanism
|
|
-- may be provided by implementers to insert rows in feature tables such that
|
|
-- metadata (and other mechanisms) are updated properly.
|
|
--
|
|
--//////////////////////////////////////////////////////////////////////////////
|
|
--
|
|
--==============================================================================
|
|
-- Lakes
|
|
--
|
|
-- We have one lake, Blue Lake. It is a polygon with a hole. Its geometry is
|
|
-- described in WKT format as:
|
|
-- 'POLYGON( (52 18, 66 23, 73 9, 48 6, 52 18),
|
|
-- (59 18, 67 18, 67 13, 59 13, 59 18) )'
|
|
--==============================================================================
|
|
--
|
|
--
|
|
INSERT INTO lakes VALUES (101, 'Blue Lake',
|
|
PolygonFromText('POLYGON((52 18,66 23,73 9,48 6,52 18),(59 18,67 18,67 13,59 13,59 18))', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Road segments
|
|
--
|
|
-- We have five road segments. Their geometries are all linestrings.
|
|
-- The geometries are described in WKT format as:
|
|
-- name 'Route 5', fid 102
|
|
-- 'LINESTRING( 0 18, 10 21, 16 23, 28 26, 44 31 )'
|
|
-- name 'Route 5', fid 103
|
|
-- 'LINESTRING( 44 31, 56 34, 70 38 )'
|
|
-- name 'Route 5', fid 104
|
|
-- 'LINESTRING( 70 38, 72 48 )'
|
|
-- name 'Main Street', fid 105
|
|
-- 'LINESTRING( 70 38, 84 42 )'
|
|
-- name 'Dirt Road by Green Forest', fid 106
|
|
-- 'LINESTRING( 28 26, 28 0 )'
|
|
--
|
|
--==================
|
|
--
|
|
--
|
|
INSERT INTO road_segments VALUES(102, 'Route 5', NULL, 2,
|
|
LineStringFromText('LINESTRING( 0 18, 10 21, 16 23, 28 26, 44 31 )' ,101)
|
|
);
|
|
INSERT INTO road_segments VALUES(103, 'Route 5', 'Main Street', 4,
|
|
LineStringFromText('LINESTRING( 44 31, 56 34, 70 38 )' ,101)
|
|
);
|
|
INSERT INTO road_segments VALUES(104, 'Route 5', NULL, 2,
|
|
LineStringFromText('LINESTRING( 70 38, 72 48 )' ,101)
|
|
);
|
|
INSERT INTO road_segments VALUES(105, 'Main Street', NULL, 4,
|
|
LineStringFromText('LINESTRING( 70 38, 84 42 )' ,101)
|
|
);
|
|
INSERT INTO road_segments VALUES(106, 'Dirt Road by Green Forest', NULL, 1,
|
|
LineStringFromText('LINESTRING( 28 26, 28 0 )',101)
|
|
);
|
|
--
|
|
--==================
|
|
-- DividedRoutes
|
|
--
|
|
-- We have one divided route. Its geometry is a multilinestring.
|
|
-- The geometry is described in WKT format as:
|
|
-- 'MULTILINESTRING( (10 48, 10 21, 10 0), (16 0, 10 23, 16 48) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO divided_routes VALUES(119, 'Route 75', 4,
|
|
MultiLineStringFromText('MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Forests
|
|
--
|
|
-- We have one forest. Its geometry is a multipolygon.
|
|
-- The geometry is described in WKT format as:
|
|
-- 'MULTIPOLYGON( ( (28 26, 28 0, 84 0, 84 42, 28 26),
|
|
-- (52 18, 66 23, 73 9, 48 6, 52 18) ),
|
|
-- ( (59 18, 67 18, 67 13, 59 13, 59 18) ) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO forests VALUES(109, 'Green Forest',
|
|
MultiPolygonFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Bridges
|
|
--
|
|
-- We have one bridge. Its geometry is a point.
|
|
-- The geometry is described in WKT format as:
|
|
-- 'POINT( 44 31 )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO bridges VALUES(110, 'Cam Bridge',
|
|
PointFromText('POINT( 44 31 )', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Streams
|
|
--
|
|
-- We have two streams. Their geometries are linestrings.
|
|
-- The geometries are described in WKT format as:
|
|
-- 'LINESTRING( 38 48, 44 41, 41 36, 44 31, 52 18 )'
|
|
-- 'LINESTRING( 76 0, 78 4, 73 9 )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO streams VALUES(111, 'Cam Stream',
|
|
LineStringFromText('LINESTRING( 38 48, 44 41, 41 36, 44 31, 52 18 )', 101)
|
|
);
|
|
INSERT INTO streams VALUES(112, NULL,
|
|
LineStringFromText('LINESTRING( 76 0, 78 4, 73 9 )', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Buildings
|
|
--
|
|
-- We have two buildings. Their geometries are points and polygons.
|
|
-- The geometries are described in WKT format as:
|
|
-- address '123 Main Street' fid 113
|
|
-- 'POINT( 52 30 )' and
|
|
-- 'POLYGON( ( 50 31, 54 31, 54 29, 50 29, 50 31) )'
|
|
-- address '215 Main Street' fid 114
|
|
-- 'POINT( 64 33 )' and
|
|
-- 'POLYGON( ( 66 34, 62 34, 62 32, 66 32, 66 34) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO buildings VALUES(113, '123 Main Street',
|
|
PointFromText('POINT( 52 30 )', 101),
|
|
PolygonFromText('POLYGON( ( 50 31, 54 31, 54 29, 50 29, 50 31) )', 101)
|
|
);
|
|
INSERT INTO buildings VALUES(114, '215 Main Street',
|
|
PointFromText('POINT( 64 33 )', 101),
|
|
PolygonFromText('POLYGON( ( 66 34, 62 34, 62 32, 66 32, 66 34) )', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Ponds
|
|
--
|
|
-- We have one pond. Its geometry is a multipolygon.
|
|
-- The geometry is described in WKT format as:
|
|
-- 'MULTIPOLYGON( ( ( 24 44, 22 42, 24 40, 24 44) ), ( ( 26 44, 26 40, 28 42, 26 44) ) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO ponds VALUES(120, NULL, 'Stock Pond',
|
|
MultiPolygonFromText('MULTIPOLYGON( ( ( 24 44, 22 42, 24 40, 24 44) ), ( ( 26 44, 26 40, 28 42, 26 44) ) )', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Named Places
|
|
--
|
|
-- We have two named places. Their geometries are polygons.
|
|
-- The geometries are described in WKT format as:
|
|
-- name 'Ashton' fid 117
|
|
-- 'POLYGON( ( 62 48, 84 48, 84 30, 56 30, 56 34, 62 48) )'
|
|
-- address 'Goose Island' fid 118
|
|
-- 'POLYGON( ( 67 13, 67 18, 59 18, 59 13, 67 13) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO named_places VALUES(117, 'Ashton',
|
|
PolygonFromText('POLYGON( ( 62 48, 84 48, 84 30, 56 30, 56 34, 62 48) )', 101)
|
|
);
|
|
INSERT INTO named_places VALUES(118, 'Goose Island',
|
|
PolygonFromText('POLYGON( ( 67 13, 67 18, 59 18, 59 13, 67 13) )', 101)
|
|
);
|
|
--
|
|
--==================
|
|
-- Map Neatlines
|
|
--
|
|
-- We have one map neatline. Its geometry is a polygon.
|
|
-- The geometry is described in WKT format as:
|
|
-- 'POLYGON( ( 0 0, 0 48, 84 48, 84 0, 0 0 ) )'
|
|
--
|
|
--==================
|
|
--
|
|
INSERT INTO map_neatlines VALUES(115,
|
|
PolygonFromText('POLYGON( ( 0 0, 0 48, 84 48, 84 0, 0 0 ) )', 101)
|
|
);
|
|
--
|
|
--
|
|
--
|
|
-- end sqltsch.sql
|