Merge branch 'main' into patch-3

This commit is contained in:
SteveLz 2025-08-07 14:11:23 +08:00 committed by GitHub
commit 3254c4b2af
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
468 changed files with 233689 additions and 29772 deletions

View file

@ -1,12 +1,14 @@
{
"type": "address",
"key": "addr",
"reference": {
"key": "addr:*"
},
"keys": [
"addr:block_number",
"addr:city",
"addr:block_number",
"addr:conscriptionnumber",
"addr:county",
"addr:country",
"addr:county",
"addr:district",
@ -23,6 +25,7 @@
"addr:street",
"addr:subdistrict",
"addr:suburb",
"addr:town",
"addr:unit"
],
"label": "Address",
@ -61,6 +64,7 @@
"subdistrict!vn": "Ward/Commune/Townlet",
"suburb": "Suburb",
"suburb!jp": "Ward (政令市)",
"town": "Town",
"unit": "Unit"
}
},

View file

@ -0,0 +1,16 @@
{
"key": "aircraft:type",
"type": "semiCombo",
"label": "Type",
"strings": {
"options": {
"military": "Military",
"helicopter": "Helicopter",
"airliner": "Airliner",
"jet": "Jet",
"fixed_wing": "Fixed Wing",
"cargo": "Cargo",
"glider": "Glider"
}
}
}

16
data/fields/alt_name.json Normal file
View file

@ -0,0 +1,16 @@
{
"key": "alt_name",
"type": "localized",
"label": "Alternative Name",
"universal": true,
"terms": [
"aka",
"alias",
"also known as",
"nonstandard name",
"secondary name"
],
"prerequisiteTag": {
"key": "name"
}
}

View file

@ -12,7 +12,9 @@
"bust": "Bust",
"painting": "Painting",
"mosaic": "Mosaic",
"relief": "Relief"
"relief": "Relief",
"stone": "Artistically Worked Stone",
"tilework": "Tile Work"
}
}
}

View file

@ -3,5 +3,6 @@
"type": "typeCombo",
"label": "Type",
"usage": "group",
"placeholder": "Default"
"placeholder": "Default",
"stringsCrossReference": "{bridge_combo}"
}

View file

@ -0,0 +1,32 @@
{
"key": "camp_site",
"type": "combo",
"label": "Type",
"options": [
"basic",
"standard",
"serviced",
"deluxe"
],
"strings": {
"options": {
"basic": {
"title": "Basic (only tent/vehicle spots)",
"description": "Nothing but a place to pitch a tent or park a vehicle"
},
"standard": {
"title": "Standard (offers toilets and water)",
"description": "Toilets and water are provided or available nearby"
},
"serviced": {
"title": "Serviced (offers showers and electricity)",
"description": "Toilets, water, showers and electricity are provided"
},
"deluxe": {
"title": "Deluxe (offers laundry or swimming pool, etc.)",
"description": "Fully serviced and has additional amenities like a laundry, swimming pool or similar recreation facilities"
}
}
},
"autoSuggestions": false
}

View file

@ -0,0 +1,10 @@
{
"key": "climbing:bolts",
"type": "number",
"minValue": 0,
"label": "Number of Bolts",
"prerequisiteTag": {
"key": "climbing:sport",
"value": "yes"
}
}

View file

@ -0,0 +1,48 @@
{
"key": "climbing:grade:french",
"type": "combo",
"label": "Grade (French)",
"placeholder": "5c",
"caseSensitive": false,
"customValues": true,
"autoSuggestions": false,
"options": [
"1",
"2",
"3-",
"3",
"3+",
"4a",
"4b",
"4c",
"5a",
"5b",
"5c",
"5c+",
"6a",
"6a+",
"6b",
"6b+",
"6c",
"6c+",
"7a",
"7a+",
"7b",
"7b+",
"7c",
"7c+",
"8a",
"8a+",
"8b",
"8b+",
"8c",
"8c+",
"9a",
"9a+",
"9b",
"9b+",
"9c",
"9c+",
"10a"
]
}

View file

@ -0,0 +1,39 @@
{
"key": "climbing:grade:saxon",
"type": "combo",
"label": "Grade (Saxon)",
"placeholder": "VIIa",
"caseSensitive": true,
"customValues": true,
"autoSuggestions": false,
"options": [
"I",
"II",
"III",
"IV",
"V",
"VI",
"VIIa",
"VIIb",
"VII",
"VIIc",
"VIIIa",
"VIIIb",
"VIIIc",
"IXa",
"IXb",
"IXc",
"Xa",
"Xb",
"Xc",
"XIa",
"XIb",
"XIc",
"XIIa",
"XIIb",
"XIIc",
"XIIIa",
"XIIIb",
"XIIIc"
]
}

