Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am using FME to fill in some small holes within polygons. I have used DonutHoleExtractor to split these out, however I have found the output via the HOLE port also brings existing 'filled' holes (valid polys that have an outershell).

How can I differentiate these??

share|improve this question
AreaCalculator and Tester for area smaller than 0.2HA - you can also add a Attribute filter add an attribute 'hole' and filter by that. – Mapperz Jun 13 '12 at 13:26

If you're trying to fill the holes with the same attributes of the outershell, then you shouldn't need to use the HOLE port. The transformer description shows a picture of the output. The outershell is essentially a filled polygon.

Your input data may actually have valid polygons which are coincident with the holes.

Am I answering your question? Or am I missing something?

share|improve this answer
i am only filling holes less than 0.2HA so linked the hole output to a tester – 0_T Jun 13 '12 at 5:50
and yes the input data does have valid polys coincident with some holes (i want to retain those). i only noticed that it output these too as i wrote 2 features out 'removed holes' and 'retained holes' – 0_T Jun 13 '12 at 5:53

Perhaps it would help to expose the format attribute fme_geometry' (use an AttributeExposer or do that in the Reader Feature Type properties dialog) then have a Tester transformer check to see if its value is 'fme_donut' or 'fme_polygon'.

Then you could filter out features that are not donuts before the DonutHoleExtractor, and you wouldn't get them mixed up in the HOLE port output.

Does that help?

share|improve this answer
thanks everyone, and thanks Mark, I was going to put a flag field in but what you suggest is better, thanks again – 0_T Jun 15 '12 at 7:03

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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