Thank you all very, VERY much for taking the time to better explain this. I have done experiments with the logical editor and can get very close to what I want, though its not perfect. Using as suggested the context variables, particularly Note Number in Chord, and Position in Chord I can get it to consistently select the bottom voice for sure. And can get it to consistently select the top voice in my example as well by selecting “voice 2” in the logical editor. But it is a shame that on chords that switch from 2 voices to 3 or 4 voices it wont continue to select the top note, as the logical editor is counting up from the bottom, and there is no way to gave it count down from the top. So if a chord switches from 3 voice to 4 voice, if you have the logical editor set to choose voice 3, it will no longer select the “top voice” as voice 3 is not the top voice in 4 note chords.
I do often write for strings ensemble patches and switch from 2, to 3, to 4 note chords underneath a melodic line on top, and again would want to select all the top notes quickly so help bring out the melodic line via velocity, or to copy/paste to another instrument for doubling, etc.