Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 6 additions & 20 deletions shortbread-website/content/schema/1.1.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ Some layers have their features sorted by importance or rendering order. This al

Shortbread vector tiles have a minzoom of 0 and a maxzoom of 14. Higher client zooms are achieved with overzoomed zoom 14 tiles.

## Names

Wherever a feature has a `name` attribute it also may have `name_xx` tags, where `xx` is an IETF language code and the contents of the tag come from `name:xx`. For example a feature could have `name_en` and `name_de` attributes that come from the `name:en` and `name:de` tags.
Copy link

@1ec5 1ec5 Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The specification would benefit from a more complex example involving subtags. Otherwise, it could be unclear to implementers whether name:zh-Hant-TW=* should become name_zh-Hant-TW, name_zh_Hant_TW, or name_zh_hant_tw. As the developer of a client-side localization plugin, I’d prefer name_zh-Hant-TW for compatibility with other schemas like Mapbox Streets and OpenHistoricalMap, if not name:zh-Hant-TW for compatibility with OpenMapTiles and Tilezen. However, I understand that there’s some concern in #72 about having anything other than \w characters in field names.


Implementations may define their own list of IETF language codes that they include in their tiles.

## Water

### Layer "ocean"
Expand Down Expand Up @@ -66,8 +72,6 @@ descending order.
| `kind` | string | type of water body (see _water_polygons_ layer for a list of values) |
| `way_area` | float | area in square meter (Mercator Projection) |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |

### Layer "water_lines"

Expand Down Expand Up @@ -109,8 +113,6 @@ Hold line geometries and names for named water lines.
| ---------- | :------ | :------ | :--------------------------------------------------------------------------------------------------------------------------- |
| `kind` | string | | type of water body (see _water_lines_ layer for a list of values) |
| `name` | string | | value of OSM {{< tag name >}} tag |
| `name_en` | string | | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | | value of OSM {{< tag "name:de" >}} tag |
| `tunnel` | boolean | false | `true` for {{< tag tunnel yes building_passage >}} or {{< tag covered yes >}}, `false` otherwise |
| `bridge` | boolean | false | `true` for {{< tag bridge yes viaduct boardwalk cantilever covered low_water_crossing movable trestle >}}, `false` otherwise |

Expand Down Expand Up @@ -215,8 +217,6 @@ descending order.
| `admin_level` | integer | value of OSM {{< tag admin_level >}} tag, see Features section for possible values |
| `way_area` | float | area in ha |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |

#### Features

Expand All @@ -240,8 +240,6 @@ Holds label points for populated places. Features are sorted by `population` in
| ------------ | :------ | :--------------------------------------------------------------------------- |
| `kind` | string | value of OSM {{< tag place >}} tag, see Features section for possible values |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |
| `population` | integer | value of OSM {{< tag population >}} tag, else defaults (see below) |

#### Features
Expand Down Expand Up @@ -465,8 +463,6 @@ This layer holds street geometries for labelling. It contains their names and re
| `ref_rows` | integer | number of lines of the `ref` value |
| `ref_cols` | integer | maximum line length of the `ref` value |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |
| `tunnel` | boolean | `true` for {{< tag tunnel yes building_passage >}} or {{< tag covered yes >}}. `false` otherwise |

#### Features
Expand Down Expand Up @@ -515,8 +511,6 @@ Holds labelling points of the polygons of the "streets_polygons" layer.
| ---------- | :----- | :---------------------------------------------------------- |
| `kind` | string | value of OSM {{< tag highway >}} or {{< tag aeroway >}} tag |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |

#### Features

Expand All @@ -540,8 +534,6 @@ This layer holds motorway exit labels.
| `kind` | string | value of OSM {{< tag highway >}} tag |
| `ref` | string | value of OSM {{< tag ref >}} tag |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |

#### Features

Expand Down Expand Up @@ -605,8 +597,6 @@ Holds line geometries of ferries.
| ---------- | :----- | :------------------------------------- |
| `kind` | string | |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |

#### Features

Expand All @@ -629,8 +619,6 @@ Holds public transport stops as points. Areas in OSM are represented by a point.
| ---------- | :----- | :------------------------------------- |
| `kind` | string | feature class |
| `name` | string | value of OSM {{< tag name >}} tag |
| `name_en` | string | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | value of OSM {{< tag "name:de" >}} tag |
| `iata` | string | value of OSM {{< tag iata >}} tag |

#### Features
Expand Down Expand Up @@ -667,8 +655,6 @@ All features are available on zoom level 14 only.
| `highway` | string | null | value of OSM {{< tag highway >}} tag if listed in the "Features" subsection below |
| `office` | string | null | value of OSM {{< tag office >}} tag if listed in the "Features" subsection below |
| `name` | string | null | value of OSM {{< tag name >}} tag |
| `name_en` | string | null | value of OSM {{< tag "name:en" >}} tag |
| `name_de` | string | null | value of OSM {{< tag "name:de" >}} tag |
| `housename` | string | null | {{< tag "addr:housename" >}} |
| `housenumber` | string | null | {{< tag "addr:housenumber" >}} |

Expand Down