Waterways mapcss JOSM-Style

I created the new Waterways JOSM-Style that should help edit waterways and identify topology problems (lines not connected or hierarchy not respected (ie a river moving down to a stream). Editing the various waterways categories such as canals, locks, hydro-electric infrastructures, etc. should be easier. Also, like the OSM-rivers website by Amanda, it helps identify some topology problems.

waterways components

Details - canal / lock gates / lock

red arows : end node for Streams (islands) not connected

red arrow to flag typology error waterway=river moving to waterrway=stream

This JOSM-Style is a preliminary version and dont hesitate to comment. Images below show various aspects.


Love this idea! I wanted to try it out but the link to the style wasn’t clickable for me. Any help? Maybe just my issue?

I uploaded a few hours ago to the JOSM wiki. It sometimes take some time before the style is available but I tested and was able to access the JOSM properties - Mappaint list and install it. Assure that you reload the list of styles availables

  • At the bottom of the list click on the button to try reloading your list of style. You should then see « Waterways » in the list of available styles.

Otherwise, it is possible to download from Styles/Waterways – JOSM and install manually.

1 Like

Happy to install manually! Many thanks.

Really like it! Gonna spent some more time with it over the next week and I think it’ll be a big improvement over the standard map style for this work.

One improvement could be to tag nodes at the end of waterways that stop at the end of a natural=water (lake or river usually) and aren’t connected to another waterway. I’ve been using this overpass query on a separate layer but it’s entirely possible that you can do something similar with a paint style.

So happen to be in comms with GitHub Osmose backend regarding the unconnected stream_end flagging. The tag has now been added to the QA checks as when waterway=stream_end is added to the last stream node, it’s no longer deemed a problem, JOSM validator already did so. (we have many mountain streams that end into the ground or scree.


v.v. the OP, the Waterways-JOSM Style link is empty… is not going anywhere. Wanting to test having been using Colorways map style to improve waterway visibility in JOSM.

Edit: Found the link to the style with some oogling and added it via the + function.


Thanks. This is in my list of improvements and searching for the rule that applies to it.


I corrected reference from waterways.svg to available file waterways.png. Now working from JOSM properties after we reload the list of available Styles.

It would be nice to have a companion validator-ruleset as well, so that it throws an error or warning when there is a problem. With only map style, you have to actually LOOK AT the issue in order to spot it. Likewise with only validation rules, it can be hard to see the actual issue a warning points to. If you have both - everything is easy :slight_smile:

Also, there is an issue with symbol size at low zooms:


Nodes on ways become huge blobs (only closed ways, not unclosed ways or relations).

I also get a weird bug when I change the direction of a waterway:

Nodes get the selected node style and it doesn’t go away until I untick-retic the style in the style selection box. Changing direction again doesn’t work. Weird! :slight_smile:

Thanks, Adding to my list of corrections.

I made a few adjustments locally:

I made non-waterways #85ebff so that you can tell the difference (lakes and riverbanks etc) when all are downloaded. I also put z-index on them so that waterways always render on top.
Dams should also have z-index above waterway (imho).

I also recommend +1 width to zoomed out waterway_sd:
way|z1-13.waterway_sd { casing-width:1.5; width:1.7;}

1 Like

Thanks for these suggestions. I will look at these plus add/revise z-indexes to better control hierarchy of objects and control annoying nodes when zoom-out.

Have currently no idea how to visualize, but would be great to have a differentiation between name exist and name is missing.

Editing in JOSM we can use various styles that cover different aspects of editing. We can select the more general Potlatch2 style to show the waterway names. Selecting and moving the Waterways style below the Potlatch2 style in the list, we can see the informations added by this Waterways style.

The JOSM Search facility or Overpass queries could be used to select waterways with missing names.

@PierZen I was inspired so I made another waterway style from a different perspective. This one is concerned with the names of the waterways: https://osm.wzh.be/josm/colored-waterways.mapcss

It applies one colour per name, so that its easier to spot where the names change, or are missing.


nice feature.

On my side, I tested solutions for the various problems mentionned yesterday.The ways place-island|islet inside a natural=water relations was part of the problem for natural ways when zoom-out. The various waterways node-end flags should also work better.

I should be able to resolve rapidly and publish a revision of the waterways style.


Thank you @PierZen for this idea, it’s always good to get tools to improve waterways mapping.
Editors as got a key role to play in the maintenance.

May I suggest you the same as OSM Inspector water view?

Given problem is without handling artificial waterways properly, some contributors may be encouraged to change them into rendered features.
It’s a serious problem as describing such infrastructure is time consuming and more contributors should be made aware of them.
I spotted some issues you may be interested to look at:

Canal transitioning to stream through a direct outlet is depicted as a topology error while it isn’t.

Pressurised waterway connected to streams aren’t rendered and let contributors think it’s not a correct waterway feature.

Best regards and keep up with such a good work

Thanks François for your comments. I published a revision with a serie of enhancement to the JOSM Waterways Style today. While I do not address pressurised waterways directly, I do render tunnels. Do not hesitate to make suggestions specific to pressurized tunnels. The intermittent waterways are also rendered which help to represent the slipways, tunnel=culvert, etc. Canals and locks are also rendered.

About the Canal to stream transition error flagging, since there is no way to test if a segment prior to the canal was a river way. I will simply eliminate this flag. The same with a waterway that ends on a natural area or a waterway dam. It is a complex situation with too many possibilities to render for now.

For the contributors who have already installed the Waterways Style in JOSM, they may encounter problems getting the revised version. The JOSM Styles wiki page
gives instructions how to remove the cache and update the style.

New version released

The image below shows how the various features and flags are rendered.

1 Like

Pressurised waterways go through pipelines as well, with man_made=pipeline and no tunnel=*
The distinction between free flow and pipe flow is accurate on ground and is useful for editing.
White dashes should appear only for free flow (canal), imho.