I am trying to understand how to use How to pub.flow:iterator - it seems to implement a mechanism to slice data; but trying to understand how this is intended to be used.
did you check the IS Built-In-Services Reference for documentation?
This document contains the following Usage Notes for pub.flow:iterator:
Usage Notes
The output service signature of the service specified by the serviceName input parameter
must contain at least one IData array. If there are multiple IData arrays in the output
signature and the resultSetKey input parameter is not specified, pub.flow:iterator batches the
first IData array in the pipeline. If there are no IData arrays in the pipeline, pub.flow:iterator
returns the output all at once instead of in batches.
The pub.flow:iterator service sends the rest of the pipeline to the service specified by the
serviceName parameter in the case that multiple calls are required to get all of the data in
the result set.
The signature of this service is documented there too.