I have a folder containing numerous point shapefiles (Species occurrence records) and (in a separate folder) a multipolygon shapefile of small parcels of land. For each species, I need to extract all the polygons which contain a species occurrence record. As there are many species, and the process needs to be re-run whenever we get new occurrence records, I have set up a model that iterates through an input folder (containing species occurrence record shapefiles) and runs the process.

The simple model (see attached diagram) is set up as follows: Using the Select Layer By Location tool I select the polygons which contain the species occurrence points. I then use the Spatial Join tool to add all the information contained in the attribute table of the point shapefiles (e.g. species name, observation date etc.) to this. The final output is a multipolygon shapefile, named after the input species containing the detail of the original species occurrence records.

If I do this manually one at a time this workflow works perfectly; however, when I run the model using the Iterate Feature Classes command to iterate through numerous species files in the input folder the final output does not contain the information from the species occurrence points. When I open the Field Map of the Spatial Join tool, the only fields present are those from the original multipolygon shapefile! I have tried to troubleshoot and for whatever the reason the “Feature Class” output from the Iterate Feature Classes command does not have an attribute table…


  • 1
    I've just recreated your model and it worked for me.. You don't have any selections on your polygon layer do you or set a processing extent or are they different coordinate systems?
    – Hornbydd
    Jan 11, 2021 at 11:01


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.