I have a network of roads composed of arcs (segment of road connecting two intersections) and nodes (intersection of two or more roads). Each road, which is composed of one or more arcs has a name (e.g. Springville Avenue). I have one record for each arc and multiple arcs may share the same Road name if that road intersects several other roads. I want to assign an unique name to the individual arcs and to the nodes. I have partially in mind an approach, but I can't figure how to best implement it:

  1. I would name a node based on the Roads that intersect at it (e.g. nodeX = "Spingville Avenue + Bow Road").
  2. I would name an arc either A) based on the name of the nodes (created at step 1) at its ends (e.g. "Sprinville Avenue from NodeA to NodeB") or B) based on the name of the roads that intersect it at its ends (e.g. "Springville Avenue from RoadA to RoadB"). Option B doesn't require step 1 but if I have more than one road intersecting my arc at one of its ends I need to choose which of these roads will be considered for the name.

How can I achieve what in point 1 and 2 or which is a good alternative approach.

1 Answer 1


I'm not sure if that can help you, but here is a few ideas:

  • Be aware that a road can go for example in half circle and intersects the same road multiple times, so you can potentially have duplicated names (it should not be common, especially in the US where roads are mostly straight, but still)
    • I think you need to be sure to have distinct node name before building your road names, for example adding number at the end when there is duplicates
  • To choose which name to take when you have multiple choices, usually we take the biggest one (for example using highway field in OSM to classify), and / or alphabetical order, to be sure to have consistency
  • Another way to name the arcs, especially since they are ordered, is to use the distance from the start of the road (ex: 'Springville Avenue from 1212m to 1415m') but it can be less explicit, and you probably have roads in both ways that you need to distinguish
  • If you have access to a geocoding service you can take a point at the middle (or 1/3 to distinguish between the 2 ways) of your segment and use the address of this point, it has more chances to be unique while still being indicative

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.