Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create features from geoservices #4633

Closed
wants to merge 164 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
164 commits
Select commit Hold shift + click to select a range
bc3143c
esri overlay from url parameter
mapmeld Dec 5, 2016
77eb2f7
enter Esri layer URL in UI
mapmeld Dec 5, 2016
cafaa32
url helpers; shade in polygons
mapmeld Dec 5, 2016
77a7030
update map as moved
mapmeld Dec 5, 2016
e649469
don't overwrite a spatial query
mapmeld Dec 5, 2016
4b569c6
import points as OSM Nodes
mapmeld Dec 5, 2016
3431eeb
support linestring, polygon, rough support multi-shapes
mapmeld Dec 5, 2016
07e2398
refactor adding many different types
mapmeld Dec 5, 2016
a478083
clean up tests and syntax
mapmeld Dec 5, 2016
dd315e2
convert an Esri layer key into an OSM layer key
mapmeld Dec 8, 2016
5efeba3
continue importing
mapmeld Dec 8, 2016
77ed518
fixed bug loading in nodes and ways once filtered
mapmeld Dec 9, 2016
fdbdf21
new nodes appear as edits and can be saved
mapmeld Dec 9, 2016
f0482cf
lines and polygons appear as OSM edits
mapmeld Dec 9, 2016
4e8c6a9
comments and cleanup
mapmeld Dec 9, 2016
b6344b9
reload data on Esri layer save
mapmeld Dec 12, 2016
f0d8b58
maintain import window; improve window UI
mapmeld Dec 12, 2016
1fa6d19
make it possible to add a key:value to imported data
mapmeld Dec 12, 2016
ae232fb
css tweaks
mapmeld Dec 13, 2016
35fa356
replace window.prompt with HTML/JS/CSS options window
mapmeld Dec 13, 2016
625f47d
donut hole polygons
mapmeld Dec 13, 2016
2a37e69
refactor how lines, polygons, and relations get saved
mapmeld Dec 13, 2016
d5cda2a
add/delete buttons with a delete button that works
mapmeld Dec 14, 2016
7d8683f
color node/way/area to mark it as approved
mapmeld Dec 14, 2016
3805c5c
allow approval of a way to cover its nodes
mapmeld Dec 14, 2016
bf88284
options determine h how import works (manual selection or import by d…
mapmeld Dec 15, 2016
1aeb100
display full preset list when opening Esri window (unfortunately does…
mapmeld Dec 15, 2016
1bbf8a8
Preset informss Esri import options
mapmeld Dec 19, 2016
9ea13e4
preset adds tags to imported data
mapmeld Dec 19, 2016
af30252
test JS code highlighting for an import function
mapmeld Dec 19, 2016
8fa06d2
all preset available in import, restrictions remain in regular drawing
mapmeld Dec 19, 2016
95d2870
README with sample data and current process
mapmeld Jan 2, 2017
5b3b3fd
refactor how esri layer status is checked
mapmeld Jan 2, 2017
3ae1bfd
refactor add and remove preset to importer
mapmeld Jan 2, 2017
206ca11
draw buffers around imported lines (to see if they should combine wit…
mapmeld Jan 2, 2017
273cc1f
modal window and loading gif
mapmeld Jan 16, 2017
ff9a842
display icon representing the incoming preset
mapmeld Jan 16, 2017
b38ce95
put Esri URL into hash, more icon work
mapmeld Jan 16, 2017
82427b0
refactor; fix url params
mapmeld Jan 16, 2017
f0d2091
use a combobox to suggest preset's preferred tags
mapmeld Jan 16, 2017
7b08bac
trying to figure out how to reveal entity editor
mapmeld Jan 16, 2017
a1bf2f8
make spinner a relative path
mapmeld Jan 20, 2017
0ff959e
address points transfer to buildings
mapmeld Jan 20, 2017
5419d17
merge properties into matching roads
mapmeld Jan 29, 2017
732ea82
improve accuracy of bike lane line merge
mapmeld Jan 29, 2017
8df5165
include MultiLineStrings in MergeLine properties
mapmeld Jan 29, 2017
e8f5951
refactor line/multilinestring import mergeLine code
mapmeld Jan 29, 2017
0cf795d
dont hide editable features
mapmeld Jan 31, 2017
d6eaa58
modify attributes in merged items, make merged items approvable
mapmeld Jan 31, 2017
4ae21ff
GeoService generic name
mapmeld Feb 26, 2017
b314be9
fixes to preset and field filter UI
mapmeld Feb 26, 2017
de80353
Delete Button is now Reject
mapmeld Feb 26, 2017
34db7a0
Revert "dont hide editable features"
mapmeld Feb 26, 2017
a931513
checkbox on field filters; approve/reject as slider
mapmeld Feb 27, 2017
6954f63
move download/load buttons to end
mapmeld Feb 27, 2017
5884f99
fix field filter
mapmeld Feb 27, 2017
0a59b9c
metadata retrieved from import layer before data is loaded
mapmeld Mar 2, 2017
f3e8fa3
Revert "test JS code highlighting for an import function"
mapmeld Mar 2, 2017
ceae38f
change fields before loading data
mapmeld Mar 2, 2017
b551152
clear old geoservice url [closes #5]
mapmeld Apr 3, 2017
76e7755
accept more URLs [closes #6]
mapmeld Apr 3, 2017
6f0875d
unchecked by default, ctrl click to select all [closes #10]
mapmeld Apr 3, 2017
ff70030
style, labeling, and functionality of add-tag button [closes #8]
mapmeld Apr 3, 2017
d8a2cb4
select preset from a dropdown, not the left sidebar
mapmeld Apr 3, 2017
ec8c2b6
display, require approval, and remember user preference on licenses
mapmeld Apr 19, 2017
bdeae1a
select sublayers of a MapService [closes #7]
mapmeld Apr 19, 2017
0a62c0c
store OBJECTID tag relates to #13
mapmeld Apr 19, 2017
f1f168d
display layer feature count [closes #11]
mapmeld Apr 19, 2017
cd61cdd
replace button options for MapServer layer, with a dropdown
mapmeld Apr 29, 2017
843adf5
remove slider UI on approve/reject
mapmeld Apr 29, 2017
f30c7ee
in building imports, prevent overlap [#12]
mapmeld Apr 30, 2017
af7c4f6
fix objectid issue
mapmeld Apr 30, 2017
9764236
allow user to toggle approve/reject imported items
mapmeld Apr 30, 2017
9cdd11a
approve/reject is visible permanently on the feature -- use a string …
mapmeld Apr 30, 2017
fa46122
fix approvedForEdit bug showing on existing OSM data [closes #23]
mapmeld May 9, 2017
f3baa0a
update labels after a GeoService is added
mapmeld May 9, 2017
0556fec
change visibility of import layer
mapmeld May 9, 2017
418149e
put GeoService stuff in its own CSS file
mapmeld May 9, 2017
07616d2
remove deprecated code
mapmeld May 9, 2017
02a1e49
add button to clear the geoservice
mapmeld May 15, 2017
a5c9caa
wipe the map too [closes #4]
mapmeld May 15, 2017
b825b4e
progress on area icons [still issues with lines and points]
mapmeld May 15, 2017
e2208f7
change how osm/import filter works to patch error
mapmeld Jun 12, 2017
2f33409
patch JS issue, load services without OBJECTIDs
mapmeld Jul 8, 2017
656e22f
fix polygon add, closer to fix of buildings issue
mapmeld Jul 8, 2017
de29005
move doc into app
jgravois Jul 18, 2017
cb56d75
Merge pull request #27 from jgravois/import-geoservice
mapmeld Jul 19, 2017
f0c206b
upgrade esri-to-geojson
mapmeld Jul 22, 2017
1697e04
maxAllowedOffset (#36)
mapmeld Jul 23, 2017
b1da3a1
dont store geoservice:objectid [closes #34]
mapmeld Jul 23, 2017
f8729f7
change how geojson is stored, fixes issue with clearing a GeoService …
mapmeld Jul 23, 2017
dc6f58d
support ArcGIS direct support for GeoJSON [closes #33]
mapmeld Jul 23, 2017
b1a1bb6
make sure at least one field is imported
mapmeld Jul 23, 2017
784b811
only download fields checked by user [closes #37]
mapmeld Jul 26, 2017
0d76b9d
change save count when approving and rejecting import points
mapmeld Jul 26, 2017
fda7d5e
restrict iD blacklist services [closes #40]
mapmeld Jul 27, 2017
3128712
make layer url input clearable
jgravois Aug 1, 2017
dc91bd9
Merge pull request #42 from jgravois/clearable-url
mapmeld Aug 1, 2017
9650db7
add more explict doc about geoservice licenses
jgravois Aug 1, 2017
3021ef5
Merge pull request #43 from jgravois/license
mapmeld Aug 2, 2017
065100c
ensure map service dropdown is hidden when layer is cleared
jgravois Aug 7, 2017
3c1348c
Merge pull request #44 from jgravois/confirm
mapmeld Aug 8, 2017
4fb6234
add mandatory, user editable discussion tag to changeset
jgravois Aug 9, 2017
6a6ad18
Merge pull request #45 from jgravois/import_discussion
mapmeld Aug 9, 2017
14daa5a
improve MapServer index selection, layer preview table now has sample…
mapmeld Sep 29, 2017
1d05aea
limit data preview results (on servers which support it)
mapmeld Sep 29, 2017
1fd15c1
improve function of mapserver index, reenable download buttons, hide …
mapmeld Oct 1, 2017
dfcd67d
Merge remote-tracking branch 'upstream/master' into geoservices-rebased
jgravois Oct 2, 2017
8ca7f04
tweaks/ refactor
jgravois Oct 3, 2017
1374e40
Merge pull request #56 from jgravois/geoservices-merged
mapmeld Oct 3, 2017
245a2bb
make it more obvious that approval clicks are being registered
jgravois Oct 9, 2017
81307ba
Check in build
bhousel Oct 9, 2017
74cec68
Merge pull request #57 from jgravois/patch48
mapmeld Oct 10, 2017
d2fa26a
Merge branch '2.4.3' into bumb
jgravois Oct 11, 2017
6f08312
Merge pull request #58 from jgravois/bump
mapmeld Oct 11, 2017
6f5b423
use ?f=json instead of /metadata - closes #59
mapmeld Oct 16, 2017
82fbfc7
prefer importing geoservice value for a field to using a preset value…
mapmeld Oct 16, 2017
1702ffe
hide load globally button
mapmeld Oct 16, 2017
1cf0378
add help text, handle 0-feature areas
mapmeld Oct 16, 2017
4d2d258
change clear geoservice button style
mapmeld Oct 16, 2017
0c6618a
helpier help text
mapmeld Oct 16, 2017
20bd70c
add a little circle indicating import approval status
mapmeld Oct 16, 2017
6422d6c
show and hide dropdown arrow based on whether input is activated or n…
mapmeld Oct 16, 2017
1a090b7
goldenrod orangey color for pending
mapmeld Oct 18, 2017
9de3303
fix building overlap example
mapmeld Oct 19, 2017
eda4c35
preset icon fixes
mapmeld Oct 19, 2017
7186311
osm wiki plan
mapmeld Oct 19, 2017
649e32e
tidy up unused code
mapmeld Oct 21, 2017
a5090d5
tidy up geoservice.js
mapmeld Oct 21, 2017
79012ee
remove proj4
mapmeld Oct 21, 2017
b979ceb
improve import filter and save options
mapmeld Oct 22, 2017
341299d
clean up old code and imports
mapmeld Oct 22, 2017
156b22b
window and license belong to the geoservice layer
mapmeld Oct 22, 2017
c62b665
remove dist
mapmeld Oct 23, 2017
2b4b246
remove window, keep importing tags, allow preset-only imports
mapmeld Oct 27, 2017
d22ccb1
eslint, and remove unused 'approval' radio buttons
mapmeld Oct 27, 2017
5476682
i18n strings and push discussion url into changeset
jgravois Oct 27, 2017
a97920c
Merge pull request #62 from jgravois/i18n
mapmeld Oct 28, 2017
b49dc9c
eslint and import fix
mapmeld Oct 28, 2017
3af9821
also translate Approve and Reject
mapmeld Oct 28, 2017
49a00ec
Merge remote-tracking branch 'upstream/master' into geoservices
jgravois Dec 22, 2017
4e090db
manual doc tweaks for alignment
jgravois Dec 23, 2017
c22ec11
Merge pull request #63 from jgravois/refresh
mapmeld Dec 23, 2017
9c83f1d
Merge branch 'master' of https://github.com/openstreetmap/iD into geo…
mapmeld Dec 27, 2017
2a11f18
manual dependency bump
jgravois Dec 29, 2017
b4e7cda
resolve lint errors and one test fix
jgravois Dec 29, 2017
c62cf15
avoid empty field calls (not sure where this comes from)
mapmeld Dec 30, 2017
4b2c508
Merge remote-tracking branch 'upstream/master' into bump-v2.6.0
jgravois Jan 23, 2018
66fd438
manual merge conflict fix that actually runs
jgravois Jan 23, 2018
98703e8
Merge pull request #65 from jgravois/bump-v2.6.0
mapmeld Jan 23, 2018
3d08d6c
Merge remote-tracking branch 'mapbox/master' into geoservices
jgravois Mar 28, 2018
a970b4d
better merge conflict resolution
jgravois Mar 28, 2018
2656b4d
Merge pull request #67 from jgravois/geoservices
mapmeld Mar 29, 2018
0846d65
Merge remote-tracking branch 'upstream/master' into another-bump
jgravois Apr 26, 2018
93d2a9e
encode geometries in query requests
jgravois Apr 26, 2018
4727a2f
Merge pull request #69 from jgravois/another-bump
mapmeld Apr 27, 2018
dab5516
Fix warnings, resolve conflicts in cleanTags
bhousel Apr 26, 2018
bb5b917
WIP: Moving geoservices code to services/geoservices.js
bhousel Apr 29, 2018
ab08dd8
Working towards storing all imported data in separate graph
bhousel May 1, 2018
f06ca42
Remove import related flags from "main" graph code
bhousel May 1, 2018
f1c467f
return entites in import graph (could use to build review queue)
bhousel May 3, 2018
a47601d
Storing imported entities in a separate graph is too hard
bhousel May 4, 2018
0e06f4a
use utilQsString, utilStringQs helpers
bhousel May 4, 2018
dae2dfe
Remove svg/geoservice layer (all the data is in the main osm graph)
bhousel May 4, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
303 changes: 303 additions & 0 deletions css/65_imports.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,303 @@

.layer-list li.list-item-geoservice {
height: auto;
}

.layer-list .list-item-geoservice label {
border-top: 1px solid #ccc;
display: none;
}

.layer-list .list-item-geoservice label:first-child {
border-top: none;
display: block;
}

path.geoservice {
stroke: #FF26D4;
stroke-width: 2;
fill: none;
}

path.geoservice-polygon, path.geoservice-multipolygon {
fill: #FF26D4;
fill-opacity: 0.18;
}

text.geoservice {
fill: #FF26D4;
}

.geoservice-pane button {
float: right;
background: #ccc;
padding-left: 14px;
padding-right: 14px;
margin-top: 5px;
}

.geoservice-pane button.no-float {
float: none;
}

.geoservice-pane .inspector-inner {
padding: 0;
}

.geoservice-pane th {
font-weight: bold;
}

.geoservice-pane td, .geoservice-pane th {
border: 1px solid #ccc;
padding-left: 7px;
border-right: none;
}

.geoservice-pane td:last-child {
border-left: none;
}

.geoservice-pane table input {
border-radius: 0 4px 4px 0;
padding-left: 2px;
border-bottom: none;
}

.geoservice-pane th {
border: none;
}

.geoservice-pane tr:last-child input {
border-bottom: 1px solid rgb(204, 204, 204);
margin-bottom: -1px;
border-radius: 0 4px 0 0;
}

.geoservice-pane button.add-tag {
margin-top: 0;
float: none;
}

.geoservice-pane .add-tag svg {
float: left;
color: #444;
}

.geoservice-pane button.url {
/* border-radius: 0 0 4px 4px; */
border-radius: 4px;
margin-top: 0;
margin-bottom: 6px;
}

.geoservice-pane button.url.final {
margin-top: 10px;
}

.geoservice-pane .topurl input[type='text'] {
margin-top: 10px;
}

.geoservice-pane .preset {
margin-top: 10px;
margin-bottom: 10px;
font-weight: bold;
}

.geoservice-pane .preset button {
margin-left: 12px;
height: 35px;
}

.geoservice-pane .preset-icon-holder {
display: inline-block;
}

.geoservice-pane .preset-icon-frame {
position: relative;
top: -12px;
left: 0;
margin-right: 8px;
}

.geoservice-pane .preset-icon-24 svg {
position: absolute;
left: 30px;
}

.geoservice-pane .preset-icon-28 {
position: relative;
left: 36px;
top: -15px;
}

.geoservice-pane .preset-icon-60 {
position: relative;
top: -15px;
}

.geoservice-pane .import-approval {
border: 1px solid #ccc;
border-radius: 8px;
padding: 11px;
margin-top: 10px;
}

.geoservice-pane .import-approval label {
display: block;
}

.geoservice-pane .import-table-switch {
display: none;
}

.geoservice-table.hide, .geoservice-pane .hide {
display: none !important;
}

.geoservice-pane.shaded {
z-index: 9 !important;
}

.geoservice-pane .preset .combobox-input {
max-width: 45%;
margin-left: 10%;
}

.geoservice-pane .preset .combobox-caret {
margin-top: 10px;
}

.geoservice-pane .point-in-polygon, .geoservice-pane .merge-lines, .geoservice-pane .overlap-buildings {
display: none;
}

.geoservice-pane .must-show {
display: block !important;
}

.geoservice-pane .layer-select {
margin-top: 8px;
}

.geoservice-pane .layer-counted {
font-weight: bold;
text-align: right;
}

.layer-list button.clear-geoservice {
float: none;
width: auto;
padding: 7px;
margin-top: 7px;
margin-bottom: 6px;
margin-left: 7px;
border-radius: 3px !important;
border-left: none;
background: #ccc;
}

/* more importer stuff */

.import-approve {
text-align: center;
}

.import-approve .import-icon {
position: absolute;
width: 20px;
height: 20px;
left: 20px;
top: 15px;
border-radius: 10px;
}

.import-approve .import-icon.neutral {
color: goldenrod;
background-color: goldenrod;
}

.import-approve .import-icon.approve {
color: #80fa80;
background-color: #80fa80;
}

.import-approve .import-icon.reject {
color: #fc7d7d;
background-color: #fc7d7d;
}

.import-approve button {
margin: 6px;
padding-left: 10px;
padding-right: 10px;
}

.import-approve button.approve {
background-color: #a6f3a6;
}

.import-approve button.approve:hover {
background-color: #80fa80;
}

.import-approve button:last-child {
background-color: #fca5a5;
}

.import-approve button:last-child:hover {
background-color: #fc7d7d;
}

g.point.import-approved .stroke {
fill: #a6f3a6;
}

path.import-approved.way {
stroke: #a6f3a6;
}

path.import-approved.way.area {
stroke: rgba(90, 225, 90, 0.3);
}

g.point.import-pending .stroke {
fill: goldenrod;
}

path.import-pending.way {
stroke: goldenrod;
}

path.import-pending.way.area {
stroke: rgba(218, 165, 32, 0.3);
}

g.point.import-edited .stroke {
fill: #a6a6f3;
}

path.import-edited.way {
stroke: #a6a6f3;
}

path.import-edited.way.area {
stroke: rgba(90, 90, 225, 0.3);
}

g.point.import-rejected .stroke {
fill: #f3a6a6;
}

path.import-rejected.way {
stroke: #f3a6a6;
}

path.import-rejected.way.area {
stroke: rgba(225, 90, 90, 0.3);
}

.geoservice-pane .preset-icon-24 {
position: inherit;
}
39 changes: 39 additions & 0 deletions data/core.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -589,6 +589,30 @@ en:
drag_drop: "Drag and drop a .gpx, .geojson or .kml file on the page, or click the button to the right to browse"
zoom: "Zoom to layer"
browse: "Browse for a file"
geoservice:
approve: "Approve"
reject: "Reject"
match_preset: "Optional: match features to a OSM preset"
exceeded_limit: "Service feature limit exceeded. Number fetched: "
enter_url: "Enter a GeoService URL"
add_layer: "Add GeoService Layer"
show_all: "Show OSM & Import"
hide_import: "Hide Import Layer"
hide_osm: "Hide OSM Layer"
clear_geoservice: "Clear GeoService"
select_layer: "select one layer"
success: "You have now imported geo features! Close this window and manually approve data which should be added to OpenStreetMap. You can filter the view to see only your imported data in the right sidebar."
no_data: "No data was loaded in this area! Close the window and re-open it where data can be imported. Or enter a different GeoService."
copyright:
approved: "Copyright information (previously approved): "
previous: "No copyright information provided. (previously approved)"
not_approved: "No copyright information provided."
not_valid: "The url provided not recognized as a valid GeoService"
plan: "The source license grants permission for inclusion in OpenStreetMap. I'm also providing a link to my import plan:"
verboten: "This data source matches Google or another service which is copyrighted, and not importable on OpenStreetMap."
first_timer: "This is your first time importing from this GeoService. Please confirm that its license grants permission to be included in OpenStreetMap"
no_preset: "Please use a preset or import at least one field from the GeoService"
view_import: "View GeoService Import"
mapillary_images:
tooltip: "Street-level photos from Mapillary"
title: "Photo Overlay (Mapillary)"
Expand Down Expand Up @@ -755,6 +779,21 @@ en:
using: "To use a GPS trace for mapping, drag and drop the data file onto the map editor. If it's recognized, it will be drawn on the map as a bright purple line. Click the {data} **Map data** panel on the side of the map to enable, disable, or zoom to your GPS data."
tracing: "The GPS track isn't sent to OpenStreetMap - the best way to use it is to draw on the map, using it as a guide for the new features that you add."
upload: "You can also [upload your GPS data to OpenStreetMap](https://www.openstreetmap.org/trace/create) for other users to use."
geoservices:
title: Geoservices
intro: "The GeoService tool allows you to fetch live JSON from [ArcGIS Open Data](https://hub.arcgis.com/pages/open-data) and verify the accuracy of individual features before importing them into OpenStreetMap."
import_guidelines: "Imports should be planned and executed with more care and sensitivity than other edits, because poor imports can have significant impacts on both existing data and local mapping community. If you'd like to import data in bulk you **must** heed OSM's [Import/Guidelines](http://wiki.openstreetmap.org/wiki/Import/Guidelines) and discuss the plan _in advance_."
license_approval: "Just because you find a public GeoService out in the wild does **not** mean you are allowed to import the data into OpenStreetMap! Importing is _only_ allowed if the organization has published it with a PD (Public Domain), CC0 (Creative Commons) or PDDL license or explicit permission has been granted for inclusion in OSM. You can find more information about ODbL license compatibility [here](http://wiki.openstreetmap.org/wiki/Import/ODbL_Compatibility)."
sample_geoservices: "[Madison, WI - bus lines](https://maps.cityofmadison.com/arcgis/rest/services/Public/OPEN_DATA_TRANS/MapServer/18), [Norfolk, VA - addresses](http://orfmaps.norfolk.gov/orfgis/rest/services/OpenData/Property_Information/MapServer/0'), [Hartford, CT - complex buildings / OSM relations](http://gis1.hartford.gov/arcgis/rest/services/OpenData_Community/MapServer/41), [Stark County / Canton, OH - bike lanes](https://webdmz.starkcountyohio.gov/arcgis/rest/services/RPC/RideStarkOnRoadBikeLane/MapServer/0)"
editing_process_1: "In the right menubar, select Map Data (as if you are importing a GPX layer)"
editing_process_2: "Click 'Add GeoService Layer'"
editing_process_3: "Use the iD editor's preset menu on the left to set a target import (for example, a building or address)."
editing_process_4: "Paste the GeoService URL into the text field (it is also possible to add a service to iD by including &geoservice=(escaped URL) in a link URL)."
editing_process_5: "You'll be asked to confirm that the copyright information for the service grants permission for the data to be included in OpenStreetMap."
editing_process_6: "Select 'Load in View' (for large datasets) or 'Load Globally' to control what is fetched."
editing_process_7: "The GeoService importer now gives you the option to map the service's fields to OSM tags. You can change the name of the tag in your GeoService. You can add new fields - for example, addresses in Norfolk, Virginia should have ```addr:city=Norfolk``` and ```addr:state=VA``` which are ignored as redundant in the city's data. Fields which you do not map are removed from the data before import. After features have been fetched they need to be reviewed and approved individually prior to being included in an actual changeset."
wat: "**I've heard of GeoJSON. What is a _GeoService_?** The [GeoServices](http://geoservices.github.io/index.html) REST specification was developed by Esri and transferred to the [Open Web Foundation](http://www.openwebfoundation.org/faqs/users-of-owf-agreements) in 2010. In iD, we are leveraging its predictable pattern for querying spatial data (ie: [which US County am I located in]( https://tigerweb.geo.census.gov/arcgis/rest/services/TIGERweb/Places_CouSub_ConCity_SubMCD/MapServer/15/query?
outFields=*&geometryType=esriGeometryPoint&geometry=-77.069,38.897&inSR=4326&f=geojson)). Besides datasets published with Esri tools, the open source project [Koop](http://koopjs.github.io/) makes it possible to use this tool to fetch data from CKAN and Socrata data stores as well."
field:
restrictions:
title: Turn Restrictions Help
Expand Down
Loading