Select to view content in your preferred language

Can Detect Feature Changes be pointed at field other than OBJECTID for comparison?

2009
7
10-10-2017 06:35 AM
MarcusVowell
Emerging Contributor

I need to be able to bring in Shapefiles that represent assets (polylines) as they were in different months and figure out which ones were added, which deleted, and which had some attributes change between the two layers.  I'm trying to use Detect Feature Changes for this, but I'm running into a problem where some changes are being detected where no change exists.  Digging into it, I discover that it's claiming a feature was deleted and an identical one was added and the reason for this is the OBJECTID was different between the two features. 

As I understand it, the OBJECTID is assigned to each feature by ArcGIS as the layer is being imported into the map.  Or perhaps this is done when the layer is exported at the source.  Either way, some automated process assigns these numbers and there is no way to ensure consistency.  However, there is already a unique identifier for the feature in the table that is the same between the two.  Is there a way to make Detect Feature Changes use a field other than OBJECTID as its key for comparison?  I tried putting that field in the Match Fields section of the tool's dialog box, but this had no effect.

Thank you in advance for any help you can give on this!

0 Kudos
7 Replies
DanLee
by Esri Regular Contributor
Esri Regular Contributor

Hi Marcus, you are right to use the Match Fields in Detect Feature Changes (DFC) tool and specify your common identifier field for both inputs. As the parameter description says "each pair of fields are checked for match candidates to help determine the right match". Notice that the system OBJECTID or FID field is not listed in the drop-down list; the tool does not use the system field at all.

What you described could be a bug in the tool. Would it be possible for you to share subsets of your data where the unexpected changes occurred so we can investigate?

0 Kudos
MarcusVowell
Emerging Contributor

Absolutely.  In what form do you want the sample data and where should I send it?

Thanks so much for looking into this.

0 Kudos
DanLee
by Esri Regular Contributor
Esri Regular Contributor

I assume the file size not too big; you can attach it to an email to dlee@esri.com

If you have them in geodatabase, great. Otherwise, shapefiles are fine too. Thanks!

What version of Pro or 10.x are you using?

0 Kudos
MarcusVowell
Emerging Contributor

Sorry, I missed your question about version.  I'm using Pro 2.0.1

Thanks!

0 Kudos
steveallenstein
Emerging Contributor

I am using the DFC tool on two county-wide roadway centerline datasets. I found that using fields for matching, which in my case is street name, primarily affects the confidence level of the match. It does not affect the change_type in my testing. Theoretically, it may result in change_type SA and A but I don't get these values in my results, for reasons unknown. 

0 Kudos
DanLee
by Esri Regular Contributor
Esri Regular Contributor

Hi Steve, it's nice to know you are using the DFC tool. The specified Match Fields is used to help determine a better match among multiple, spatially similar candidates; the one with matching values (street name in your case) would be picked and get higher confidence level (stronger match).

To detect attribute changes, you should use the Compare Fields parameter. As the tool reference says: "An attribute change (change type A) is detected based on the Compare Fields parameter. If you specify one or more pairs of fields for Compare Fields, matched features are checked against these fields to determine if there is an attribute change... If both spatial and attribute changes are detected for a matched update feature, it gets the change type SA."

So, internally feature matching is done first with or without Match Fields. Attribute changes are detected for already matched features - you want to know if there are differences in their attributes. Hope this helps.

steveallenstein
Emerging Contributor

Thank you, I will read the documentation more closely!

0 Kudos