View file

@ -0,0 +1,51 @@
{
"key": "climbing:grade:uiaa",
"type": "combo",
"label": "Grade (UIAA)",
"placeholder": "6-",
"caseSensitive": false,
"customValues": true,
"autoSuggestions": false,
"options": [
"1-",
"1",
"1+",
"2-",
"2",
"2+",
"3-",
"3",
"3+",
"4-",
"4",
"4+",
"5-",
"5",
"5+",
"6-",
"6",
"6+",
"7-",
"7",
"7+",
"8-",
"8",
"8+",
"9-",
"9",
"9+",
"10-",
"10",
"10+",
"11-",
"11",
"11+",
"12-",
"12",
"12+",
"13-",
"13",
"13+",
"14-"
]
}

View file

@ -0,0 +1,45 @@
{
"key": "climbing:grade:yds_class",
"type": "combo",
"label": "Grade (YDS)",
"placeholder": "5.10a",
"caseSensitive": false,
"customValues": true,
"autoSuggestions": false,
"options": [
"5",
"5.1",
"5.2",
"5.3",
"5.4",
"5.5",
"5.6",
"5.7",
"5.8",
"5.9",
"5.10a",
"5.10b",
"5.10c",
"5.10d",
"5.11a",
"5.11b",
"5.11c",
"5.11d",
"5.12a",
"5.12b",
"5.12c",
"5.12d",
"5.13a",
"5.13b",
"5.13c",
"5.13d",
"5.14a",
"5.14b",
"5.14c",
"5.14d",
"5.15a",
"5.15b",
"5.15c",
"5.15d"
]
}

View file

@ -0,0 +1,6 @@
{
"key": "climbing:length",
"type": "number",
"minValue": 0,
"label": "Length (Meters)"
}

View file

@ -0,0 +1,5 @@
{
"key": "climbing:sport",
"type": "check",
"label": "Sport climbing (bolted climbing)"
}

View file

@ -0,0 +1,5 @@
{
"key": "climbing:trad",
"type": "check",
"label": "Traditional climbing"
}

View file

@ -0,0 +1,16 @@
{
"key": "community_centre",
"type": "combo",
"label": "Type",
"strings": {
"options": {
"club_home": "Club Home",
"community_hall": "Community Hall",
"cultural_centre": "Cultural Centre",
"family_centre": "Family Centre",
"parish_hall": "Parish Hall",
"village_hall": "Village Hall",
"youth_centre": "Youth Center"
}
}
}

View file

@ -2,6 +2,7 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"options": [
@ -15,6 +16,5 @@
"include": [
"BG"
]
},
"autoSuggestions": false
}
}

View file

@ -2,6 +2,9 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"options": [
"zebra",
"yes",
@ -10,9 +13,6 @@
"dashes",
"surface"
],
"autoSuggestions": false,
"iconsCrossReference": "{crossing/markings}",
"stringsCrossReference": "{crossing/markings}",
"locationSet": {
"include": [
"DE",

View file

@ -2,6 +2,9 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"options": [
"zebra",
"dots",
@ -9,9 +12,6 @@
"yes",
"no"
],
"autoSuggestions": false,
"iconsCrossReference": "{crossing/markings}",
"stringsCrossReference": "{crossing/markings}",
"locationSet": {
"include": [
"PL"

View file

@ -2,9 +2,10 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"default": "yes",
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"default": "yes",
"options": [
"zebra",
"no",
@ -16,6 +17,5 @@
"include": [
"BG"
]
},
"autoSuggestions": false
}
}

View file

@ -2,6 +2,10 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"default": "yes",
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"options": [
"zebra",
"yes",
@ -10,15 +14,11 @@
"dashes",
"surface"
],
"autoSuggestions": false,
"iconsCrossReference": "{crossing/markings}",
"stringsCrossReference": "{crossing/markings}",
"locationSet": {
"include": [
"DE",
"AT",
"CH"
]
},
"default": "yes"
}
}

View file

