Skip to main content

I am attempting to make a spatial relation between a
point and a polygon file.

The point file holds unit level address information. This
is a point feature class that will have a point location for a street address.
For example, 234 First Street will have one point representing it. However, in
this point file, if there are many Units at a single street address, there will
be many points lying on top of each other. Say there are two units at 234 First
Street, there will be two points directly on top of each other, say, A-234
First Street and B-234 First Street.

The polygon file holds all of the parcel information.
This parcel information has the zoning and parcel information attached. Say,
Parcel A is zoned R1, Parcel B is zoned R1 and RR2, etc...

We want to surface this information in our Web GIS at a
unit level. Displaying all pertinent info
for each unit address individually. We would like to join each single address
point to a single parcel. Essentially creating a many to one relationship. Many
being the addresses (unit level) to the single parcel they sit on.

We would like the output to be parcel based. With each
address point having one parcel attached to it. This is so that when interacting with the parcels on a Web GIS, we can just click on the parcel and get the unit information. Thus reproducing the way the
addresses sit on top of each other, just only with the Parcels this time.

I have tried beginning with the SpatialRelator, but am
unsure as the output I am producing only has attributes from either one or the
other inputs. Before continuing I figured I'd ask.

Any recommendations?

Thanks!

Hi, your Web GIS should have a way to find the address points within each polygon and vice versa, so hopefully you don't need to cook the relationships into the data, check out the available widgets and Javascript methods.


Hi, your Web GIS should have a way to find the address points within each polygon and vice versa, so hopefully you don't need to cook the relationships into the data, check out the available widgets and Javascript methods.

Thank you bruceharold for your input!

 

Yes, you're right. There are widgets that would allow a type of workflow like this. However, that is not what I am looking for. This is just one step in a larger FME workflow and MUST be performed using FME. Yes, I am saying I want to cook this relationship into the data.

 

Thanks!

 

 


@francism, the SpatialRelator should work - Make sure you have your parcels set as the requester, and the address points as the supplier. Spatial predicates to test should be "Requestor Contains Supplier". Make sure Merge Attributes is checked! Also, check generate list - this will create a list of contained addresses on each parcel.

You can see the list in the attribute inspector, in the Feature Information window.

You could then use a ListExploder to create one record per address/parcel combination.


@francism, the SpatialRelator should work - Make sure you have your parcels set as the requester, and the address points as the supplier. Spatial predicates to test should be "Requestor Contains Supplier". Make sure Merge Attributes is checked! Also, check generate list - this will create a list of contained addresses on each parcel.

You can see the list in the attribute inspector, in the Feature Information window.

You could then use a ListExploder to create one record per address/parcel combination.

Note: If you have any parcels that do not contain any address points, they will exit the rejected port of the ListExploder - if you don't want them to be rejected, you can use a Tester before the ListExploder to filter them out.

 


I would extract the parcel geometry into an attribute, then a point on area overlayer, followed by a geometry replacer to replace the point geometry with the relevant polygon geometry


@francism, the SpatialRelator should work - Make sure you have your parcels set as the requester, and the address points as the supplier. Spatial predicates to test should be "Requestor Contains Supplier". Make sure Merge Attributes is checked! Also, check generate list - this will create a list of contained addresses on each parcel.

You can see the list in the attribute inspector, in the Feature Information window.

You could then use a ListExploder to create one record per address/parcel combination.

Hi Courtney! Thanks for your suggestion.

 

 

This solution has worked for me like so.

 

Parcels going in as Requestor and Addresses as Supplier, then the output going through the ListExploder, then running the Elements output of the ListExploder in a DuplicateFilter to eliminate any redundancies. I think I was Generating a list from the SpatialRelator but not properly extracting it to a Exploded List.

 

 

This has created the output that I need.

 

 

Thanks!

 


Hi Courtney! Thanks for your suggestion.

 

 

This solution has worked for me like so.

 

Parcels going in as Requestor and Addresses as Supplier, then the output going through the ListExploder, then running the Elements output of the ListExploder in a DuplicateFilter to eliminate any redundancies. I think I was Generating a list from the SpatialRelator but not properly extracting it to a Exploded List.

 

 

This has created the output that I need.

 

 

Thanks!

 

Perfect! I am glad I could help!

 

 


Reply