Modify

Opened 5 years ago

Last modified 5 years ago

#17403 new enhancement

Complain about crossing administrative boundary with road and stop offering to join administrative boundary and road due to duplicated nodes

Reported by: mkoniecz Owned by: team
Priority: normal Milestone:
Component: Core validator Version:
Keywords: template_report Cc:

Description

What steps will reproduce the problem?

  1. Load provided test file
  2. Run validator

What is the expected result?

Validator complains about shared node of administrative boundary and road.
Validator is not offering to damage data by joining administrative boundary and road.

What happens instead?

Validator doe not complain about shared node of administrative boundary and road.
Validator is offering to damage data by joining administrative boundary and road.

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

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-02-23 17:46:51 +0100 (Sat, 23 Feb 2019)
Build-Date:2019-02-24 02:30:49
Revision:14802
Relative:URL: ^/trunk

Identification: JOSM/1.5 (14802 en) Linux Ubuntu 16.04.5 LTS
Memory Usage: 415 MB / 869 MB (119 MB allocated, but free)
Java version: 1.8.0_201-b09, Oracle Corporation, Java HotSpot(TM) 64-Bit Server VM
Screen: :0.0 1920x1080
Maximum Screen Size: 1920x1080
Dataset consistency test: No problems found

Plugins:
+ OpeningHoursEditor (34867)
+ buildings_tools (34867)
+ continuosDownload (82)
+ imagery_offset_db (34867)
+ measurement (34867)
+ reverter (34867)
+ todo (30306)

Validator rules:
+ ${HOME}/Desktop/tmp/test.validator.mapcss

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- W: Cannot start IPv4 remotecontrol server on port 8111: Address already in use (Bind failed)
- W: Cannot start IPv6 remotecontrol server on port 8111: Address already in use (Bind failed)
- W: Cannot start IPv4 remotecontrol https server on port 8112: Address already in use (Bind failed)
- W: Cannot start IPv6 remotecontrol https server on port 8112: Address already in use (Bind failed)
- W: Expecting test '{0.tag}' (i.e., [*[name=parking][amenity=parking], *[name=playground][leisure=playground], *[name=shop][shop][shop'NEQ'no], *[name=building][building][building'NEQ'no], *[name=kiosk][shop=kiosk], *[name=cemetery][amenity=graveyard], *[name=cemetery][landuse=cemetery], *[name=cmentarz][amenity=graveyard], *[name=cmentarz][landuse=cemetery]]) to match relation name=PLAYGROUND leisure=playground (i.e., TagMap[name=PLAYGROUND,leisure=playground])
- W: Expecting test '{0.tag}' (i.e., [*[name=parking][amenity=parking], *[name=playground][leisure=playground], *[name=shop][shop][shop'NEQ'no], *[name=building][building][building'NEQ'no], *[name=kiosk][shop=kiosk], *[name=cemetery][amenity=graveyard], *[name=cemetery][landuse=cemetery], *[name=cmentarz][amenity=graveyard], *[name=cmentarz][landuse=cemetery]]) to match relation name=parking amenity=Parking (i.e., TagMap[amenity=Parking,name=parking])
- W: Expecting test '{0.tag}' (i.e., [*[name=parking][amenity=parking], *[name=playground][leisure=playground], *[name=shop][shop][shop'NEQ'no], *[name=building][building][building'NEQ'no], *[name=kiosk][shop=kiosk], *[name=cemetery][amenity=graveyard], *[name=cemetery][landuse=cemetery], *[name=cmentarz][amenity=graveyard], *[name=cmentarz][landuse=cemetery]]) to match node name=PLaYGrOUNd leisure=playground (i.e., TagMap[name=PLaYGrOUNd,leisure=playground])
- W: Expecting test '{0.tag}' (i.e., [*[name=parking][amenity=parking], *[name=playground][leisure=playground], *[name=shop][shop][shop'NEQ'no], *[name=building][building][building'NEQ'no], *[name=kiosk][shop=kiosk], *[name=cemetery][amenity=graveyard], *[name=cemetery][landuse=cemetery], *[name=cmentarz][amenity=graveyard], *[name=cmentarz][landuse=cemetery]]) to match node name=parking amenity=Parking (i.e., TagMap[amenity=Parking,name=parking])
- W: Expecting test '{0.tag}' (i.e., [*[name=parking][amenity=parking], *[name=playground][leisure=playground], *[name=shop][shop][shop'NEQ'no], *[name=building][building][building'NEQ'no], *[name=kiosk][shop=kiosk], *[name=cemetery][amenity=graveyard], *[name=cemetery][landuse=cemetery], *[name=cmentarz][amenity=graveyard], *[name=cmentarz][landuse=cemetery]]) to match way name=parking amenity=Parking (i.e., TagMap[amenity=Parking,name=parking])

Attachments (1)

crossing_admin_highway.osm (2.7 KB ) - added by mkoniecz 5 years ago.

Download all attachments as: .zip

Change History (9)

by mkoniecz, 5 years ago

Attachment: crossing_admin_highway.osm added

comment:1 by GerdP, 5 years ago

Why do you think that data is damaged when the nodes are merged?

comment:2 by mkoniecz, 5 years ago

Because now edits to road (moving entire or just affected node) will now modify also administrative boundary.

I believe it is usually unwanted.

Also, node of road and administrative boundary at exactly the same location usually is caused by some bad edit. It is also unusual for it to happen in a natural way - I encountered it for the first time in Texas, result as a low quality Tiger imports and so far is always accompanied by some other invalid data.

comment:3 by GerdP, 5 years ago

Accidential edits are always possible. I don't think that a shared node is increasing the likelyhood.
Some mappers (re-) use existing highways or other ways to build boundary relations. It is not well liked by all mappers but I am not aware that it is documented as bad practice anywhere (yet).

comment:4 by mkoniecz, 5 years ago

For what it is worth I encountered road damaged by someone who was editing boundary data and at least once I damaged boundary data that were hidden during road data.

comment:5 by Don-vip, 5 years ago

Type: defectenhancement

comment:6 by anonymous, 5 years ago

When JOSM validator detects duplicate nodes it separates them into folders by the type of use. The problem occurs when JOSM is told to fix the items in the "mixed type duplicated nodes" because JOSM will delete one node and glue the two areas (or area and boundary) together. Just avoid that folder when asking JOSM to fix things.

comment:7 by anonymous, 5 years ago

I know how can I avoid this problem but

  • it is preferable to ensure whenever possible that autofix is not making situation worse or at least that the new problem is detectable by validator
  • not everyone is aware about this

comment:8 by mkoniecz, 5 years ago

I am considering working on it, so if anyone thinks that idea proposed here is fundamentally flawed it would be a good moment to comment.

I plan to make check similar to one done for power line nodes touching mixed with non-power objects.

Previous comment was mine. Sorry, I again forgot that JOSM allows anonymous editing.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain team.
as The resolution will be set. Next status will be 'closed'.
to The owner will be changed from team to the specified user.
Next status will be 'needinfo'. The owner will be changed from team to mkoniecz.
as duplicate The resolution will be set to duplicate. Next status will be 'closed'. The specified ticket will be cross-referenced with this ticket.
The owner will be changed from team to anonymous. Next status will be 'assigned'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.