@ -2,6 +2,10 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"autoSuggestions": false,
"default": "yes",
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"options": [
"zebra",
"dots",
@ -9,13 +13,9 @@
"yes",
"no"
],
"autoSuggestions": false,
"iconsCrossReference": "{crossing/markings}",
"stringsCrossReference": "{crossing/markings}",
"locationSet": {
"include": [
"PL"
]
},
"default": "yes"
}
}

View file

@ -2,9 +2,9 @@
"key": "crossing:markings",
"type": "combo",
"label": "{crossing/markings}",
"default": "yes",
"stringsCrossReference": "{crossing/markings}",
"iconsCrossReference": "{crossing/markings}",
"default": "yes",
"locationSet": {
"exclude": [
"BG",

View file

@ -0,0 +1,16 @@
{
"key": "cycle_barrier",
"type": "combo",
"label": "Type",
"customValues": false,
"autoSuggestions": false,
"strings": {
"options": {
"single": "Single",
"double": "Double",
"triple": "Triple",
"diagonal": "Diagonal",
"tilted": "Tilted"
}
}
}

View file

@ -0,0 +1,14 @@
{
"key": "cycle_barrier:installation",
"type": "combo",
"label": "Installation",
"customValues": false,
"autoSuggestions": false,
"strings": {
"options": {
"fixed": "Fixed",
"openable": "Openable",
"removable": "Removable"
}
}
}

View file

@ -36,17 +36,17 @@
"title": "Bike Lane Shared With Bus",
"description": "A bike lane shared with a bus lane"
},
"opposite_lane": {
"title": "Opposite Bike Lane",
"description": "A bike lane that travels in the opposite direction of traffic"
},
"opposite": {
"title": "Contraflow Bike Lane",
"description": "A bike lane that travels in both directions on a one-way street"
},
"separate": {
"title": "Cycleway Mapped Separately",
"description": "Indicates that cycleway was mapped as a separate geometry"
},
"opposite_lane": {
"title": "(Deprecated) Opposite Bike Lane",
"description": "Please update with oneway, oneway:bicycle, and cycleway:left/right=lane etc."
},
"opposite": {
"title": "(Deprecated) Contraflow Bike Lane",
"description": "Please update with oneway=yes, oneway:bicycle=no, and cycleway:both=no etc."
}
}
},

View file

@ -0,0 +1,10 @@
{
"key": "deflection",
"type": "number",
"label": "Angle",
"increment": 5,
"prerequisiteTag": {
"key": "cycle_barrier",
"value": "diagonal"
}
}

View file

@ -0,0 +1,5 @@
{
"key": "dog",
"type": "check",
"label": "Suitable For Dogs"
}

View file

@ -0,0 +1,18 @@
{
"key": "education",
"type": "typeCombo",
"label": "Type",
"strings": {
"options": {
"college": "College",
"dancing_school": "Dancing School",
"driving_school": "Driving School",
"kindergarten": "Kindergarten",
"language_school": "Language School",
"music_school": "Music School",
"prep_school": "Test Prep / Tutoring School",
"school": "School",
"university": "University"
}
}
}

View file

@ -8,6 +8,7 @@
"main": "Main",
"secondary": "Secondary",
"service": "Service",
"shop": "Shop Entrance",
"exit": "Exit Only",
"entrance": "Entrance Only",
"emergency": "Emergency Exit",

View file

@ -4,5 +4,6 @@
"label": "Hashtags",
"usage": "changeset",
"placeholder": "#example",
"autoSuggestions": false,
"caseSensitive": true
}

View file

