nationalparkservice / places-editor

The easy-to-use OpenStreetMap editor, iD, customized for use by the National Park Service's Places system.
https://www.nps.gov/maps/tools/places/
Other
7 stars 6 forks source link

Formulate logical layerIndex ordering #85

Closed chadlawlis closed 9 years ago

chadlawlis commented 9 years ago

We need to formulate a logical layerIndex ordering, which determines the order in which presets appear in the "Select feature type" menu (dev Trail example below):

dev_trail_layerindex

I created a copy of the NPS_Preset_Classes spreadsheet as Preset layerIndex to focus this effort. Filter to a data type (point, line, or polygon) and isDefault = True to view the presets set to show up as defaults along with their layerIndex (up to 100, the higher the number the higher in the list the preset appears). The goal is to determine the appropriate features to list as defaults, and a logical order in which they should appear.

chadlawlis commented 9 years ago

Note: layerIndex is our new matchScore, which has been antiquated.

These are the previous iD defaults.

chadlawlis commented 9 years ago

Line

Road superclass:

  1. Unknown Road
  2. Highway
  3. Primary Road
  4. Secondary Road
  5. Minor Road
  6. Residential Road
  7. Service Road
  8. Parking Aisle

I list "Unknown Road" at the top because we are encouraging editors to default to this road type if they do not know the road classification. Roads excluded from this default list are the following (which will require a search to select):

chadlawlis commented 9 years ago

Line

Trail superclass:

  1. Non-Motorized Trail
  2. Motorized Trail
  3. Horseback Riding
  4. Bicycle Trail
  5. Pedestrian Path
  6. Sidewalk
  7. Steps

Including Horseback Riding, Bicycle Trail, and Pedestrian Path is inspired by the "Horse", "Bicycle", and "Foot" approved uses available for Non-Motorized Trail. While {"highway":"path","foot":"yes"} (the underlying tags behind Non-Motorized Trail with Approved Uses Foot = Yes) does not map to Pedestrian Path, it would make sense for it to or another similar preset like "Foot Path" (which OSM uses).

