Group Construction and Destruction
We now describe when an xfMap group is created and destructed. If we let R be a group mapping rule defining the group G, then:
- G is constructed when R is activated, and
- G is destructed when R is de-activated, but only if:
- R was defined in the <group-map> element, or
- G is not a persistent group.
The XML Reader keeps a stack of constructed groups; for expository convenience we’ll name this stack the g-stack. When R activates, G is pushed into the g-stack, G is popped from the g-stack when R de-activates.
FME features that are constructed by feature mapping rules will enter all groups that are in the g-stack from the top until the bottom group of the stack. The FME features that leave the bottom group of the g-stack are output by the XML Reader.