Browse Source

Modify queries to accept multi-value tags (e.g. amenity=bar;restaurant)

sidewalks-category
parent
commit
61ba758173
  1. 14
      car_amenities.yaml
  2. 10
      communication.yaml
  3. 3
      craft.yaml
  4. 10
      culture-media.yaml
  5. 35
      culture.yaml
  6. 22
      cycle_amenities.yaml
  7. 43
      education.yaml
  8. 52
      emergency.yaml
  9. 47
      financial.yaml
  10. 6
      gastro.yaml
  11. 24
      health.yaml
  12. 35
      law.yaml
  13. 57
      public.yaml
  14. 100
      religion.yaml
  15. 74
      waste.yaml

14
car_amenities.yaml

@ -25,22 +25,22 @@ name:
query:
13: |-
(
nwr[amenity~"^(car_rental|car_sharing|fuel)$"];
nwr[amenity~"^(charging_station)$"][motorcar][motorcar!="no"];
nwr[amenity~"^(charging_station)$"][motorcycle][motorcycle!="no"];
nwr[amenity~"^(.*;|)(car_rental|car_sharing|fuel)(;.*|)$"];
nwr[amenity~"^(.*;|)(charging_station)(;.*|)$"][motorcar][motorcar!="no"];
nwr[amenity~"^(.*;|)(charging_station)(;.*|)$"][motorcycle][motorcycle!="no"];
)
16: |-
(
nwr[amenity~"^(car_rental|car_sharing|car_wash|fuel|motorcycle_parking|parking)$"];
nwr[amenity~"^(charging_station)$"][motorcar][motorcar!="no"];
nwr[amenity~"^(charging_station)$"][motorcycle][motorcycle!="no"];
nwr[amenity~"^(.*;|)(car_rental|car_sharing|car_wash|fuel|motorcycle_parking|parking)(;.*|)$"];
nwr[amenity~"^(.*;|)(charging_station)(;.*|)$"][motorcar][motorcar!="no"];
nwr[amenity~"^(.*;|)(charging_station)(;.*|)$"][motorcycle][motorcycle!="no"];
)
feature:
pre: |-
{% set key = 'amenity' %}
{% set value = tags.amenity %}
description: |-
{{ tagTrans(key, value) }}
{{ tagTransList(key, value) }}
markerSign: |-
{{ const[value] }}
const:

10
communication.yaml

@ -27,13 +27,13 @@ name:
query:
13: |-
(
nwr[amenity~'^(post_office|internet_cafe)$'];
nwr[office~"^(telecommunication|it|newspaper|publisher|advertising_agency)$"];
nwr[amenity~'^(.*;|)(post_office|internet_cafe)(;.*|)$'];
nwr[office~"^(.*;|)(telecommunication|it|newspaper|publisher|advertising_agency)(;.*|)$"];
);
15: |-
(
nwr[amenity~'^(post_office|internet_cafe|post_box|parcel_locker|telephone)$'];
nwr[office~"^(telecommunication|it|newspaper|publisher|advertising_agency)$"];
nwr[amenity~'^(.*;|)(post_office|internet_cafe|post_box|parcel_locker|telephone)(;.*|)$'];
nwr[office~"^(.*;|)(telecommunication|it|newspaper|publisher|advertising_agency)(;.*|)$"];
nwr[vending~"^(|.*;)parcel_pickup(;.*|)$"];
nwr[vending~"^(|.*;)parcel_mail_in(;.*|)$"];
);
@ -52,7 +52,7 @@ feature:
{% endif %}
description: |-
{% if key == 'office' %}
{{ keyTrans('office') }} ({{ tagTrans('office', tags.office) }})
{{ keyTrans('office') }} ({{ tagTransList('office', tags.office) }})
{% else %}
{{ tagTransList(key, value) }}
{% endif %}

3
craft.yaml

@ -20,7 +20,7 @@ name:
sr: Занат
tr: El Sanatları
query:
15: (node[craft];way[craft];relation[craft];);
15: nwr[craft]
feature:
description: '{{ tagTransList("craft", tags.craft) }}'
markerSign: '{% set craft0 = tags.craft|split(";")[0] %}{% if const.crafts[craft0] %}{% set v = const.crafts[craft0] %}{% else %}{% set v = const.default %}{% endif %}{% if v|slice(0, 3) == "fa-" %}<i class="fa {{ v }}"></i>{% else %}{{ v|raw }}{% endif %}'
@ -86,4 +86,5 @@ filter:
name: '{{ trans("filter:type") }}'
type: select
show_default: 'true'
op: has
values: '{% set list = [] %}{% for t, v in const.crafts %}<option value="{{ t }}">{% set list = list|merge([ t ]) %}{{ tagTrans("craft", t) }}</option>{% endfor %}<option value="other" query="nwr[craft][craft!~"^({{ list|join("|") }})$"]">{{ trans("other") }}</option>'

