Skip to content

add Weather Station preset#1558

Closed
novolife wants to merge 11 commits intoopenstreetmap:mainfrom
novolife:weather
Closed

add Weather Station preset#1558
novolife wants to merge 11 commits intoopenstreetmap:mainfrom
novolife:weather

Conversation

@novolife
Copy link
Copy Markdown
Contributor

Description, Motivation & Context

man_made=monitoring_station + monitoring:weather=yes

Weather stations are very common in the world.

Related issues

Links and data

Relevant OSM Wiki links:
https://wiki.openstreetmap.org/wiki/Key:monitoring:weather

Relevant tag usage stats:
11,051 (monitoring:weather + man_made)

Checklist and Test-Documentation Template

Read on to get your PR merged faster…

Follow these steps to test your PR yourself and make it a lot easier and faster for maintainers to check and approve it.

This is how it works:

  1. After you submit your PR, the system will create a preview and comment on your PR:

    🍱 You can preview the tagging presets of this pull request here.
    If this is your first contribution to this project, the preview will not happen right away but requires a click from one of the project members. We will do this ASAP.

  2. Once the preview is ready, use it to test your changes.

  3. Now copy the snippet below into a new comment and fill out the blanks.

  4. Now your PR is ready to be reviewed.

## Test-Documentation

### Preview links & Sidebar Screenshots

<!-- Use the preview to find examples, select the feature in question and **copy this link here**.
     Find examples of nodes/areas. Find examples with a lot of tags or very few tags. – Whatever helps to test this thoroughly.
     Add relevant **screenshots** of the sidebar of those examples. -->

<!-- FYI: What we will check:
     - Is the [icon](https://github.com/ideditor/schema-builder/blob/main/ICONS.md) well chosen.
     - Are the fields well-structured and have good labels.
     - Do the dropdowns (etc.) work well and show helpful data. -->

### Search

<!-- **Test the search** of your preset and share relevant **screenshots** here.
     - Test the preset name as search terms.
     - Also test the preset terms and aliases as search terms (if present). -->

### Info-`i`

<!-- **Test the info-i** for your fields and preset and share relevant **screenshots** here.
     The info needs to help mappers understand the preset and when to use it.
     [Learn more…](https://github.com/openstreetmap/id-tagging-schema/blob/main/CONTRIBUTING.md#info-i)
 -->

### Wording

- [ ] American English
- [ ] `name`, `aliases` (if present) use Title Case
- [ ] `terms` (if present) use lower case, sorted A-Z
<!-- Learn more in https://github.com/openstreetmap/id-tagging-schema/blob/main/GUIDELINES.md#2-design-the-preset -->

@github-actions
Copy link
Copy Markdown

🍱 Your pull request preview is ready

Please use this preview to check your changes. Ideally use the test documentation template and document your test results by commenting on the PR. This will speed up the review process for everyone.

FYI, once this PR is merged, you can use the iD Editor Preview to test your changes in interaction with all other changes.

@tordans
Copy link
Copy Markdown
Collaborator

tordans commented May 23, 2025

For reference, those are the fields that are added indirectly:

https://github.com/openstreetmap/id-tagging-schema/blob/main/data/presets/man_made/monitoring_station.json#L8-L15


I wonder: Should this have more of the "important tags" from https://wiki.openstreetmap.org/wiki/Key:monitoring:weather#Important_Tags?
It might be worth double checking the actual usage of those tag combinations.

Actually, I just played around with postpass to see if that is usable. The queries are not ideal, but it produces a few numbers…

Show numbers

curl -g http://postpass.geofabrik.de/api/0.2/interpreter --data-urlencode "data=
    SELECT 'name' AS tag, COUNT(*) AS station_count, NULL::geometry AS geom
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'name'
UNION ALL
    SELECT 'int_name', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'int_name'
UNION ALL
    SELECT 'ref:wmo', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'ref:wmo'
UNION ALL
    SELECT 'ref:wigos', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'ref:wigos'
UNION ALL
    SELECT 'ref', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'ref'
UNION ALL
    SELECT 'ref:icao', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'ref:icao'
UNION ALL
    SELECT 'ele', COUNT(*), NULL::geometry
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'
    AND tags ? 'ele'"

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "ele",
                "station_count": 2116
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "ref:icao",
                "station_count": 110
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "ref:wigos",
                "station_count": 163
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "ref:wmo",
                "station_count": 825
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "int_name",
                "station_count": 293
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "ref",
                "station_count": 2675
            }
        },
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "name",
                "station_count": 5958
            }
        }
    ],
    "properties": {
        "generator": "Postpass API 0.2",
        "timestamp": "2025-05-23T12:20:32Z"
    }
}
% curl -g http://postpass.geofabrik.de/api/0.2/interpreter --data-urlencode "data=
    SELECT 'total' AS tag, COUNT(*) AS station_count, NULL::geometry AS geom
    FROM postpass_point
    WHERE tags->>'monitoring:weather' = 'yes'
    AND tags->>'man_made' = 'monitoring_station'"

