JOSM/Validator
The JOSM Validator is a feature of JOSM which checks and fixes invalid data. For a long time it was available as a plugin, but is now a core feature of the software. There is no longer any need to install these features as a plugin.
Usage
- Click on the new tick icon
in the vertical toolbar to show the validator panel on the right.
- Select the data you want to validate (or deselect to validate everything)
- Click on the Validate button at the bottom of the validator panel
This will check the data and display all errors, categorized as errors, warnings, and other, depending on the severity of the error.
While some of the errors must be manually fixed, most of them can be automatically fixed. Just select the error or errors and click the Fix button to automatically fix them. You can select multiple errors, and all of them will be fixed.
Other usage tips:
- In preference settings, you can activate only the tests you need. By default, all tests are active.
- In preference settings, in the toolbar panel, you can include a validation icon in the horizontal toolbar at the top of the window (does the same as the Validate button on the right hand panel)
- The screenshot shows the validator panel undocked, in a separate window. Do this with the little pin icon if you need more space to see the errors tree.
Validations
These are the validations performed by the validator:
| Validation | Description | Fix | |
|---|---|---|---|
| |
Duplicated nodes | Checks that there are no nodes in the very same location | Merge the nodes into only one, adding the properties from all nodes to the merged one |
| |
Duplicated way nodes | Checks that ways contain no loop edges (i.e., a single step from a node to itself) | Split the way, and delete the way consisting of the loop edge. |
| Reversed coastline: land not on left side | Checks for coastlines that are not counter-clockwise or that are otherwise misplaced (coastline misused as inland lake) | Reverse coastline | |
| Unconnected coastline: coastline ways do not form closed loops | Checks for coastlines ways that are not connected to the end of other coastline ways | ||
| Unordered coastline: coastline ways are not connected start-to-end | Checks for coastline ways of which either the start is not connected to the end of another coastline or the end is not connected to the start of another coastline | Reverse coastline | |
| Incomplete ways | Checks for ways with zero or only one node | Removes the way | |
| Check property keys | Checks misspelled property keys. See the User:JLS/speller page for information about misspelled property keys | Replace wrong key with right one | |
| Check property values | Checks misspelled property values. Uses the tagging presets file for checking | NONE | |
| Empty properties | Checks for properties with empty values | Remove the empty properties | |
| Crossing ways | Checks for ways (with highway/railway/waterway tags) that crosses in same layer with no crossing node | Add appropriate layer (and possibly bridge or tunnel) | |
| Unordered ways | Checks that all segments in a way are properly ordered | Reorder the way | |
| Overlapping (high)ways | Checks for two (high)ways that share the same nodes | Remove the double (high)way | |
| Self-intersecting ways | |||
| Similar named ways | Checks for ways with very similar names, possibly a typo | NONE | |
| Unclosed ways | Checks that way types, which should be closed really are closed | NONE | |
| Untagged ways | Checks for untagged ways | NONE | |
| Way end node near other highway | |||
| Style for outer way mismatches | Within a multipolygon relation, one of the tags of the relation and the outer ways is shared but with different values | ||
| Style for inner way equals multipolygon | Within a multipolygon relation, one of the tags of the relation and the outer ways is shared and has the same value | Remove tag from inner way | |
| FIXMES | Checks for any property with the word "FIXME" inside | NONE | |
| Highway without a reference | Checks if there is a ref tag for highways that are tagged tertiary. Not always required, see for instance NL:Map_Features#Wegen | Add ref property or ignore | |
| Key 'x' invalid. - ... | |||
| Nodes with the same name | NONE | ||
| Overlapping areas | |||
| Unknown property value | Checks for proper use of tags | Remove or change incorrectly used tag | |
| Untagged and unconnected nodes | Checks rogue nodes | Delete unused nodes when they have no further tags | |
| No style in multipolygon relation | The multipolygon relation is missing a tag describing what it is/represents | For a building, add building=yes to the relation etc. See also Relation:multipolygon |
Wish list
Wishes for new features or bug reports should be reported at the BugTracker of JOSM.