I would like to build a model. The objective of the model is to subset data (based on a specific field value) from a file with 800,000 of points and spatially join (intersect) this subset data to polygon files that correspond to the time frame represented by the subset of point data. Each polygon file represent concentrations throughout the country for a given time. So the point file is being subset for a given time frame and I need to spatially join that selection to the polygon file that corresponds to that time frame. There are 2160 polygon files.

I understand how to get the model to iterate through the point data to create the subsets. The problem I'm having is how to get the model to select the join feature for the "spatial join" tool that is appropriate for the time period represented by the point shapefile. Is there a way to use the "Get field value" tool to extract the field value from the point file as a string that can be used as a criteria to select the polygon shapefile from its folder?

I've attached a visual of the model being built thus far. While I can do the spatial join manually, repeating the process for each hour of each day for 3 months is inefficient and introduces the potential for error.

Spatial Join with Feature Class Iterator

1 Answer 1


You could use inline variable substitution if your polygon filenames are somehow similar to the field value you're extracting with each iteration.

For example, you're extracting a value from the field "Time_Period", and the value for this selection is "1990s". Your polygon files would need to be named something like "Time_Period_xxxxx". In the spatial join dialogue, you would write the file path to the join features as something like "C:/FilePath/Time_Period_%FieldValue%", where %FieldValue% is the extracted value, in this case "1990s".

Make sure your "Get Field Value" is a precondition to running the spatial join.

  • Thank you for your response. I used the %Value% in inline variable substitution and while the model does run, it spatially joins all points to one polygon file. Is there a difference between %FieldValue% and %Value%? The Iterate Feature Selection tool also gives a "Value". Could I use that "Value" for inline substitution instead of the Get Field Value tool?
    – user96478
    May 2, 2017 at 23:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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