I have a story that looks like this:
As you can see, I would like to reuse a step two times, with different parameter sets (user/isbns and user2/isbns2). JBehave forces me to wrote two different step definitions (two annotated methods), because the @Named actually pulls the value straight out of the examples table, regardless, of what parameters match the step.
So I am forced to do this. Very ugly, IMHO.
I regarded the steps as something similar to a method or keyword, but now I realize that there are subtle differences.
As weird as Robot Frameworks syntax and grammar might be sometimes, it is coping much better with these circumstances.