Select to view content in your preferred language

geocoding for intersecting streets

4704
12
08-01-2012 08:09 AM
shay-geo
Frequent Contributor
Hello ,


We were trying to set up a geocoder for intersecting streets.

We took the intersecting points from street file, which has the information to set up geocoder. Then we dissolved all points to get 2 points per intersection. We then combined street names like "COUCHMAN AVE & POPPY ST" into addressCombined (new field) to bring all intersecting street field to search upon?


Questions are -
1. Is this a right way to set up geocode service for intersections?
2. Can point file work to set up geocode for intersections and what Locator Style, i will have to use?
3. Can geocode for intersection work just on input as "COUCHMAN & POPPY" or it needs Zipcode or City also?


Thanks and Regards,
Shay ~
Tags (2)
0 Kudos
12 Replies
JoeBorgione
MVP Emeritus
Hello ,


We were trying to set up a geocoder for intersecting streets.

We took the intersecting points from street file, which has the information to set up geocoder. Then we dissolved all points to get 2 points per intersection. We then combined street names like "COUCHMAN AVE & POPPY ST" into addressCombined (new field) to bring all intersecting street field to search upon?


Questions are -
1. Is this a right way to set up geocode service for intersections?
2. Can point file work to set up geocode for intersections and what Locator Style, i will have to use?
3. Can geocode for intersection work just on input as "COUCHMAN & POPPY" or it needs Zipcode or City also?


Thanks and Regards,
Shay ~


1: It's one way to do it.  I suspect you have two points because one is called Street A & Street B while the other is called Street B & Street A, right?

2: Yes you can use points; look here for a description of what types of locators are used with a specific feature type. Sometimes these single point type of locators are not very forgiving.

3. Personally, I just use a US Streets with alt names for geocoding for intersections.  If the propper name is say E COCHMAN AVE and S POPPY ST, you need to have alias names that allow it to match with just Cochman & Poppy.  You can also add your preffered intersection connectors:  I like &, and, @....

Hope this helps
That should just about do it....
0 Kudos
shay-geo
Frequent Contributor
Hello Joe,

Thank you for the response.  It definitely helped.

We do have two points as you mentioned.

Will you be able to elaborate on # 3 please?  As we tried to create a locator (from SDE point file) using US street style and having "combinedAddress" as primary address field. But no luck so far.

Also, Do all ESRI based Geocode services have [Zip code] a mandatory field?


Thanks and Regards,
Shay ~



1: It's one way to do it.  I suspect you have two points because one is called Street A & Street B while the other is called Street B & Street A, right?

2: Yes you can use points; look here for a description of what types of locators are used with a specific feature type. Sometimes these single point type of locators are not very forgiving.

3. Personally, I just use a US Streets with alt names for geocoding for intersections.  If the propper name is say E COCHMAN AVE and S POPPY ST, you need to have alias names that allow it to match with just Cochman & Poppy.  You can also add your preffered intersection connectors:  I like &, and, @....

Hope this helps
0 Kudos
JoeBorgione
MVP Emeritus
Will you be able to elaborate on # 3 please? As we tried to create a locator (from SDE point file) using US street style and having "combinedAddress" as primary address field. But no luck so far.

Also, Do all ESRI based Geocode services have [Zip code] a mandatory field?


I can't see how you can use points in a us street style; that style of locator uses ranges for address interpolation.  When using streets as the basis to match to, intersections are 'found' by actual geometric intersections of the features.  So if Main St and Elm Ave intersect as features, you can get a hit by using Main ST & Elm Ave as the address.  However, if Main St over passes I-80, you can not get a match with I-80 & Main St.

As far as aliases, that's an art in and of itself.  Depending on how lazy your geocoding staff is, you'll need a varying degree of aliases.  Out of the box, a 100% match for an intersection needs to be entered just as the streets are parsed in the locator.  So if you define pre-dir, street-name, suf-dir street-type etc, you need to enter your intersections accordingly:

S MAIN ST & E ELM AVE

So your geocoding staff need to on their game.

But if you alias or use use a series of locators that don't parse out the components in a composite, you can get good results with:

MAIN & ELM

So the geocoding staff gets to be lazy. 

As far as zip codes go, in all the years I've been geocoding and all the records I've geocoded (I work at two large 9-1-1 call centers) I've never used Zip Codes. City-Codes at times, but no zip codes.  Your mileage may vary....

Hope this helps-
That should just about do it....
0 Kudos
AmySmith3
Deactivated User
When using streets as the basis to match to, intersections are 'found' by actual geometric intersections of the features.  So if Main St and Elm Ave intersect as features, you can get a hit by using Main ST & Elm Ave as the address.  However, if Main St over passes I-80, you can not get a match with I-80 & Main St.


Hi jborgion!