10
culture-media.yaml

@ -13,10 +13,10 @@ query:
15: |
(
nwr[historic];
nwr[tourism~'^(attraction|artwork)$'];
nwr[tourism~'^(.*;|)(attraction|artwork)(;.*|)$'];
nwr[heritage];
nwr[amenity~'^(fountain|arts_centre|place_of_worship|theatre)$'];
nwr[man_made~'^(windmill|watermill|bridge|cairn|cross|geoglyph|hongsalmun|iljumun|lighthouse|obelisk|observatory|offshore_platform|paifang|stupa|torii)$'];
nwr[amenity~'^(.*;|)(fountain|arts_centre|place_of_worship|theatre)(;.*|)$'];
nwr[man_made~'^(.*;|)(windmill|watermill|bridge|cairn|cross|geoglyph|hongsalmun|iljumun|lighthouse|obelisk|observatory|offshore_platform|paifang|stupa|torii)(;.*|)$'];
)
feature:
pre: |
@ -71,13 +71,13 @@ feature:
{% elseif tags.tourism %}
{{ tagTransList('tourism', tags.tourism) }}
{% elseif tags.amenity %}
{{ tagTrans('amenity', tags.amenity) }}
{{ tagTransList('amenity', tags.amenity) }}
{% elseif tags.building %}
{{ tags.building == 'yes' ? keyTrans('building') : tagTrans('building', tags.building) }}
{% elseif tags.heritage %}
{{ keyTrans('heritage') }}
{% elseif tags.man_made %}
{{ tagTrans('man_made', tags.man_made) }}
{{ tagTransList('man_made', tags.man_made) }}
{% endif %}
markerSymbol: "{{ markerPointer({ fillColor: def.color })|raw }}"
listMarkerSymbol: "{{ markerCircle({ fillColor: def.color })|raw }}"

35
culture.yaml

@ -27,16 +27,12 @@ name:
query:
13: |-
(
node[amenity~"^(arts_centre|cinema|community_centre|fountain|studio|theatre)$"];
way[amenity~"^(arts_centre|cinema|community_centre|fountain|studio|theatre)$"];
relation[amenity~"^(arts_centre|cinema|community_centre|fountain|studio|theatre)$"];
node[tourism~"^(artwork|gallery|museum|theme_park)$"];
way[tourism~"^(artwork|gallery|museum|theme_park)$"];
relation[tourism~"^(artwork|gallery|museum|theme_park)$"];
nwr[amenity=clock][display~"^(sundial|unorthodox)$"];
nwr[amenity=clock]["display:sundial"];
nwr[amenity=clock]["display:unorthodox"];
nwr[shop~"^(art)$"];
nwr[amenity~"^(.*;|)(arts_centre|cinema|community_centre|fountain|studio|theatre)(;.*|)$"];
nwr[tourism~"^(.*;|)(artwork|gallery|museum|theme_park)(;.*|)$"];
nwr[amenity~"^(.*;|)clock(;.*|)$"][display~"^(sundial|unorthodox)$"];
nwr[amenity~"^(.*;|)clock(;.*|)$"]["display:sundial"];
nwr[amenity~"^(.*;|)clock(;.*|)$"]["display:unorthodox"];
nwr[shop~"^(.*;|)(art)$"];
)
feature:
pre: |-
@ -53,21 +49,21 @@ feature:
description: |-
{% if key == 'shop' %}
{{ keyTrans(key) }} ({{ tagTrans(key, value) }})
{% elseif tags.amenity == 'clock' %}
{% elseif tags.amenity matches "/^(.*;|)clock(;.*|)$/" %}
{% if tags.display == 'sundial' or attribute(tags, 'display:sundial') %}{{ tagTrans('amenity', 'clock display=sundial') }}{% endif %}
{% if tags.display == 'unorthodox' or attribute(tags, 'display:unorthodox') %}{{ tagTrans('amenity', 'clock display=unorthodox') }}{% endif %}
{% else %}
{{ tagTrans(key, value) }}
{{ tagTransList(key, value) }}
{% endif %}
{% if tags.tourism == 'museum' and tags.museum %}
({{ tagTrans('museum', tags.museum) }})
{% if tags.tourism matches "/^(.*;|)museum(;.*|)$/" and tags.museum %}
({{ tagTransList('museum', tags.museum) }})
{% endif %}
{% if tags.amenity == 'theatre' and attribute(tags, 'theatre:genre') %}
({{ tagTrans('theatre:genre', attribute(tags, 'theatre:genre')) }})
{% if tags.amenity matches "/^(.*;|)theatre(;.*|)$/" and attribute(tags, 'theatre:genre') %}
({{ tagTransList('theatre:genre', attribute(tags, 'theatre:genre')) }})
{% endif %}
{% if tags.amenity == 'community_centre' and tags.community_centre %}
({{ tagTrans('community_centre', tags.community_centre) }})
{% if tags.amenity matches "/^(.*;|)community_centre(;.*|)$/" and tags.community_centre %}
({{ tagTransList('community_centre', tags.community_centre) }})
{% endif %}
body: |-
<ul>
@ -128,7 +124,8 @@ filter:
type:
name: '{{ trans("filter:type") }}'
show_default: 'true'
query: nwr[{{ value }}]
query: |-
nwr[{{ value|replace({ '=': '^' }) }}]
type: select
values: '{% for k, v in const %}<option value="{{ k }}">{{ trans("tag:" ~ k) }}</option>{% endfor %}<option value="other" query="nwr[amenity=fountain]">{{ trans("other") }}</option>'
valueName: '{{ trans("tag:" ~ value) }}'

