Probably no one is going to vote for this, but I need the user to be able to select only the deepest nested list in a published parameter. For example, consider these list attributes:
_list{0}.sublist{0}
_list{0}.sublist{0}.attribute1
_list{0}.sublist{0}.attribute2
_list{0}.sublist{1}
_list{0}.sublist{1}.attribute1
_list{0}.sublist{1}.attribute2
_list{1}.sublist{0}
_list{1}.sublist{0}.attribute1
_list{1}.sublist{0}.attribute2
_list{1}.sublist{1}
_list{1}.sublist{1}.attribute1
_list{1}.sublist{1}.attribute2
Currently, in FME, a user can only select the whole nested list above (e.g. _list{}.sublist{}) or a single item in the list by specifying all list keys (e.g. _list{1}.sublist{0}.attribute1).
What I would like, is to return a specific set of "children" as a list, e.g. _list{1}.sublist{} (notice the 1!!).
When I'd call feature.getAttribute('_list{1}.sublist{}') in a PythonCaller, it will fetch the following list attributes:
_list{1}.sublist{0}
_list{1}.sublist{1}
Those are the "root children" of the second "parent".
Specifying _list{0}.sublist{}.attribute1 will fetch:
_list{0}.sublist{0}.attribute1
_list{0}.sublist{1}.attribute1
Those are "named children" of the first "parent".
I already have 2 situations (the ListKeyValuePairExtractor and the ListAppender I'm currently working on) for which a new/modified GUI type for a published parameter would be very helpful.