Opened 2 months ago

Last modified 7 weeks ago

#20485 new defect

Inconsistent handling of fixme tags

Reported by: mdk Owned by: team
Priority: normal Milestone:
Component: Core validator Version:
Keywords: template_report fixme node Cc:


What steps will reproduce the problem?

  1. load fixme.osm
  2. run validator

What is the expected result?

5 "Other/fixme" validator hints.

What happens instead?

I got only 3 for the fixme/FIXME tags on ways and relation, but none for the fixme/FIXME tags on nodes.

Please provide any additional information below. Attach a screenshot if possible.

The hints for fixme tags are very helpful for finding them in a downloaded array. As far as I remember this is a regression.

While I created the example file, I saw also, that the standard mappaint style is drawing an "F" for both "fixme" and "FIXME" on nodes, but the tag list for the selected objects only show "Annotation/Fixme" entry for "fixme", but not for "FIXME" (nodes and ways).

Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2021-02-12 09:50:35 +0100 (Fri, 12 Feb 2021)
Build-Date:2021-02-13 02:30:51
Relative:URL: ^/trunk

Identification: JOSM/1.5 (17491 en_GB) Windows 10 64-Bit
OS Build number: Windows 10 Pro 2004 (19041)
Memory Usage: 1566 MB / 3616 MB (510 MB allocated, but free)
Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Look and Feel:
Screen: \Display0 1920×1200 (scaling 1.00×1.00) \Display1 1920×1200 (scaling 1.00×1.00)
Maximum Screen Size: 1920×1200
Best cursor sizes: 16×16→32×32, 32×32→32×32
Dataset consistency test: No problems found

+ ColumbusCSV (35640)
+ OpeningHoursEditor (35640)
+ RoadSigns (35640)
+ apache-commons (35524)
+ apache-http (35589)
+ buildings_tools (35669)
+ contourmerge (v0.1.6)
+ imagery-xml-bounds (35640)
+ imagery_offset_db (35640)
+ jna (35662)
+ pt_assistant (2.1.10-80-g7d9bba3)
+ reverter (35688)
+ terracer (35640)
+ utilsplugin2 (35691)

Map paint styles:

Attachments (2)

fixme.osm (3.1 KB) - added by mdk 2 months ago.
FIXME_samples.joz (2.5 KB) - added by skyper 7 weeks ago.
virtual test files

Download all attachments as: .zip

Change History (11)

Changed 2 months ago by mdk

Attachment: fixme.osm added

comment:1 Changed 8 weeks ago by skyper

Component: CoreCore validator
Keywords: fixme node added

Seems to me that there needs to be one more tag. fixme=* + highway=bus_stop produces the expected info warning. For ways and relations we have higher level warnings if there is only fixme/FIXME=* but not for nodes.

comment:2 Changed 8 weeks ago by mdk

But there are tons of "fixme=continue" on nodes without other tags.

comment:3 Changed 8 weeks ago by GerdP

I don't fully understand what your goal is. I think it makes not much sense to produce a validator warning for a fixme, but I assume it is done because it difficult to render it. This problem doesn't exist with the node.
If I want to find objects with a fixme I use search.

comment:4 Changed 7 weeks ago by skyper

An informal warning about fixme/FIXME=* is what this rule is about. Searching for all nodes with this tag will only return a list of all objects but not each by its own. I can probably take a look at this next week.

comment:5 Changed 7 weeks ago by mdk

Right. The goal is that all fixme tags are handled the same same way - no special handling for nodes with only one (the fixme) tag.

Changed 7 weeks ago by skyper

Attachment: FIXME_samples.joz added

virtual test files

comment:6 Changed 7 weeks ago by skyper

The question is, if we want to hide duplicate warnings and which one exactly. E.g. we have warnings:

  • about nodes:
    • Unconnected nodes without physical tags > Has tag containing 'fixme'
    • Waterway ends without a connection to another waterway or the direction of the waterway is wrong. (only inside download area)
    • maybe: Way end node near other (high/rail/water)way
  • about ways:
    • Untagged ways (commented)
    • plus maybe: Unnamed ways

Have a look at attached sample session's files.

I tend to hide the "informal warning" in favor of the higher level warning, at least, for the first warning for each object type.

Last edited 7 weeks ago by skyper (previous) (diff)

comment:7 Changed 7 weeks ago by mdk

I am actually working on bad mapped areas in Madagascar. Typically you found the pattern of a waterway stub where the "source" node is tagged with fixme=continue. In the example is only the other case, where the "drain" node is tagged (and add an additional "waterway ends without a connection..." warning).
I also find highways, where the direction doesn't matter.
Both, waterways and highways normally has actually no name, so I would exclude this case.
Also the examples are not so appropriate, because they have fixme tags on both, the way and and a node. "fixme" on ways are producing always (?) informal warnings. But I'm missing the informal warnings if only a node is tagged.

In general: A fixme/FIXME tag is explicitly set by a mapper, so I see no reason for hiding any of them.

comment:8 Changed 7 weeks ago by skyper

Owner: changed from team to skyper
Status: newassigned

With the oneway example I had #18364 in mind. The waterway warning is not run on drain and for the first way node we might have an own warning about missing waterway=source. But that are future thoughts.

I still feel like hiding in favor of Unconnected nodes without physical tags > Has tag containing 'fixme' and Untagged ways (commented).

comment:9 Changed 7 weeks ago by skyper

Owner: changed from skyper to team
Status: assignednew

I had a deeper look and I am not able to fix it as the tests are written in java in, sorry.

Modify Ticket

Change Properties
Set your email in Preferences
as new The owner will remain team.
as The resolution will be set.
to The owner will be changed from team to the specified user.
The owner will change to mdk
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from team to anonymous.

Add Comment

E-mail address and name can be saved in the Preferences.

Note: See TracTickets for help on using tickets.