22
cycle_amenities.yaml

@ -22,31 +22,31 @@ name:
query:
13: |-
(
nwr[amenity~"^(bicycle_rental)$"];
node[amenity~"^(charging_station)$"][bicycle][bicycle!="no"];
nwr[shop~"^(bicycle)$"];
nwr[amenity~"^(.*;|)(bicycle_rental)(;.*|)$"];
node[amenity~"^(.*;|)(charging_station)(;.*|)$"][bicycle][bicycle!="no"];
nwr[shop~"^(.*;|)(bicycle)(;.*|)$"];
nwr[rental~"^(.*;|)bicycle(|;.*)$"];
)
16: |-
(
nwr[amenity~"^(bicycle_.*|compressed_air)$"];
node[amenity~"^(charging_station)$"][bicycle][bicycle!="no"];
nwr[shop~"^(bicycle)$"];
nwr[amenity~"^(.*;|)(bicycle_.*|compressed_air)(;.*|)$"];
node[amenity~"^(.*;|)(charging_station)(;.*|)$"][bicycle][bicycle!="no"];
nwr[shop~"^(.*;|)(bicycle)(;.*|)$"];
nwr["monitoring:bicycle"];
nwr[vending~"^(bicycle_tube)$"];
nwr[vending~"^(.*;|)(bicycle_tube)(;.*|)$"];
nwr[rental~"^(.*;|)bicycle(|;.*)$"];
)
feature:
pre: |-
{% if tags.shop in [ 'bicycle' ] %}
{% if tags.shop and 'bicycle' in tags.shop|split(';') %}
{% set key = 'shop' %}
{% set value = tags.shop %}
{% elseif attribute(tags, "monitoring:bicycle") %}
{% set key = 'man_made' %}
{% set value = 'monitoring_station' %}
{% elseif tags.vending in [ 'bicycle_tube' ] %}
{% elseif tags.vending and 'bicycle_tube' in tags.vending|split(';') %}
{% set key = 'vending' %}
{% set value = tags.vending %}
{% set value = 'bicycle_tube' %}
{% elseif 'bicycle' in tags.rental|split(';') %}
{% set key = 'amenity' %}
{% set value = 'bicycle_rental' %}
@ -64,7 +64,7 @@ feature:
{% if tags.amenity == 'vending_machine' %}
{{ tagTransList('amenity=vending_machine vending', value) }}
{% else %}
{{ tagTrans(key, value) }}
{{ tagTransList(key, value) }}
{% endif %}
body: |-
{% if tags.capacity %}

43
education.yaml