{
    "type": "FeatureCollection",
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": null
            },
            "properties": {
                "tag": "total",
                "station_count": 8887
            }
        }
    ],
    "properties": {
        "generator": "Postpass API 0.2",
        "timestamp": "2025-05-23T12:25:36Z"
    }
}

@novolife
Copy link
Copy Markdown
Contributor Author

Test-Documentation

Preview links & Sidebar Screenshots

https://pr-1558--ideditor-presets-preview.netlify.app/id/dist/#locale=en&map=17.00/14.65485/121.06466

Node

ss2

Area

ss3

Search

ss1

ss5

Info-i

ss4

Wording

  • American English
  • name, aliases (if present) use Title Case
  • terms (if present) use lower case, sorted A-Z

@tordans
Copy link
Copy Markdown
Collaborator

tordans commented May 23, 2025

@novolife LGTM. Let me know if you want to release this as is or look at the additional fields mentioned in #1558 (comment) first. Both is fine with me.

@novolife
Copy link
Copy Markdown
Contributor Author

#1558

I'm happy to add these fields, at least name and ele seem to be common information. But the question is, are these fields really as important as the wiki says? Honestly, I am not so familiar with weather.

@novolife
Copy link
Copy Markdown
Contributor Author

novolife commented May 23, 2025

ss1

ss2

@tordans
Copy link
Copy Markdown
Collaborator

tordans commented May 23, 2025

@gmgeo it looks like you know a bit about weather stations because I think you edited the wiki page. Could you check this preview?

One thing I wonder is, if we should add those ref: values and if, should they be international? Reading the wiki they might be something only for the US? We could scope them for the US, if that is the case…

@matkoniecz matkoniecz closed this Nov 3, 2025
@matkoniecz matkoniecz reopened this Nov 3, 2025
@matkoniecz
Copy link
Copy Markdown
Collaborator

close/reopen to get preview up

@matkoniecz matkoniecz closed this Feb 25, 2026
@matkoniecz matkoniecz reopened this Feb 25, 2026
@@ -0,0 +1,5 @@
{
"key": "ref:wigos",
"type": "text",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Comment thread data/fields/ref/wmo.json
@@ -0,0 +1,5 @@
{
"key": "ref:wmo",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

do we really need ref:wmo ?

after reading https://wiki.openstreetmap.org/wiki/Key:ref:wigos it seems to being replaced by ref:wigos and does not even have own key page at wiki

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I am not expert on this topic and either way it would be nice if wiki would be less confusing about this

"cosmic_ray": "Cosmic Ray",
"dissolved_oxygen": "Dissolved Oxygen",
"flow_rate": "Flow_rate",
"glonass": "GLONASS",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

how monitoring glonass is a weather station thing?

(I may be wrong, and maybe it is entirely within range of what weather stations do)

"pyranometer": "Pyranometer",
"pyrgeometer": "Pyrgeometer",
"pyrheliometer": "Pyrheliometer",
"radar": "Radar",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
"radar": "Radar",
"radar": "Weather Radar",

?

"forward_scatter_sensor": "Forward Scatter Sensor",
"grass_minimum_thermometer": "Grass Minimum Thermometer",
"humidity_sensor": "Humidity Sensor",
"hygrometer": "Hygrometer",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

seems not listed at https://wiki.openstreetmap.org/wiki/Key:monitoring:weather

have you confirmed that all tags being added are documented at OSM Wiki and there are not controversial in some way?

@matkoniecz
Copy link
Copy Markdown
Collaborator

I am really overwhelmed by this PR. Personally I would prefer more and smaller PRs, that would be easier to review and merge.

(when there is one problematic thing it blocks entire PR, which happens more easily when adding entire pile of things)

Comment on lines +14 to +15
"moreFields": [
"ref/wmo",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Suggested change
"moreFields": [
"ref/wmo",
"moreFields": [
"{man_made/monitoring_station}",
"ref/wmo",

or is not inheriting ref deliberate?

https://github.com/novolife/id-tagging-schema/blob/3a4d53781380766081d2bfe8a1e4dfd5a3342626/data/presets/man_made/monitoring_station.json#L14

@matkoniecz matkoniecz added the waitfor-requested-changes This PR is waiting for an update to incorporate requested changes from a PR review. label Feb 25, 2026
@matkoniecz
Copy link
Copy Markdown
Collaborator

If my proposed changes are dumb (which is possible): just explain why it makes no sense. But at least about type: identifier, I am fairly sure.

@matkoniecz
Copy link
Copy Markdown
Collaborator

@novolife Is this PR abandoned or do you plan on handling comments?

@matkoniecz matkoniecz added the new-field create a new field (see add-field for cases where field from presets is added to new entries) label Mar 13, 2026
@matkoniecz
Copy link
Copy Markdown
Collaborator

ping @novolife

@matkoniecz
Copy link
Copy Markdown
Collaborator

closing as abandoned, see #2178

@matkoniecz matkoniecz closed this Apr 11, 2026
@matkoniecz
Copy link
Copy Markdown
Collaborator

see also #2178 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-field create a new field (see add-field for cases where field from presets is added to new entries) new-preset waitfor-requested-changes This PR is waiting for an update to incorporate requested changes from a PR review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants