Utah/Naming Conventions
This set of proposed local naming conventions is currently being discussed, and some data consumers don't handle it correctly. |
Why Local Naming Conventions for Utah?
Most cities and towns in Utah adhere to a local grid system for naming most streets. Street names consist of a directional prefix, a number, usually a multiple of 100, and a directional suffix. The prefix and the suffix together designate the quadrant relative to the local grid origin (compiled list of grid origins available from the state here). Currently, the way these unique street names are represented in the highway name=* family of tags is inconsistent, hence these guidelines.
An example of a full street name would be: West 2100 South, which would be the section of 2100 South, an east-west street, that lies west of the vertical origin axis. However, street names are usually signed without the prefix and with the suffix abbreviated, so on the ground, you would find 2100 S signposted.
In OSM, we follow the On the ground principle and the general OSM convention of not abbreviating names. How these principles apply to Utah streets is as follows. This means that the street name=* tag should be 2100 South. This means that the West prefix in the street name belongs in a separate tag, which is name:prefix=*. You should not add the name:suffix=* tag, because the suffix is already encoded in the name. You should also add name:full=* to reflect the full name, in this case West 2100 South. Therefore, the minimum correct name tagging for West 2100 South is below. See a segment of this road here: 31532361 31532361,
name=2100 South name:prefix=West name:full=West 2100 South
Relation to addr:street=*
The general convention in OSM is to have the value of addr:street=* match the value of the corresponding way's name=* tag. In the case of Utah addresses, this is not possible. For example, if you live on 1425 West 1300 South, the street's name=* would be 1300 South, so if a data consumer would derive a full address from addr:housenumber=* and addr:street=*, they would end up with 1425 1300 South, which is an incomplete address. The addr:street=* value should therefore be West 1300 South in this case.
Applications of other name tags
Other name tags that may come up in Utah and their applications include:
- official_name=* works as described on its page, where the common name is still the grid number, but it is honorarily named after something or someone of significance. For an example, see 600 South, also known as Martin Luther King Junior Blvd
- alt_name=* is used for the grid number, when the common name is an English name, but the grid number is still sign posted in smaller text. For an example, see Sharron Drive, which is technically also 5820 South
- Optionally, short_name=* can be used for abbreviations of North/South/East/West into N/S/E/W, as they would commonly be written. For an example, see 1250 West (1250 W)
- Optionally, loc_name=* is used to store the way a local would actually read a street's name, which is that streets that ending in 00 are read as an ordinal number with the 0's dropped (e.g. 4700 South becomes 47th South). For an example, see 4700 South
What about name_1=* etcetera?
A lot of streets in Utah have name_1 and even name_2 tags. These were added with the original TIGER import, but are deprecated. If a street has an alternate name that is signposted, use alt_name=*, loc_name=* or another accepted name variant. If you come across name_1 / name_2 tags, please help clean them up by changing them to an appropriate, documented name variant tag.
Known deviations from the normal street design and how to handle them
- Most of Ogden signs their streets with names like 32nd St.. In OSM, this should be represented with name=32nd Street, and optionally with alt_name=East 3200 South. Addresses on streets that use this scheme generally do not include the "East" prefix, (or the "South" prefix for the presidential streets). However, addresses on streets north of 1st Street must include the prefix; 2405 North Washington Boulevard is different from 2405 Washington Boulevard, but 2405 Washington Boulevard and 2405 South Washington Boulevard are the same.
- Many streets in Utah and Box Elder Counties have both a city name and a county name. Whichever name is more prominent on a sign for that block should be included in OSM as name=*, and this is normally the city name. The other name should be included as alt_name=* if it is signed, and optionally may be included as alt_name=* if it is not signed. The name of the city should not be included in name=* unless it is signed that way, e.g., a name like "Main Street (Lehi)" is disfavored.
- Washington and Iron Counties are partly signed in the format of "200 North St." or "200 N St.". These should be mapped with "name=200 North Street", and the addr:street=* will encode the unsigned prefix.
Conventions
To summarize, we adhere to the following conventions in Utah:
- For highway=* name=* that follow the grid system, use the signposted name with an expanded suffix: 100 North, 14600 South.
- For highway=* name=* that do not follow the grid system, but have a signposted alternate grid-based name, optionally add this as an alt_name=*.
- For addr:street=*, use the full name with expanded prefix and suffix: West 100 North, East 14600 South.
- Do not use name_1=* / name_2=* and change existing tags to an appropriate documented name variant tag.
- As always: do not bulk edit without discussing!
Issues
- The Nominatim geocoding software (used on osm.org and elsewhere) will not find addresses with shortened directional names. For example, the query "974 North 300 East Logan Utah" resolves correctly whereas the abbreviated search "974 N 300 E Logan Utah" does not. This is because the tags name:full=* and name:prefix=* don't correctly expand cardinals. (The more typical name=* cardinal expansion works correctly.) A Nominatim maintainer has expressed that they would like to see more general consensus on this in the US before the problem is fixed on Nominatim's end.
- Both Organic Maps and OsmAnd will find specific buildings only when said building's street address tag matches the nearby street's name=* exactly. (If this page's convention is followed, they usually will not match, eg building addr:street=South 525 East, and nearby road name=525 East) Example: "482 Hawthorne River Heights" works, whereas any variation of "867 South 525 East River Heights" only finds the street 525 East.
Activities
- A reusable addressing activity for Utah/Naming Conventions.