My point of view is a little bit different, that have been sound here.
First of all, I strongly believe, that it depends.
We do this as follows: Product Owner has conversation with Stakeholders and gathers business requirements from them (he represents these requirements as User Stories). Then he goes to Development Team and discusses with them these requirements. Development Team gives rough estimation and asks some clarifying questions (if it has them) about requirements. Then Product Owner brings these questions and rough estimate to Stakeholders...and so on. This is continuous and iterative process. It is my understanding of Product Backlog Refinement (Scrum term). Only well refined Product Backlog Item can be taken in Sprint.
Maybe it is better not to use Product Owner as proxy and let Development Team to contact with Stakeholders directly (I asked similar question here)? Maybe, but not always.
In my last project we tried to implement this case. We sent one developer as technical consultant with Product Owner to meetings with customer. But we stopped to do it after two or three mouth (I don't counted exactly). Reason for this is that it was enough 15 minutes to him to discuss all technical questions, and rest 2 hours he was boring and cannot provide any help with business details. Well, it's logical, he is excellent programmer, not business-analyst. Also, he couldn't provide estimation, because estimation is responsibility of whole Development Team.
So, yes, members of Development Team participates in Refinement (including clarification) of Product Backlog Items (requirements), but not directly (through Product Owner). And of course, they are not that guys, who generate requirements.
I thing this situation happened because we have specific area of development (we develop or customise software system for needs of other companies, and our team and projects of our team are not too big: 12 members in Scrum Team - this is maximum of projects where I participate as Scrum Master). If you developing Enterprise solution, than Joel's approach may be better.
So... As I have said in the beginning, there is no right answer for this question, because it depends on many factors.