GeoJSON linters available in geojsonlint
geojson_hint() - currently using geojsonhint v1.2.1geojson_validate()Both functions return the same outputs. If the GeoJSON is valid, they return TRUE. If the GeoJSON is invalid, they return FALSE, plus reason(s) that the GeoJSON is invalid in an attribute named errors as a data.frame. The fields in the data.frame’s are not the same across functions unfortunately, but they can be easily coerced to combine via e.g., plyr::rbind.fill or dplyr::bind_rows or data.table::rbindlist(fill = TRUE)
The parameters for the three functions are similar, though geojson_validate() has an extra parameter greedy that’s not available in the others.
from CRAN
Dev version
geojsonhint JS library
is-my-json-valid JS library
geojsonhint JS library
is-my-json-valid JS library
geojsonhint JS library
geojson_hint('{"type": "FooBar"}', inform = TRUE)
#> [1] FALSE
#> attr(,"errors")
#> line message
#> 1 1 The type FooBar is unknownis-my-json-valid JS library
geojson_validate('{ "type": "FeatureCollection" }', inform = TRUE)
#> [1] FALSE
#> attr(,"errors")
#> field message
#> 1 data no (or more than one) schemas matchgeojsonhint JS library
is-my-json-valid JS library
geojson_validate('{ "type": "FeatureCollection" }', error = TRUE)
#> Error: 1 error validating json:
#> - data: no (or more than one) schemas matchgeojsonlint in R doing citation(package = 'geojsonlint')