Select to view content in your preferred language

Field Enricher with Multiple Matches

3817
4
03-17-2014 01:16 PM
MorganEverett
New Contributor III
I'm using the GeoEvent Processor to send out XMPP messages with an output when I get a new feature added to a layer that is inside a particular GeoFence.

I have everything working great on that with my GeoServices using a Filter to get features that match a certain criteria, a processor using GeoTag to add the GeoFence, and another processor to join the GeoFence to another layer and get values from it, and send to XMPP.

The scenario I'm using is a PTZ camera with presets defined on a polygon layer, and when a new feature is in one of the presets, I get an XMPP message about it.

It works great, UNTIL I have overlapping presets and when it gets to my Joining Processor to Field Enrich off of the existing preset (polygon layer) it isn't enriching the field with data because it is either delimited, group or list of matching values and it doesn't enrich the data properly so therefore I don't get data in my message.

How do I use a Field Enricher when I'm matching multiple GeoFences? Anyone with ideas? I can send more details if it isn't clear.

Thanks in advance.
0 Kudos
4 Replies
RJSunderman
Esri Regular Contributor
Hello Morgan -

It works great, UNTIL I have overlapping presets and when it gets to my Joining Processor to Field Enrich off of the existing preset (polygon layer) it isn't enriching the field with data...


If I understand the issue you are describing, you are running into a known limitation of combining a Field Enricher with a GeoTagger.

Think of GeoTagging as a special case of event enrichment which only allows an event to be enriched with the name of a GeoFence (and optionally the name of the Category to which the GeoFence belongs). I'll refer to this as the "primary enrichment".

As long as none of your GeoFences overlap, you can use the name of the GeoFence from the "primary enrichment" as a key to join the enriched event to the polygon feature from which the GeoFence was derived and complete a "secondary enrichment". The GeoFence and polygon feature are separate objects in this model. The GeoFence object maintained by GeoEvent Processor does not include all of the attributes of the polygon feature. Hence your need to perform a table join in order to pull in the additional attributes from the polygon feature.

If one or more GeoFences overlap and the event's geometry is inside the overlapping area, the primary enrichment performed by the GeoTagger enriches the event with some sort of list of names which destroys the key needed for the table join and secondary enrichment. Another way of destroying the key needed for the secondary enrichment is to include the Category to which the GeoFence belongs with the primary enrichment performed by the GeoTagger. The attribute field of the original polygon feature from which the GeoFence was derived contains only the name of the GeoFence, not the name and category, so the table join fails and the secondary enrichment cannot be completed.

- RJ
0 Kudos
MorganEverett
New Contributor III
So this is just a known limitation and there is no solution for it?
0 Kudos
RJSunderman
Esri Regular Contributor
Yes. If you want to use a GeoTagger to prepare an event for secondary enrichment then the GeoFences used for tagging events with the GeoFence name must not overlap.
0 Kudos
RJSunderman
Esri Regular Contributor
Morgan -

You might find some help with what you are trying to do if you review the following thread:
Overlapping" rel="nofollow" target="_blank">http://forums.arcgis.com/threads/105319-Overlapping-geof... geofences with different attributes

- RJ
0 Kudos