Currently, {"highway":"path","foot":"yes"} maps to "Road" (because {"highway":"*"} has a higher layerIndex than a Non-Motorized Trail {"highway":"path"}.

Trails excluded from this default list are the following (which will require a search to select):

chadlawlis commented 9 years ago

Area

  1. Building Footprint
  2. Parking Lot
  3. Area

(same as it is currently in the test version):

area_presetorder

chadlawlis commented 9 years ago

Point

Point superclasses are as follows:

Only superclasses with two or more presets will form a category in the "Select feature type" menu, otherwise the superclass will not encapsulate the preset. The "Accessibility" superclass only houses the "Wheelchair Accessible" preset, therefore the superclass will not show up as a category and only the preset will appear as a default.

chadlawlis commented 9 years ago

Point

Default presets

  1. Visitor Center
  2. Entrance Station
  3. Trailhead
  4. Campground
  5. Park District
  6. Parking Lot

1-5 are the priority POI types driving individual pages on the redesigned NPS.gov, so it is logical to highlight these above the rest. Parking lots are very common, so it is logical to include it here as well.

Accessibility superclass

No defaults.

Others (searchable):

Accommodation superclass

No defaults.

Others (searchable):

Building superclass

  1. Headquarters
  2. Lodging
  3. Office
  4. Historic Building

Others (searchable):

We are looking into removing Hospital Building and Hotel Building, given the Hospital and Lodging points.

Land Recreation superclass

  1. Campsite
  2. Picnic Area
  3. Picnic Table
  4. RV Campground
  5. Self Guiding Trail

Others (searchable):

Locality superclass

No defaults.

Others (searchable):

Miscellaneous superclass

No defaults (not a particularly useful superclass name).

Others (searchable):

Road Feature superclass

No defaults.

Others (searchable):

Service superclass

  1. Ranger Station
  2. Information
  3. Food Service
  4. Store
  5. Gas Station
  6. Telephone
  7. Drinking Water
  8. Litter Receptacle

These are also all included in the Tracing Guide, which were included because they are some of the most commonly added POI types.

Others (searchable):

Water Recreation superclass

Others (searchable):

Winter Recreation superclass

No defaults.

Others (searchable):

chadlawlis commented 9 years ago

We should rename this from layerIndex, which Mapbox uses, to something unique and specific to preset ordering (to decouple it from the order in which the layers render on the map), something like presetOrder.

Also, find the preset and category listing/ordering logic here: https://github.com/nationalparkservice/places-data/blob/gh-pages/tools/compileId.js#L66-L112

chadlawlis commented 9 years ago

@jimmyrocks @nateirwin consider the orderings under Point, Line, and Area my suggestions on this. The numbered presets are those that would appear in the "Select feature type" menu, and in that order. The superclasses with numbered presets are those that would appear as categories under Point, with the categories showing up alphabetically. Take a look at let me know what you think. Happy to clarify anything as necessary.

nateirwin commented 9 years ago

For Point defaults, I would make the order:

  1. Visitor Center
  2. Entrance Station
  3. Campground
  4. Park District
  5. Trailhead
  6. Parking Lot

And I think I would also include Restroom and Ranger Station in the defaults, as well.

nateirwin commented 9 years ago

For the road superclass defaults, I almost think we should include everything but links:

  1. Unknown Road
  2. Highway
  3. Primary Road
  4. Secondary Road
  5. Minor Road
  6. Residential Road
  7. Service Road
  8. Parking Aisle
  9. Tertiary Road
  10. Private Road
  11. Four Wheel Drive Road

That adds three to your list, but it is nice to be able to see all the "main" types in a heads-up view as soon as you select road.

I could definitely see an argument for leaving "Tertiary" out because it seems to be the same as "Minor".

I could also see leaving "Four Wheel Drive Road" out because it seems out of place with the rest of the classifications. It is the only one that seems to address specific usage.

nateirwin commented 9 years ago

About trails, do you think we could have the superclass just include this list?

  1. Non-Motorized Trail
  2. Motorized Trail
  3. Sidewalk
  4. Steps

Again, I think horseback, bicycle, and pedestrian are more about usage, and should be captured in the usage checkboxes.

I suppose we could also do this list:

  1. Horseback Riding
  2. Bicycle Trail
  3. Pedestrian Path
  4. Sidewalk
  5. Steps

But then there isn't really a way to designate a motorized trail. I guess what is bothering me is the overlap between Non-motorized Trail and Horseback Riding, Bicycle Trail, and Pedestrian Path.

Another idea: we could potentially treat Sidewalk and Steps like we treat Crosswalk, Bridge, etc., right? Maybe Sidewalk is deserving of its own classification (although the difference between a sidewalk and a paved trail through a park is something we're going to have to explain to people), but it seems like Steps could definitely be treated as just part of a larger trail that has its own classification.

chadlawlis commented 9 years ago

Re: @nateirwin's comments:

I am good with https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-136895279 and would order as follows:

  1. Visitor Center
  2. Entrance Station
  3. Campground
  4. Park District
  5. Trailhead
  6. Parking Lot
  7. Ranger Station
  8. Restroom

I am okay with https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-136896158, but if we were to include "Tertiary Road" I would move it above "Minor Road" (and we would have to make very clear the difference between the two). We were previously thinking of removing "Tertiary Road" altogether, and it is currently not included in the Tracing Guide. I am okay with including "Private Road", but again we will need to make very clear its definition - I am a little concerned with this being overused. And I think we should avoid including "Four Wheel Drive Road" as this will typically fall under "Four-Wheel Drive Trail" instead.

I am generally good with https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-136897562. I was torn between including only "Non-Motorized Trail" and "Motorized Trail" but ended up including "Horseback Riding", "Bicycle Trail", and "Pedestrian Path" because OSM includes these in their Line presets and it also makes it easier to add these (instead of going through the Approved Uses form). If we are going to include one set or the other, we should definitely include "Non-Motorized Trail" and "Motorized Trail".

I guess what is bothering me is the overlap between Non-motorized Trail and Horseback Riding, Bicycle Trail, and Pedestrian Path

I thought about this last week and had the same reaction. It might be a little confusing that the feature classification would change based on the Approved Uses selected, but I think it is okay so long as we make it clear and it is not unexpected.

Re: "Sidewalk", I agree that this might make more sense under a "Structure" form in a road or trail preset, but will defer to @jimmyrocks.

nateirwin commented 9 years ago

Points of interest sound good.

About roads: If we don't want people using them (e.g. the "Tertiary Road" vs. "Minor Road" and "Four Wheel Drive Road" vs. "Four-Wheel Drive Trail" questions, do we even need them as presets at all? If I were digitizing a four-wheel drive trail/road and I started typing "Four-wh..." in the preset search and both popped up, I'd be really confused. If we are going with "Four-Wheel Drive Trail", let's just take out "Four Wheel Drive Road". In the same way, if "Tertiary Road" and "Minor Road" are very similar, let's just take one of them out and call it a day.

With trails, I'm really struggling because the NPS has relatively few "Motorized Trails", but we are giving them Class A treatment in Places Editor. That may be unavoidable, but I do think we can simplify. What about going with:

  1. Pedestrian Path
  2. Horseback Riding
  3. Bicycle Trail
  4. Motorized Trail

To me, that does away with the confusion of having overlaps between "Non-Motorized Trail" and the trail use cases, and it still supports adding motorized trails but de-emphasizes them a bit.

And finally, "Sidewalk" and "Steps", I could see keeping "Sidewalk" as its own preset (because the definition of a sidewalk is a paved walkway adjacent to a road), but I just think it's going to confuse people so we'll need to document the difference between a sidewalk and a pedestrian path. To me, "Steps" should definitely be included as a structure.

chadlawlis commented 9 years ago

I've been advocating for the removal of "Four Wheel Drive Road" given the existence of "Four-Wheel Drive Trail" so I am good with that. I am also okay with removing either "Tertiary Road" or "Minor Road" unless we can make the distinction clear in the NPS context. I've personally never been one to add "Tertiary Road" as the definition has never been clear to me.

I am okay with that list for trails, but my only concern in hiding "Non-Motorized Trail" is when someone is looking to add a multi-use trail. If someone wanted to add a trail open to hiking, biking, and horseback riding what would be the logical way for them to add this? Going through any one of these presets wouldn't be very intuitive. Also, because of the Approved Uses hierarchy (Bicycle > Horse > Foot) if someone were to add Bicycle = yes to Horseback Riding then Editor will automatically reclassify it to a Bicycle Trail. So, just some scenarios to be aware of...

Keeping Sidewalk and moving Steps to a Structure form makes sense to me, +1.

nateirwin commented 9 years ago

Humm, isn't the approved uses hierarchy supposed to be Horse > Bicycle > Foot?

Also, to me "Four-Wheel Drive Road" makes more sense than "Four-Wheel Drive Trail", as something being called a road means its primary use is for vehicles. Unless I'm missing something there.

I get what you're saying about multi-use-trail. How about we change the name to "Multi-use Trail" and get rid of "Motorized Trail" altogether?

chadlawlis commented 9 years ago

I thought it was supposed to be Horse > Bicycle > Foot as well, but it's not currently functioning like that in the test editor though.

I guess I could go either way on Four Wheel Drive Road/Trail. I am more familiar with the idea of a Four Wheel Drive Trail - typically a hardened track running through the woods/mountains - while I am less familiar with a Four Wheel Drive Road. I'm good with either, so long as we choose one and make its definition clear.

Removing Non-Motorized and Motorized Trail and going with only "Multi-Use Trail" along with each individual use case (Horseback Riding Trail, Downhill Skiing Trail, All-Terrain Vehicle Trail, etc) could make sense to me for sure.

nateirwin commented 9 years ago

Cool! Let's do it.

chadlawlis commented 9 years ago

@jimmyrocks any thoughts?

In summary:

nateirwin commented 9 years ago

Well, on second though, if we are going with the commonly-known approved uses it should be Horse > Foot > Bicycle. Not sure what "Approved Uses" means in this context, though I will say that the most common use case in National Parks is "Foot" then "Horse" then "Bicycle."

chadlawlis commented 9 years ago

Those are the options in the "Approved Uses" form when adding a non-motorized trail, and the hierarchy determines the resulting trail classification.

So, with Foot > Horse > Bicycle if someone were to add a trail with all 3 approved uses, it would result to Pedestrian Path or something similar (although right now the test editor classifies it as Road). That is, the classification is being determined from the highest level approved use.

nateirwin commented 9 years ago

Ah ok, that makes sense. I'll stop being difficult now ;-)

jimmyrocks commented 9 years ago
chadlawlis commented 9 years ago

"Non-Motorized Trail" is "highway"="path" where "Motorized Trail" is "highway"="trail". Since these use two different core tags, it would be hard to merge them together.

Good point, although "Motorized Trail" is actually {"highway":"track"}. We could remove this tag and feed all trail classifications into {"highway":"path"} but that would go against our original reasoning that paths aren't intended for motorized vehicle access while tracks are (and OSM supports this logic). So, I am a bit torn here...

To list them out, classifications resulting from the Non-Motorized Trail preset are:

Classifications resulting from the Motorized Trail preset are:

So, regarding https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-137130558:

With trails, I'm really struggling because the NPS has relatively few "Motorized Trails", but we are giving them Class A treatment in Places Editor.

There are actually a decent number of Motorized Trails, so this seems to warrant inclusion as a default.

Regarding the Four-Wheel Drive Trail vs. Road:

I'm not sure why we have both. I would remove "Four-Wheel Drive Road" because if it's a road, you probably don't need a 4wd. We also have 8 four wheel drive trails in Places, but no roads. But somebody wanted this preset, and I'm not sure why.

Including both originated with the GIS road and trail standards, which include a four-wheel drive vehicle classification in both:

So, we created both so that each GIS standard would map to something. We could just map both to Four-Wheel Drive Trail - I would recommend this.

jimmyrocks commented 9 years ago

Motorized vs Non-Motorized

I like @nateirwin's ordering in https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-137130558 I'd be ok going with that in the default list.

There are 1719 "Motorized Trails" in places and 15836 "Non-motorized trails"

"Four-Wheel Drive Road"

Given that we don't have any 4wd roads, I say, let's use this opportunity to get rid of the preset.

chadlawlis commented 9 years ago

So, keep both Motorized and Non-Motorized but remove the latter from the default list?

+1 to removing Four-Wheel Drive Road.

jimmyrocks commented 9 years ago

So, keep both Motorized and Non-Motorized but remove the latter from the default list?

yes

+1 to removing Four-Wheel Drive Road.

…or we can leave 4wd road as a preset (so GIS can add it) but we take it out of the editor, so people who don't know what it is don't get confused.

chadlawlis commented 9 years ago

…or we can leave 4wd road as a preset (so GIS can add it) but we take it out of the editor, so people who don't know what it is don't get confused.

I'll ping Angie, as I have for a couple other presets we're looking to remove that she added. Let's move ahead with keeping both but only including Four-Wheel Drive Trail as a preset option in Editor.

jimmyrocks commented 9 years ago

You mean, leave it in the list of presets, but set the inEditor field to false, right?

chadlawlis commented 9 years ago

Yessir

chadlawlis commented 9 years ago

Added to https://github.com/nationalparkservice/places-data/issues/134

Let's proceed with removing from Editor for now, will remove altogether with Angie's confirmation.

chadlawlis commented 9 years ago

Okay, we are good to go with removing the "Hospital Building" and "Hotel Building" presets, which I will remove from the NPS_Preset_Classes spreadsheet) and the "Four-Wheel Drive Road" preset from Editor (which I will set inEditor = FALSE, but we will continue to support the underlying tag, for use with GIS imports).

We will keep "Non-Motorized Trail" and "Motorized Trail" but remove the former from the default list, including the following under the "Trail" category:

  1. Pedestrian Path
  2. Horseback Riding
  3. Bicycle Trail
  4. Motorized Trail

The following requests are still unresolved:

chadlawlis commented 9 years ago

So, final layerIndex (to be added as new field presetOrder) lists:

Line

Road superclass:

  1. Unknown Road
  2. Highway
  3. Primary Road
  4. Secondary Road
  5. Minor Road
  6. Residential Road
  7. Service Road
  8. Parking Aisle
  9. Private Road

Searchable-only:

(removing Tertiary Road + Link from Editor).

Trail superclass:

  1. Pedestrian Path
  2. Horseback Riding
  3. Bicycle Trail
  4. Motorized Trail

Searchable-only:

chadlawlis commented 9 years ago

Area

  1. Building Footprint
  2. Parking Lot
  3. Area

(same as it is currently in the test version):

area_presetorder

jimmyrocks commented 9 years ago

The following requests are still unresolved:

  • Change "Approved Uses" hierarchy to Horse > Bicycle > Foot

    I'll have to hard code this into iD or add a new column to spreadsheet, is there any preference on this?

    • Remove either "Tertiary Road" or "Minor Road"

    Both have been used in the map, and both have valid uses. We can take Tertiary out of the editor.

    • Remove "Steps" as a preset and add into the "Structure" form for roads and trails

This cannot be done within iD and the current OSM schema. Highway=steps is its own tag can we drop this issue in the meantime? it will either require a different schema or a major change to how iD id handling presets.

chadlawlis commented 9 years ago

Point

Default presets

  1. Visitor Center
  2. Entrance Station
  3. Campground
  4. Park District
  5. Trailhead
  6. Parking Lot
  7. Ranger Station
  8. Restroom

Accessibility superclass

No defaults.

Searchable-only:

Accommodation superclass

No defaults.

Searchable-only:

Building superclass

  1. Headquarters
  2. Lodging
  3. Office
  4. Historic Building

Searchable-only:

Land Recreation superclass

  1. Campsite
  2. Picnic Area
  3. Picnic Table
  4. RV Campground
  5. Self Guiding Trail

Searchable-only:

Locality superclass

No defaults.

Searchable-only:

Miscellaneous superclass

No defaults.

Searchable-only:

Road Feature superclass

No defaults.

Searchable-only:

Service superclass

  1. Information
  2. Food Service
  3. Store
  4. Gas Station
  5. Telephone
  6. Drinking Water
  7. Litter Receptacle

Searchable-only:

Water Recreation superclass

Searchable-only:

Winter Recreation superclass

No defaults.

Searchable-only:

nateirwin commented 9 years ago

@jimmyrocks:

  1. I don't think the approved uses hierarchy is all that important. We can probably drop it for now.
  2. I'd say let's take tertiary out of Editor. The fact that they're both being used doesn't mean they are both needed. It may just mean that someone was confused by the classifications and chose one randomly.
  3. We *can drop the steps issue, but this doesn't seem intuitive to me at all, and it pushes forward a different workflow for steps than we have for bridges, tunnels, etc.
chadlawlis commented 9 years ago

Sounds good to me.

https://github.com/nationalparkservice/places-editor/issues/85#issuecomment-137480806 updated to reflect removal of Tertiary Road + Link.

jimmyrocks commented 9 years ago

As far as the steps thing. I think it's a good idea, but it would require changes to iD that could take a little while to develop, so let's not drop it, but let's leave it as an open issue.

nateirwin commented 9 years ago

Works for me.

chadlawlis commented 9 years ago

Great, I can move that to another issue so it doesn't get lost in the clutter.

I will add the default ordering to the spreadsheet now under a new field defaultOrder and close this out when done.

chadlawlis commented 9 years ago

defaultOrder has been added to the spreadsheet and populated.

Features are ordered within feature types (point, line, and area). Categories within feature types are ordered by feature of the highest ranking defaultOrder within them. Features that "pop out" above the categories (currently only for point) are negative numbers.