@ -27,31 +27,41 @@ name:
query:
11: |-
(
node[amenity~'^(college|university|library)$'];
way[amenity~'^(college|university|library)$'];
relation[amenity~'^(college|university|library)$'];
nwr[amenity~'^(.*;|)(college|university|library)(;.*|)$'];
)
14: |-
(
nwr[amenity~'^(college|university|library|school|kindergarten|language_school|childcare)$'];
nwr[office~"^(educational_institution|research)$"];
nwr[amenity~'^(.*;|)(college|university|library|school|kindergarten|language_school|childcare)(;.*|)$'];
nwr[office~"^(.*;|)(educational_institution|research)(;.*|)$"];
)
16: |-
(
nwr[amenity~'^(college|university|library|school|kindergarten|language_school|public_bookcase|childcare)$'];
nwr[office~"^(educational_institution|research)$"];
nwr[amenity~'^(.*;|)(college|university|library|school|kindergarten|language_school|public_bookcase|childcare)(;.*|)$'];
nwr[office~"^(.*;|)(educational_institution|research)(;.*|)$"];
)
feature:
pre: |-
{% if tags.office == 'educational_institution' or tags.office == 'research' %}
{% set key = null %}
{% set value = null %}
{% if tags.office and 'educational_institution' in tags.office|split(';') %}
{% set key = 'office' %}
{% set value = tags.office %}
{% set value = 'educational_institution' %}
{% elseif tags.office and 'research' in tags.office|split(';') %}
{% set key = 'office' %}
{% set value = 'research' %}
{% else %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if kv[0] == 'amenity' and kv[1] in tags.amenity|split(';') %}
{% set key = 'amenity' %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
{% endif %}
description: '{{ tagTrans(key, value) }}'
body: '{% if tags.operator %}{{ keyTrans("operator") }}: {{ tags.operator }}<br/>{% endif %}'
description: '{{ tagTransList(key, attribute(tags, key)) }}'
body: |
{% if tags.operator %}{{ keyTrans("operator") }}: {{ tags.operator }}<br/>{% endif %}
markerSign: |-
{% set data = const[key ~ '=' ~ value] %}
{% if data %}
@ -121,4 +131,9 @@ filter:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: '{% for k, v in const %}<option value="{{ k }}" query="nwr[{{ k }}]" minzoom="{{ v.zoom }}">{{ tagTrans(k) }}</option>{% endfor %}'
values: |
{% for k, v in const %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=', '^' }) }}]" minzoom="{{ v.zoom }}">
{{ tagTrans(k) }}
</option>
{% endfor %}

52
emergency.yaml

@ -27,32 +27,34 @@ name:
query:
11: |-
(
nwr[amenity~"^(fire_station|hospital)$"];
nwr[emergency~"^(lifeguard)$"];
nwr[amenity~"^(.*;|)(fire_station|hospital)(;.*|)$"];
nwr[emergency~"^(.*;|)(lifeguard)(;.*|)$"];
)
13: |-
(
nwr[amenity~"^(fire_station|hospital|police)$"];
nwr[emergency~"^(lifeguard)$"];
node[emergency~"^(phone|defibrillator|access_point)$"];
node[highway=emergency_access_point];
nwr[amenity~"^(.*;|)(fire_station|hospital|police)(;.*|)$"];
nwr[emergency~"^(.*;|)(lifeguard)(;.*|)$"];
node[emergency~"^(.*;|)(phone|defibrillator|access_point)(;.*|)$"];
node[highway^emergency_access_point];
)
feature:
pre: |-
{% if tags.amenity in [ 'fire_station', 'hospital', 'police' ] %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% elseif tags.emergency %}
{% set key = 'emergency' %}
{% set value = tags.emergency %}
{% elseif tags.highway == 'emergency_access_point' %}
{% set key = 'highway' %}
{% set value = tags.highway %}
{% endif %}
{% set key = null %}
{% set value = null %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
{% set kv = key ~ "=" ~ value %}
description: '{{ tagTrans(key, value) }}'
markerSign: |-
{% set data = const[kv] %}
description: |-
{{ tagTransList(key, attribute(tags, key)) }}
markerSign: |-
{% if data %}
{{ data.sign|raw }}
{% endif %}
@ -101,22 +103,22 @@ filter:
values:
fire_station:
name: '{{ tagTrans("amenity", "fire_station") }}'
query: nwr[amenity=fire_station]
query: nwr[amenity^fire_station]
hospital:
name: '{{ tagTrans("amenity", "hospital") }}'
query: nwr[amenity=hospital]
query: nwr[amenity^hospital]
police:
name: '{{ tagTrans("amenity", "police") }}'
query: nwr[amenity=police]
query: nwr[amenity^police]
lifeguard:
name: '{{ tagTrans("emergency", "lifeguard") }}'
query: nwr[emergency=lifeguard]
query: nwr[emergency^lifeguard]
emergency_phone:
name: '{{ tagTrans("emergency", "phone") }}'
query: node[emergency=phone]
query: node[emergency^phone]
defibrillator:
name: '{{ tagTrans("emergency", "defibrillator") }}'
query: node[emergency=defibrillator]
query: node[emergency^defibrillator]
emergency_access_point:
name: '{{ tagTrans("highway", "emergency_access_point") }}'
query: (node[highway=emergency_access_point];node[emergency=access_point];)
query: (node[highway^emergency_access_point];node[emergency^access_point];)

47
financial.yaml

@ -25,31 +25,31 @@ name:
uk: Фінанси
query:
14: |-
(
node[amenity~"^(bank)$"];
way[amenity~"^(bank)$"];
relation[amenity~"^(bank)$"];
)
nwr[amenity~"^(.*;|)(bank)(;.*|)$"];
15: |-
(
node[amenity~"^(bank|bureau_de_change|atm)$"];
way[amenity~"^(bank|bureau_de_change|atm)$"];
relation[amenity~"^(bank|bureau_de_change|atm)$"];
node[office~"^(financial|accountant|insurance|tax|tax_advisor)$"];
way[office~"^(financial|accountant|insurance|tax|tax_advisor)$"];
relation[office~"^(financial|accountant|insurance|tax|tax_advisor)$"];
nwr[amenity~"^(.*;|)(bank|bureau_de_change|atm)(;.*|)$"];
nwr[office~"^(.*;|)(financial|accountant|insurance|tax|tax_advisor)(;.*|)$"];
)
feature:
pre: |-
{% if tags.amenity %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% else %}
{% set key = 'office' %}
{% set value = tags.office %}
{% endif %}
description: '{{ tagTrans(key, value) }}'
markerSign: '{{ const[key ~ "=" ~ value].sign|raw }}'
{% set key = null %}
{% set value = null %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
{% set kv = key ~ "=" ~ value %}
{% set data = const[kv] %}
description: |-
{{ tagTransList(key, attribute(tags, key)) }}
markerSign: |-
{{ const[kv].sign|raw }}
info: |-
<table>
{% for kv, data in const %}
@ -96,4 +96,9 @@ filter:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: '{% for k, v in const %}<option value="{{ k }}" query="nwr[{{ k }}]" minzoom="{{ v.zoom }}">{{ tagTrans(k) }}</option>{% endfor %}'
values: |-
{% for k, v in const %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=': '^' }) }}]" minzoom="{{ v.zoom }}">
{{ tagTrans(k) }}
</option>
{% endfor %}

6
gastro.yaml

@ -24,10 +24,10 @@ name:
uk: Гастрономія
type: overpass
query:
15: nwr[amenity~'^(bar|biergarten|cafe|fast_food|food_court|ice_cream|pub|restaurant|canteen)$'];
15: nwr[amenity~'^(.*; *|)(bar|biergarten|cafe|fast_food|food_court|ice_cream|pub|restaurant|canteen)(| *;.*)$'];
feature:
description: |
{{ tagTrans('amenity', tags.amenity) }}
{{ tagTransList('amenity', tags.amenity) }}
details: |
{{ tagTransList('cuisine', tags.cuisine) }}
body: |
@ -70,7 +70,7 @@ filter:
- canteen
valueName: |
{{ tagTrans('amenity', value) }}
op: '='
op: 'has'
cuisine_food:
name: |
{{ keyTrans('cuisine/food') }}

24
health.yaml

@ -26,21 +26,13 @@ name:
query:
11: |-
(
node[amenity~"^(hospital)$"];
way[amenity~"^(hospital)$"];
relation[amenity~"^(hospital)$"];
node[healthcare~"^(hospital|clinic)$"];
way[healthcare~"^(hospital|clinic)$"];
relation[healthcare~"^(hospital|clinic)$"];
nwr[amenity~"^(.*;|)(hospital)(;.*|)$"];
nwr[healthcare~"^(.*;|)(hospital|clinic)(;.*|)$"];
)
14: |-
(
node[amenity~"^(baby_hatch|clinic|dentist|doctors|hospital|nursing_home|pharmacy|social_facility|veterinary)$"];
way[amenity~"^(baby_hatch|clinic|dentist|doctors|hospital|nursing_home|pharmacy|social_facility|veterinary)$"];
relation[amenity~"^(baby_hatch|clinic|dentist|doctors|hospital|nursing_home|pharmacy|social_facility|veterinary)$"];
node[healthcare];
way[healthcare];
relation[healthcare];
nwr[amenity~"^(.*;|)(baby_hatch|clinic|dentist|doctors|hospital|nursing_home|pharmacy|social_facility|veterinary)(;.*|)$"];
nwr[healthcare];
)
feature:
pre: |-
@ -51,6 +43,7 @@ feature:
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% endif %}
{% set kv = key ~ '=' ~ value %}
{% set found = { sign: '' } %}
{% for data in const %}
@ -160,4 +153,9 @@ filter:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: '{% for data in const %}<option value="{{ data.types[0] }}" query="({% for t in data.types %}nwr[{{ t }}];{% endfor %})" minzoom="{{ data.zoom }}">{{ tagTrans(data.types[0]) }}</option>{% endfor %}'
values: |-
{% for data in const %}
<option value="{{ data.types[0] }}" query="({% for t in data.types %}nwr[{{ t|replace({ '=': '^' }) }}];{% endfor %})">
{{ tagTrans(data.types[0]) }}
</option>
{% endfor %}

35
law.yaml

@ -22,23 +22,23 @@ name:
query:
14: |-
(
node[amenity~"^(courthouse)$"];
way[amenity~"^(courthouse)$"];
relation[amenity~"^(courthouse)$"];
node[office~"^(lawyer|notary)$"];
way[office~"^(lawyer|notary)$"];
relation[office~"^(lawyer|notary)$"];
nwr[amenity^courthouse];
nwr[office^lawyer];
nwr[office^notary];
)
feature:
pre: |-
{% if tags.amenity %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% else %}
{% set key = 'office' %}
{% set value = tags.office %}
{% endif %}
description: '{{ tagTrans(key, value) }}'
{% set key = null %}
{% set value = null %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
description: '{{ tagTransList(key, attribute(tags, key)) }}'
markerSign: '{{ const[key ~ "=" ~ value].sign|raw }}'
info: |-
<table>
@ -68,4 +68,9 @@ filter:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: '{% for k, v in const %}<option value="{{ k }}" query="nwr[{{ k }}]" minzoom="{{ v.zoom }}">{{ tagTrans(k) }}</option>{% endfor %}'
values: |-
{% for k, v in const %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=': '^' }) }}]" minzoom="{{ v.zoom }}">
{{ tagTrans(k) }}
</option>
{% endfor %}

57
public.yaml

@ -27,39 +27,41 @@ name:
query:
12: |-
(
node[amenity~'^(embassy|public_building|townhall)$'];
way[amenity~'^(embassy|public_building|townhall)$'];
relation[amenity~'^(embassy|public_building|townhall)$'];
node[amenity=recycling][recyling_type=centre];
way[amenity=recycling][recyling_type=centre];
relation[amenity=recycling][recyling_type=centre];
nwr[office~"^(government|administration)$"];
nwr[amenity~'^(.*;|)(embassy|public_building|townhall)(;.*|)$'];
nwr[amenity=recycling][recyling_type=centre];
nwr[office~"^(.*;|)(government|administration)(;.*|)$"];
);
16: |-
(
node[amenity~'^(embassy|public_building|townhall|clock|drinking_water|recycling|toilets)$'];
way[amenity~'^(embassy|public_building|townhall|recycling|toilets)$'];
relation[amenity~'^(embassy|public_building|townhall|recycling|toilets)$'];
nwr[amenity~'^(.*;|)(embassy|public_building|townhall|clock|drinking_water|recycling|toilets)(;.*|)$'];
node[drinking_water][drinking_water!=no];
nwr[office~"^(government|administration)$"];
nwr[office~"^(.*;|)(government|administration)(;.*|)$"];
);
feature:
pre: |-
{% if tags.amenity %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% elseif tags.office %}
{% set key = 'office' %}
{% set value = tags.office %}
{% elseif tags.drinking_water and tags.drinking_water != 'no' %}
{% set key = 'amenity' %}
{% set value = 'drinking_water' %}
{% set key = null %}
{% set value = null %}
{% if tags.drinking_water and tags.drinking_water != 'no' %}
{% set key = 'amenity' %}
{% set value = 'drinking_water' %}
{% endif %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
description: |-
{% if key == 'office' %}
{{ keyTrans('office') }} ({{ tagTrans('office', tags.office) }})
{% else %}
{{ keyTrans('office') }} ({{ tagTransList('office', tags.office) }})
{% elseif value == 'drinking_water' %}
{{ tagTrans(key, value) }}
{% else %}
{{ tagTransList(key, attribute(tags, key)) }}
{% endif %}
body: '{% if tags.operator %}{{ keyTrans("operator") }}: {{ tags.operator }}<br/>{% endif %}'
markerSign: |-
@ -91,4 +93,13 @@ filter:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: '{% for k, v in const %}<option value="{{ k }}" query="nwr[{{ k }}]" minzoom="{{ v.zoom }}">{{ tagTrans(k) }}</option>{% endfor %}'
values: |-
{% for k, v in const %}
{% if k == 'amenity=drinking_water' %}
<option value="{{ k }}" query="(nwr[dringing_water];nwr[amenity^drinking_water];)">
{% else %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=': '^' }) }}]">
{% endif %}
{{ tagTrans(k) }}
</option>
{% endfor %}

100
religion.yaml

@ -27,39 +27,28 @@ name:
query:
13: |-
(
node[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
way[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
relation[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
way[landuse~"^(cemetery)$"];
relation[landuse~"^(cemetery)$"];
nwr[amenity~"^(.*;|)(place_of_worship|grave_yard|crematorium)(;.*|)$"];
nwr[landuse~"^(.*;|)(cemetery)(;.*|)$"];
)
14: |-
(
node[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
way[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
relation[amenity~"^(place_of_worship|grave_yard|crematorium)$"];
way[landuse~"^(cemetery)$"];
relation[landuse~"^(cemetery)$"];
node[historic~"^wayside_(cross|shrine|chapel)$"];
way[historic~"^wayside_(cross|shrine|chapel)$"];
relation[historic~"^wayside_(cross|shrine|chapel)$"];
nwr[office~"^(parish|religion)$"];
nwr[amenity~"^(.*;|)(place_of_worship|grave_yard|crematorium)(;.*|)$"];
nwr[landuse~"^(.*;|)(cemetery)(;.*|)$"];
nwr[historic~"^(.*;|)wayside_(cross|shrine|chapel)(;.*|)$"];
nwr[office~"^(.*;|)(parish|religion)(;.*|)$"];
)
feature:
pre: |-
{% if tags.landuse == 'cemetery' %}
{% set key = 'landuse' %}
{% set value = tags.landuse %}
{% elseif tags.historic in [ 'wayside_cross', 'wayside_shrine', 'wayside_chapel' ] %}
{% set key = 'historic' %}
{% set value = tags.historic %}
{% elseif tags.office %}
{% set key = 'office' %}
{% set value = tags.office %}
{% else %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% endif %}
{% set key = null %}
{% set value = null %}
{% for k, d in const.types %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
description: |-
{% if tags.building and tags.religion %}
{% if isTranslated('tag:building=' ~ tags.building ~ ' religion=' ~ tags.religion) %}
@ -67,10 +56,10 @@ feature:
{% elseif tags.building != 'yes' %}
{{ trans('tag:building=' ~ tags.building) }}
{% else %}
{{ tagTrans(key, value) }}
{{ tagTransList(key, attribute(tags, key)) }}
{% endif %}
{% else %}
{{ tagTrans(key, value) }}
{{ tagTransList(key, attribute(tags, key)) }}
{% endif %}
listDetails: '{{ tagTransList("religion", tags.religion) }}{% if tags.denomination %} - {{ tagTransList("denomination", tags.denomination) }}{% endif %}'
body: |-
@ -85,6 +74,25 @@ feature:
{% endif %}
markerSign: '{{ const.religion[tags.religion] }}'
const:
types:
landuse=cemetery:
zoom: 13
historic=wayside_cross:
zoom: 14
historic=wayside_shrine:
zoom: 14
historic=wayside_chapel:
zoom: 14
amenity=place_of_worship:
zoom: 13
amenity=grave_yard:
zoom: 13
amenity=crematorium:
zoom: 13
office=parish:
zoom: 14
office=religion:
zoom: 14
religion:
christian:
muslim:
@ -116,34 +124,12 @@ filter:
show_default: 'true'
query: nwr[{{ value }}]
type: select
values:
place_of_worship:
name: '{{ tagTrans("amenity", "place_of_worship") }}'
query: nwr[amenity=place_of_worship]
grave_yard:
name: '{{ tagTrans("amenity", "grave_yard") }}'
query: nwr[amenity=grave_yard]
crematorium:
name: '{{ tagTrans("amenity", "crematorium") }}'
query: nwr[amenity=crematorium]
cemetery:
name: '{{ tagTrans("landuse", "cemetery") }}'
query: nwr[landuse=cemetery]
wayside_cross:
name: '{{ tagTrans("historic", "wayside_cross") }}'
query: nwr[historic=wayside_cross]
wayside_shrine:
name: '{{ tagTrans("historic", "wayside_shrine") }}'
query: nwr[historic=wayside_shrine]
wayside_chapel:
name: '{{ tagTrans("historic", "wayside_chapel") }}'
query: nwr[historic=wayside_chapel]
parish:
name: '{{ tagTrans("office", "parish") }}'
query: nwr[office=parish]
office:
name: '{{ tagTrans("office", "religion") }}'
query: nwr[office=religion]
values: |-
{% for k, v in const.types %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=': '^' }) }}]" minzoom="{{ v.zoom }}">
{{ tagTrans(k) }}
</option>
{% endfor %}
religion:
name: '{{ keyTrans("religion") }}'
show_default: 'true'

74
waste.yaml

@ -23,63 +23,46 @@ name:
query:
13: |-
(
node[landuse=landfill];
node[man_made~"^(wastewater_plant|incinerator)$"];
node[amenity=recycling][recycling_type=centre];
way[landuse=landfill];
way[man_made~"^(wastewater_plant|incinerator)$"];
way[amenity=recycling][recycling_type=centre];
relation[landuse=landfill];
relation[man_made~"^(wastewater_plant|incinerator)$"];
relation[amenity=recycling][recycling_type=centre];
nwr[landuse=landfill];
nwr[man_made~"^(wastewater_plant|incinerator)$"];
nwr[amenity=recycling][recycling_type=centre];
nwr[amenity=waste_transfer_station];
nwr[power=generator]["generator:source"~"^(.*;|)waste(;.*|)$"];
)
15: |-
(
node[landuse=landfill];
node[man_made~"^(wastewater_plant|incinerator)$"];
node[amenity~"^(recycling|waste_disposal|waste_transfer_station)$"];
way[landuse=landfill];
way[man_made~"^(wastewater_plant|incinerator)$"];
way[amenity~"^(recycling|waste_disposal|waste_transfer_station)$"];
relation[landuse=landfill];
relation[man_made~"^(wastewater_plant|incinerator)$"];
relation[amenity~"^(recycling|waste_disposal|waste_transfer_station)$"];
nwr[landuse=landfill];
nwr[man_made~"^(wastewater_plant|incinerator)$"];
nwr[amenity~"^(recycling|waste_disposal|waste_transfer_station)$"];
nwr[power=generator]["generator:source"~"^(.*;|)waste(;.*|)$"];
)
18: |-
(
node[landuse=landfill];
node[man_made~"^(wastewater_plant|incinerator)$"];
node[amenity~"^(recycling|waste_basket|waste_disposal|waste_transfer_station)$"];
way[landuse=landfill];
way[man_made~"^(wastewater_plant|incinerator)$"];
way[amenity~"^(recycling|waste_basket|waste_disposal|waste_transfer_station)$"];
relation[landuse=landfill];
relation[man_made~"^(wastewater_plant|incinerator)$"];
relation[amenity~"^(recycling|waste_basket|waste_disposal|waste_transfer_station)$"];
nwr[landuse=landfill];
nwr[man_made~"^(wastewater_plant|incinerator)$"];
nwr[amenity~"^(recycling|waste_basket|waste_disposal|waste_transfer_station)$"];
nwr[power=generator]["generator:source"~"^(.*;|)waste(;.*|)$"];
)
feature:
pre: |-
{% set key = null %}
{% set value = null %}
{% set add = '' %}
{% if tags.landuse == 'landfill' %}
{% set key = 'landuse' %}
{% set value = tags.landuse %}
{% elseif tags.man_made in [ 'incinerator', 'wastewater_plant' ] %}
{% set key = 'man_made' %}
{% set value = tags.man_made %}
{% elseif tags.amenity in [ 'recycling', 'waste_basket', 'waste_disposal', 'waste_transfer_station' ] %}
{% set key = 'amenity' %}
{% set value = tags.amenity %}
{% elseif tags.power == 'generator' %}
{% set key = 'power' %}
{% set value = tags.power %}
{% for k, d in const %}
{% set kv = k|split('=') %}
{% if attribute(tags, kv[0]) and kv[1] in attribute(tags, kv[0])|split(';') %}
{% set key = kv[0] %}
{% set value = kv[1] %}
{% endif %}
{% endfor %}
{% if key == 'power' and value == 'generator' %}
{% set add = '(' ~ tagTransList('generator:source', attribute(tags, 'generator:source')) ~ ')' %}
{% endif %}
{% set kv = key ~ '=' ~ value %}
description: '{{ tagTrans(key, value) }} {{ add }}'
description: '{{ tagTransList(key, attribute(tags, key)) }} {{ add }}'
body: |-
{% if tags.recycling_type %}
{{ keyTrans('recycling_type') }}: {{ tagTrans('recycling_type', tags.recycling_type) }}
@ -105,6 +88,17 @@ info: |-
<td>{{ trans('other') }}</td>
</tr>
</table>
filter:
type:
name: '{{ trans("filter:type") }}'
show_default: 'true'
type: select
values: |-
{% for k, v in const %}
<option value="{{ k }}" query="nwr[{{ k|replace({ '=': '^' }) }}]" minzoom="{{ v.zoom }}">
{{ tagTrans(k) }}
</option>
{% endfor %}
const:
amenity=recycling:
minZoom: 13

Loading…
Cancel
Save