I think the goal of Tapestry is to serve BOTH the Graphic Designer AND the Java Developer and I don't see a need to compromise in this case.
Tapestry has, to my understanding, had a long history of enabling you to write HTML (templates) that could be viewed and edited in a tool like Dreamweaver. Writing
so where you want the label to appear is far less preferable to
So when I view the template, I have a good idea what is going on. I would certainly vote for an option that allows both camps to be happy with the "ignorebody" flag, or something along those lines, BUT, IMO, for the path to easiest to understand, make it default to displaying the correct label when you have a body (ignorebody defaults to true). It really threw me for a loop in 5.0.11 (my first 5.0 version) when I had the version with a body and it always displayed the body (until I removed the body). I figured it was a big until I found this "Issue".