I have two spatially identical line datasets and need to find where they differ by the "type" field that is in both feature classes.
which transformer is best suited for this type of comparison?
I have two spatially identical line datasets and need to find where they differ by the "type" field that is in both feature classes.
which transformer is best suited for this type of comparison?
Hi @ethanheidtman,
The easiest transformer to use for this would be the ChangeDetector, but this tutorial series should help with an overall understanding of Change Detection.
Hi @ethanheidtman,
The easiest transformer to use for this would be the ChangeDetector, but this tutorial series should help with an overall understanding of Change Detection.
The problem I am running into is that there is no common ID between the two datasets.
I would try the matcher to match identical geometries and use the 'type' field for the attributes must differ parameter.
ChangeDetector should work fine. You don't need to have a common ID. ChangeDetector works with or without an update detection key attribute.
You can select your attribute in Check Attributes > Selected Attributes. By default Check Geometry should be enabled.
Features, which match by geometry and by selected attribute, are output from Unchanged port. Features, which either differ by geometry or by the selected attribute, are output from Inserted port.
I would try the matcher to match identical geometries and use the 'type' field for the attributes must differ parameter.
So it looks like the matcher is working. Is there way to show how the attribute changed?
i.e. "Type" changed from Class 1 to Class 3.....
So it looks like the matcher is working. Is there way to show how the attribute changed?
i.e. "Type" changed from Class 1 to Class 3.....
I would probably use the matched port rather than the SingleMatched port, sort by the match group then date, then use adjacent attribute handling to work out the previous value.
You could also use the SingleMatched output port and build a list containing the date and type attributes, sort the list by date, then list{0}.type is the previous value and list{1}.type is the new value. Although I'm not sure with this scenario which value of the type attribute the single matched output inherits
(I'm also presuming you only have 1:1 matches)