@ -1,7 +1,7 @@
{
"key": "internet_access:fee",
"type": "combo",
"label": "Internet Access",
"label": "Internet Access Fee",
"strings": {
"options": {
"no": "Free",

View file

@ -0,0 +1,16 @@
{
"key": "irrigation",
"type": "defaultCheck",
"label": "Center-Pivot Irrigation",
"terms": [
"central pivot irrigation",
"water wheel",
"circle irrigation"
],
"strings": {
"options": {
"undefined": "No",
"pivot": "Yes"
}
}
}

7
data/fields/layer_1.json Normal file
View file

@ -0,0 +1,7 @@
{
"key": "layer",
"type": "number",
"label": "{layer}",
"placeholder": "0",
"default": "1"
}

15
data/fields/loc_name.json Normal file
View file

@ -0,0 +1,15 @@
{
"key": "loc_name",
"type": "localized",
"label": "Local Name",
"universal": true,
"terms": [
"colloquial name",
"common name",
"informal name",
"nickname"
],
"prerequisiteTag": {
"key": "name"
}
}

View file

@ -0,0 +1,9 @@
{
"key": "manufacturer:wikidata",
"keys": [
"manufacturer:wikidata",
"manufacturer:wikipedia"
],
"type": "wikidata",
"label": "Manufacturer Wikidata"
}

View file

@ -1,5 +1,15 @@
{
"key": "map_type",
"type": "typeCombo",
"label": "Type"
"label": "Type",
"strings": {
"options": {
"topo": "Topographical Map",
"street": "Road Map",
"scheme": "Schematic Map",
"toposcope": "Toposcope"
}
},
"autoSuggestions": false,
"customValues": false
}

View file

@ -0,0 +1,6 @@
{
"key": "maxwidth:physical",
"type": "roadheight",
"label": "Width Limit",
"snake_case": false
}

View file

@ -7,6 +7,7 @@
"blue_plaque": "Blue Plaque",
"bust": "Bust",
"cross": "Memorial Cross",
"ghost_bike": "Ghost Bike",
"obelisk": "Obelisk",
"plaque": "Commemorative Plaque",
"sculpture": "Sculpture",

View file

@ -0,0 +1,9 @@
{
"key": "model:wikidata",
"keys": [
"model:wikidata",
"model:wikipedia"
],
"type": "wikidata",
"label": "Model Wikidata"
}

View file

@ -0,0 +1,9 @@
{
"key": "nat_name",
"type": "localized",
"label": "National Name",
"universal": true,
"prerequisiteTag": {
"key": "name"
}
}

View file

@ -0,0 +1,14 @@
{
"key": "official_name",
"type": "localized",
"label": "Official Name",
"universal": true,
"terms": [
"formal name",
"full name",
"legal name"
],
"prerequisiteTag": {
"key": "name"
}
}

10
data/fields/opening.json Normal file
View file

@ -0,0 +1,10 @@
{
"key": "opening",
"type": "number",
"label": "Opening Width (Meters)",
"snake_case": false,
"prerequisiteTag": {
"key": "cycle_barrier",
"valueNot": "single"
}
}

10
data/fields/overlap.json Normal file
View file

@ -0,0 +1,10 @@
{
"key": "overlap",
"type": "number",
"label": "Overlap Width (Meters)",
"snake_case": false,
"prerequisiteTag": {
"key": "cycle_barrier",
"valueNot": "single"
}
}

View file

@ -0,0 +1,8 @@
{
"key": "panoramax",
"type": "identifier",
"label": "Panoramax Image ID",
"urlFormat": "https://api.panoramax.xyz/#focus=pic&pic={value}",
"pattern": "^[a-zA-Z0-9-]{36,}$",
"universal": true
}

View file

@ -4,19 +4,58 @@
"label": "Type",
"strings": {
"options": {
"surface": "Surface",
"underground": "Underground",
"multi-storey": "Multilevel",
"lane": "Roadside Lane",
"carports": "Carports",
"garage_boxes": "Garage Boxes",
"rooftop": "Rooftop",
"sheds": "Sheds",
"street_side": "Street-Side",
"layby": "Turnout / Lay-By",
"on_kerb": "On Kerb",
"half_on_kerb": "Half On Kerb",
"shoulder": "Shoulder"
"surface": {
"title": "Surface",
"description": "One level of parking on the ground."
},
"street_side": {
"title": "Street-Side",
"description": "Parking directly adjacent to the street (but not on it)."
},
"lane": {
"title": "Roadside Lane",
"description": "Parking on the street (which could be easily converted to a travel lane)."
},
"underground": {
"title": "Underground",
"description": "Underground parking."
},
"multi-storey": {
"title": "Multilevel",
"description": "Two or more levels of parking decks in a building structure."
},
"rooftop": {
"title": "Rooftop",
"description": "One level of a parking deck on top of a building."
},
"carports": {
"title": "Carports",
"description": "Structure used to offer limited protection to vehicles, typically without walls."
},
"garage_boxes": {
"title": "Garage Boxes",
"description": "Private garage with multiple individual boxes for one car each."
},
"sheds": {
"title": "Sheds",
"description": "Private hangars for vehicles."
},
"layby": {
"title": "Turnout / Lay-By",
"description": "Parking at a rest area, alongside a road."
},
"on_kerb": {
"title": "On Kerb",
"description": "Parking on the sidewalk."
},
"half_on_kerb": {
"title": "Half On Kerb",
"description": "Parking partially on the sidewalk."
},
"shoulder": {
"title": "Shoulder",
"description": "Parking on the shoulder."
}
}
},
"autoSuggestions": false,

View file

@ -13,7 +13,8 @@
"ice_skate": "Ice Skate",
"snow_park": "Snow Park",
"playground": "Playground",
"connection": "Connection"
"connection": "Connection",
"ski_jump": "Ski Jump"
}
},
"autoSuggestions": false,

View file

@ -3,7 +3,7 @@
"type": "identifier",
"label": "SIRET Number",
"urlFormat": "https://annuaire-entreprises.data.gouv.fr/etablissement/{value}",
"pattern": "^[0-9]{9}([1-7][0-9]{3}|0[1-9][0-9]{2}|00[1-9][0-9]|000[1-9])[0-9]$",
"pattern": "^MONACO[A-Z\\d]{5}001|\\d{9}([1-7]\\d{3}|0[1-9]\\d{2}|00[1-9]\\d|000[1-9])\\d$",
"locationSet": {
"include": [
"fr"

View file

@ -0,0 +1,9 @@
{
"key": "reg_name",
"type": "localized",
"label": "Regional Name",
"universal": true,
"prerequisiteTag": {
"key": "name"
}
}

View file

@ -1,5 +1,5 @@
{
"key": "roller_coaster",
"key": "roller_coaster:track",
"type": "combo",
"label": "Type",
"strings": {

View file

@ -0,0 +1,6 @@
{
"key": "roof:height",
"minValue": 0,
"type": "number",
"label": "Roof Height (Meters)"
}

View file

@ -0,0 +1,23 @@
{
"key": "roof:shape",
"type": "combo",
"label": "Roof Shape",
"strings": {
"options": {
"flat": "Flat",
"gabled": "Gabled",
"skillion": "Skillion",
"hipped": "Hipped",
"half-hipped": "Half-Hipped",
"mansard": "Mansard",
"gambrel": "Gambrel",
"pyramidal": "Pyramidal",
"cone": "Cone",
"dome": "Dome",
"onion": "Onion",
"round": "Round"
}
},
"autoSuggestions": true,
"customValues": false
}

View file

@ -5,6 +5,7 @@
"placeholder": "Mountain Hiking, Alpine Hiking...",
"strings": {
"options": {
"strolling": "Strolling",
"hiking": "T1: Hiking",
"mountain_hiking": "T2: Mountain Hiking",
"demanding_mountain_hiking": "T3: Demanding Mountain Hiking",

View file

@ -0,0 +1,14 @@
{
"key": "short_name",
"type": "localized",
"label": "Short Name",
"universal": true,
"terms": [
"abbreviation",
"acronym",
"initialism"
],
"prerequisiteTag": {
"key": "name"
}
}

View file

@ -1,8 +1,8 @@
{
"key": "source",
"type": "semiCombo",
"universal": true,
"label": "Sources",
"usage": "changeset",
"snake_case": false,
"caseSensitive": true,
"strings": {

10
data/fields/spacing.json Normal file
View file

@ -0,0 +1,10 @@
{
"key": "spacing",
"type": "number",
"label": "Distance Between Barriers (Meters)",
"snake_case": false,
"prerequisiteTag": {
"key": "cycle_barrier",
"valueNot": "single"
}
}

View file

@ -51,6 +51,7 @@
"shooting": "Shooting",
"skateboard": "Skateboard",
"skiing": "Skiing",
"ski_jumping": "Ski Jumping",
"soccer": "Soccer",
"softball": "Softball",
"speedway": "Motorcycle Speedway",

View file

@ -0,0 +1,15 @@
{
"type": "structureRadio",
"keys": [
"bridge",
"tunnel"
],
"label": "Structure",
"placeholder": "Unknown",
"strings": {
"options": {
"bridge": "Bridge",
"tunnel": "Tunnel"
}
}
}

View file

@ -3,5 +3,6 @@
"type": "typeCombo",
"label": "Type",
"usage": "group",
"placeholder": "Default"
"placeholder": "Default",
"stringsCrossReference": "{tunnel_combo}"
}

View file

@ -10,6 +10,7 @@
"coffee": "Coffee",
"condoms": "Condoms",
"drinks": "Drinks",
"e-cigarettes": "E-Cigarettes",
"eggs": "Eggs",
"electronics": "Electronics",
"elongated_coin": "Souvenir Coins",