Do you happen to know if there's a way to create geometric intersections of street features where they don't currently exist? For example, say I want to geocode something to the point where Main St passes over I-80. I would need that to be considered an intersection in order to retrieve a match when geocoding "I-80 & Main St".

Any advice would be greatly appreciated!

Amy
0 Kudos
JoeBorgione
MVP Emeritus
Hi jborgion!

Do you happen to know if there's a way to create geometric intersections of street features where they don't currently exist? For example, say I want to geocode something to the point where Main St passes over I-80. I would need that to be considered an intersection in order to retrieve a match when geocoding "I-80 & Main St".

Any advice would be greatly appreciated!

Amy


Amy-  personally I think you are looking for trouble but yes it can be done; I actually found an old (very old, like 9 years) post of mine here.  This is a link to the current Planarize Lines tool.

So why don't I like the idea?  As GIS practitioners our job is to model features in geographic space as closely as we can to the real-world.  Quite frankly, Main and I-80 DON'T intersect.  Creating such an intersection compromises the data integrity.  😞

You may be geocoding against these features today, and next week your boss says 'Hey, whats this thing I read about called Network Analysis?'  All of the sudden you are scrambling because your routes include the Main St overpass to I-80 connectivity. (Boss: 'Amy!  How the h-e-double-hockey-stick did that delivery truck just drop 75 feet from Main to I-80?')  :mad:

Also, consider that you've spent all this time getting your address ranges just the way you want them.  You planarize the streets and instead of having one continuous line segment of Main St with a range of 100-500, you have TWO; each with the exact same range.  Ouch.  Back to (re)editing ranges!  😛

Depending on the number of non-intersections you are dealing with, you might consider creating a point feature class to depict them.  My guess is you'll thank me in the morning!  :rolleyes:

Hope this helps-
That should just about do it....
0 Kudos
AmySmith3
Deactivated User
My guess is you'll thank me in the morning!


Hi Joe,

First of all, yes! Thanks! I very much appreciate the sage advice, and I agree, it's important not to compromise the data just for the sake of results. I had actually been testing out the "Planarize" method, making sure to create a copy of my streets feature class before hand and clearly label it as "Planarized" (this would hopefully be a red flag for someone looking to create a network).

The thing I noticed about the planarize technique is that it works well when using the "Dual Ranges" address locator style, but not so well with the "Street Name" style. Do you have any ideas as to why this is?

Finally, I wanted to mention that the table I am working with does not include house numbers, but rather primary and secondary streets. The intersections act more as reference points than precise locations. For example, the primary street and secondary street may not technically intersect, but the space that the two streets share is a reference point for where an event occurred.

Thanks again for your help!

Take care,

Amy
0 Kudos
JoeBorgione
MVP Emeritus
The thing I noticed about the planarize technique is that it works well when using the "Dual Ranges" address locator style, but not so well with the "Street Name" style. Do you have any ideas as to why this is?


I've never had occasion to to use the dual range type of locator; I'm a U.S Streets With Alt Name kind of guy.  Not sure why it would work better.

Finally, I wanted to mention that the table I am working with does not include house numbers, but rather primary and secondary streets. The intersections act more as reference points than precise locations. For example, the primary street and secondary street may not technically intersect, but the space that the two streets share is a reference point for where an event occurred.


All the more reason to use points
That should just about do it....
0 Kudos
AmySmith3
Deactivated User
All the more reason to use points


Hi Joe,

I'm not sure I completely understand what you mean by using points (Sorry! I'm still learning the ins and outs of geocoding). :confused: Is there a way to use points as references in an address locator, and subsequently to geocode a table of intersections?

Thanks again for all of your help!

Amy
0 Kudos
JoeBorgione
MVP Emeritus
Is there a way to use points as references in an address locator, and subsequently to geocode a table of intersections?


You bet.  You need to create a point feature class.  That's why I mentioned earlier 'depending on how many you have'; you are looking at creating a point (or two) for your faux intersections.  See my attached image for clarification.  I've added a couple of points to my point feature class; the attribute table is very simple; just one field called..... Location. 

Notice that two of my locations are at over/underpasses, and I named them with respect to the freeway.  This is where you might need two points, since it could be I-15 at Harrisville or Harrisville at I-15, right?  You could also use an alias table but I'm not going to get into that. But the Pioneer Exchange is just that, and nothing else.

You would need to decide on a naming convention; that is really important since point based locators are typically not very forgiving. Take a look here for the various locator types and thier associated feature classes.  I use the Single Field type very often for 'common place names'; I can resolve to a point location of various features like Business Names, Mile Markers, Picknick Areas, etc etc.  So if my 'location' field is populated with "Amys Bar and Grill" I get match.  If I type in "Joes House" I get a hit on it as well....

Hope this helps-
That should just about do it....
0 Kudos