@Documented @Retention(value=RUNTIME) @Target(value=METHOD) @Experimental(value=SPLITTABLE_DO_FN) public static @interface DoFn.SplitRestriction
DoFn into multiple parts to
 be processed in parallel.
 Signature: List<RestrictionT> splitRestriction( InputT element, RestrictionT
 restriction);
 
Optional: if this method is omitted, the restriction will not be split (equivalent to
 defining the method and returning Collections.singletonList(restriction)).
 
TODO: Introduce a parameter for controlling granularity of splitting, e.g. numParts. TODO: Make the InputT parameter optional.