Question

Identify exact attribute changes when comparing two sets of data

  • 2 October 2013
  • 5 replies
  • 18 views

Badge +6
Hi everyone,

 

 

I am using FME 2013 for comparing geometry and attribute changes between two Shape files, one being more recent than the other. The two Shape files have exactly the same type of geometry and schema (same attributes names and definitions). They also have a lot of attributes (more than 50 I think). I have set up a logic for reporting significant differences in geometry as well as records having at least one attribute value not matching with the corresponding one in the other set. The attribute matching part can be achieved rather easily with a ChangeDetector, Matcher or CRCCalculator. These transformers will report features containing at least one attribute change among those that have been selected in the transformer properties.

 

Given the great number of attributes I would like to to identify which specific attribute(s) has(have) indeed been modified between the two sets. I don't see an option using the standard transformers mentioned above. I did manage to get something working by using the AttributeExploder followed a bit later by a Matcher and looking for combinations that could not be matched (implying an attribute value change). This generates of course a lot of records and I was wondering if there isn't any easier way, which might work more efficiently on large data files.

 

 

Thank you for your suggestions!

 

 

Olivier

 

 


5 replies

Userlevel 2
Badge +17
Hi Oliver,

 

 

I guess you have a workflow (including the AttributeExploder, Matcher, etc.) similar to one I posted to this Q&A. ChangeDetector - changes without change http://fmepedia.safe.com/AnswersQuestionDetail?id=906a0000000cpnVAAQ   I don't think there is other easier way to collect changed attributes. However, after collecting changed attributes via such a workflow, I think you can summarize them using some transformers especially in the "Lists" category. Which transformers are suitable, depends on how you want to summarize them.

 

 

Takashi
Badge +6
Thank you Takashi!

 

 

I indeed happen to have a workflow similar to the one displayed in the post you refer to.

 

I will therefore continue with the logic I started with.

 

 

Olivier
Badge
Hi Oliver,

 

 

I guess you have a workflow (including the AttributeExploder, Matcher, etc.) similar to one I posted to this Q&A. ChangeDetector - changes without change http://fmepedia.safe.com/AnswersQuestionDetail?id=906a0000000cpnVAAQ   I don't think there is other easier way to collect changed attributes. However, after collecting changed attributes via such a workflow, I think you can summarize them using some transformers especially in the "Lists" category. Which transformers are suitable, depends on how you want to summarize them.

 

 

Takashi

Hi @Takashi Iijima​ , I think this is exactly what I am after but the link is taking me to the "Welcome to the FME Community" page. I noticed it is 9 years old. I'd appreciate if you could post an updated link so I am able to see the Workflow you suggested to Oliver 9 years ago. Thanks a lot in advance

 

Santi

 

Userlevel 1
Badge +21

Hi @Takashi Iijima​ , I think this is exactly what I am after but the link is taking me to the "Welcome to the FME Community" page. I noticed it is 9 years old. I'd appreciate if you could post an updated link so I am able to see the Workflow you suggested to Oliver 9 years ago. Thanks a lot in advance

 

Santi

 

I don't remember what the changedetector looked like 9 years ago, but attribute changes are now all reported via a list attribute. I'd suggest asking a new question to get the most relevant up to date information if you're struggling with reporting on the attribute change.

Badge

Hi @Takashi Iijima​ , I think this is exactly what I am after but the link is taking me to the "Welcome to the FME Community" page. I noticed it is 9 years old. I'd appreciate if you could post an updated link so I am able to see the Workflow you suggested to Oliver 9 years ago. Thanks a lot in advance

 

Santi

 

Thanks ebygomm for your reply and suggestion

Reply