Add name_en to waterway #88

This commit is contained in:
Lukas Martinelli
2017-01-18 15:53:24 +01:00
parent ef640b9d4e
commit 8e5caed2d8
2 changed files with 18 additions and 11 deletions

View File

@@ -1,52 +1,55 @@
-- etldoc: ne_110m_rivers_lake_centerlines -> waterway_z3 -- etldoc: ne_110m_rivers_lake_centerlines -> waterway_z3
CREATE OR REPLACE VIEW waterway_z3 AS ( CREATE OR REPLACE VIEW waterway_z3 AS (
SELECT geometry, 'river'::text AS class, NULL::text AS name FROM ne_110m_rivers_lake_centerlines SELECT geometry, 'river'::text AS class, NULL::text AS name, NULL::text AS name_en
FROM ne_110m_rivers_lake_centerlines
WHERE featurecla = 'River' WHERE featurecla = 'River'
); );
-- etldoc: ne_50m_rivers_lake_centerlines -> waterway_z4 -- etldoc: ne_50m_rivers_lake_centerlines -> waterway_z4
CREATE OR REPLACE VIEW waterway_z4 AS ( CREATE OR REPLACE VIEW waterway_z4 AS (
SELECT geometry, 'river'::text AS class, NULL::text AS name FROM ne_50m_rivers_lake_centerlines SELECT geometry, 'river'::text AS class, NULL::text AS name, NULL::text AS name_en
FROM ne_50m_rivers_lake_centerlines
WHERE featurecla = 'River' WHERE featurecla = 'River'
); );
-- etldoc: ne_10m_rivers_lake_centerlines -> waterway_z6 -- etldoc: ne_10m_rivers_lake_centerlines -> waterway_z6
CREATE OR REPLACE VIEW waterway_z6 AS ( CREATE OR REPLACE VIEW waterway_z6 AS (
SELECT geometry, 'river'::text AS class, NULL::text AS name FROM ne_10m_rivers_lake_centerlines SELECT geometry, 'river'::text AS class, NULL::text AS name, NULL::text AS name_en
FROM ne_10m_rivers_lake_centerlines
WHERE featurecla = 'River' WHERE featurecla = 'River'
); );
-- etldoc: osm_important_waterway_linestring_gen3 -> waterway_z9 -- etldoc: osm_important_waterway_linestring_gen3 -> waterway_z9
CREATE OR REPLACE VIEW waterway_z9 AS ( CREATE OR REPLACE VIEW waterway_z9 AS (
SELECT geometry, 'river'::text AS class, name FROM osm_important_waterway_linestring_gen3 SELECT geometry, 'river'::text AS class, name, name_en FROM osm_important_waterway_linestring_gen3
); );
-- etldoc: osm_important_waterway_linestring_gen2 -> waterway_z10 -- etldoc: osm_important_waterway_linestring_gen2 -> waterway_z10
CREATE OR REPLACE VIEW waterway_z10 AS ( CREATE OR REPLACE VIEW waterway_z10 AS (
SELECT geometry, 'river'::text AS class, name FROM osm_important_waterway_linestring_gen2 SELECT geometry, 'river'::text AS class, name, name_en FROM osm_important_waterway_linestring_gen2
); );
-- etldoc:osm_important_waterway_linestring_gen1 -> waterway_z11 -- etldoc:osm_important_waterway_linestring_gen1 -> waterway_z11
CREATE OR REPLACE VIEW waterway_z11 AS ( CREATE OR REPLACE VIEW waterway_z11 AS (
SELECT geometry, 'river'::text AS class, name FROM osm_important_waterway_linestring_gen1 SELECT geometry, 'river'::text AS class, name, name_en FROM osm_important_waterway_linestring_gen1
); );
-- etldoc: osm_waterway_linestring -> waterway_z12 -- etldoc: osm_waterway_linestring -> waterway_z12
CREATE OR REPLACE VIEW waterway_z12 AS ( CREATE OR REPLACE VIEW waterway_z12 AS (
SELECT geometry, waterway AS class, name FROM osm_waterway_linestring SELECT geometry, waterway AS class, name, name_en FROM osm_waterway_linestring
WHERE waterway IN ('river', 'canal') WHERE waterway IN ('river', 'canal')
); );
-- etldoc: osm_waterway_linestring -> waterway_z13 -- etldoc: osm_waterway_linestring -> waterway_z13
CREATE OR REPLACE VIEW waterway_z13 AS ( CREATE OR REPLACE VIEW waterway_z13 AS (
SELECT geometry, waterway::text AS class, name FROM osm_waterway_linestring SELECT geometry, waterway::text AS class, name, name_en FROM osm_waterway_linestring
WHERE waterway IN ('river', 'canal', 'stream', 'drain', 'ditch') WHERE waterway IN ('river', 'canal', 'stream', 'drain', 'ditch')
); );
-- etldoc: osm_waterway_linestring -> waterway_z14 -- etldoc: osm_waterway_linestring -> waterway_z14
CREATE OR REPLACE VIEW waterway_z14 AS ( CREATE OR REPLACE VIEW waterway_z14 AS (
SELECT geometry, waterway::text AS class, name FROM osm_waterway_linestring SELECT geometry, waterway::text AS class, name, name_en FROM osm_waterway_linestring
); );
-- etldoc: layer_waterway[shape=record fillcolor=lightpink, style="rounded,filled", -- etldoc: layer_waterway[shape=record fillcolor=lightpink, style="rounded,filled",
@@ -54,7 +57,10 @@ CREATE OR REPLACE VIEW waterway_z14 AS (
CREATE OR REPLACE FUNCTION layer_waterway(bbox geometry, zoom_level int) CREATE OR REPLACE FUNCTION layer_waterway(bbox geometry, zoom_level int)
RETURNS TABLE(geometry geometry, class text, name text) AS $$ RETURNS TABLE(geometry geometry, class text, name text) AS $$
SELECT geometry, class, NULLIF(name, '') AS name FROM ( SELECT geometry, class,
NULLIF(name, '') AS name,
COALESCE(NULLIF(name_en, ''), name) AS name_en
FROM (
-- etldoc: waterway_z3 -> layer_waterway:z3 -- etldoc: waterway_z3 -> layer_waterway:z3
SELECT * FROM waterway_z3 WHERE zoom_level = 3 SELECT * FROM waterway_z3 WHERE zoom_level = 3
UNION ALL UNION ALL

View File

@@ -10,6 +10,7 @@ layer:
name: | name: |
The OSM [`name`](http://wiki.openstreetmap.org/wiki/Key:name) value of the waterway. The OSM [`name`](http://wiki.openstreetmap.org/wiki/Key:name) value of the waterway.
The `name` field may be empty for NaturalEarth data or at lower zoom levels. The `name` field may be empty for NaturalEarth data or at lower zoom levels.
name_en: The english `name:en` value if available.
class: class:
description: | description: |
The original value of the [`waterway`](http://wiki.openstreetmap.org/wiki/Key:waterway) tag. The original value of the [`waterway`](http://wiki.openstreetmap.org/wiki/Key:waterway) tag.
@@ -21,7 +22,7 @@ layer:
- ditch - ditch
datasource: datasource:
geometry_field: geometry geometry_field: geometry
query: (SELECT geometry, name, class FROM layer_waterway(!bbox!, z(!scale_denominator!))) AS t query: (SELECT geometry, name, name_en, class FROM layer_waterway(!bbox!, z(!scale_denominator!))) AS t
schema: schema:
- ./merge_waterway.sql - ./merge_waterway.sql
- ./waterway.sql - ./waterway.sql