{"tiles":["https://vector.trailmap.fi/data/norway_topo/{z}/{x}/{y}.pbf"],"name":"Trailmap Norway topo","format":"pbf","vector_layers":[{"id":"building","fields":{"bygningstype":"Number","cabin":"String","class":"String","name":"String"},"minzoom":13,"maxzoom":14},{"id":"landuse","fields":{"class":"String","subclass":"String"},"minzoom":8,"maxzoom":14},{"id":"map_symbol","fields":{"class":"String","name":"String","owner":"Number","subclass":"String"},"minzoom":10,"maxzoom":14},{"id":"name","fields":{"category":"String","class":"String","font_size":"Number","language":"String","language_alt":"String","name":"String","name_alt":"String","primary":"String","rank":"Number","subcategory":"String"},"minzoom":4,"maxzoom":14},{"id":"protected_area","fields":{"class":"String","name":"String","subclass":"String"},"minzoom":7,"maxzoom":14},{"id":"terrain_area","fields":{"class":"String"},"minzoom":8,"maxzoom":14},{"id":"terrain_line","fields":{"class":"String","subclass":"String"},"minzoom":8,"maxzoom":14},{"id":"utility","fields":{"class":"String"},"minzoom":11,"maxzoom":14},{"id":"water_area","fields":{"class":"String","elevation":"Number","regulated":"String"},"minzoom":4,"maxzoom":14},{"id":"water_line","fields":{"class":"String","width":"Number"},"minzoom":10,"maxzoom":14}],"attribution":"<a href=\"https://www.kartverket.no/\" target=\"_blank\">&copy;Kartverket</a> N50 Kartdata, CC BY 4.0","description":"Norwegian national topographic content for Trailmap, from Kartverket N50 Kartdata (CC BY 4.0). Normalised into the same Trailmap canonical theme schema the Sweden Topografi 50 build uses, so one style vocabulary serves both -- and later Denmark GeoDanmark and Estonia ETAK.\nEverything N50 carries is emitted, including classes whose value is still an open question (open_land, boundary lines). The demo viewer is where that gets judged.\nThe road and path network lives in a SEPARATE archive -- schema/norway_ways.yml -> norway_ways -- because it is largely redundant with OSM, is not drawn by the default map, and was 17.7% of this archive. See vector_data_to_mvt.md.\nSized against measurement, not guesswork: merge_line_strings / merge_polygons repackage the same content into far fewer features, tolerance simplifies at low zoom, and only `name` is gated by zoom -- by its own category hierarchy, never by font size. z8 went 623 KB -> 82 KB this way.\n","planetiler:buildtime":"2026-03-28T14:35:36.815Z","planetiler:githash":"0e5588c4a6e8c29a270a33afe8df62027d889604","planetiler:version":"0.10.2","type":"baselayer","minzoom":0,"maxzoom":14,"bounds":[4.0775,57.7394,31.7716,71.3949],"center":[17.92455,64.56715,4],"tilejson":"3.0.0"}