Howdy,
I want to reply to a really old post on this subject. The original poster was battling with the problem of trying to validate a frameset page and use the border attribute. I have been down this very path some time ago and can answer!
Fact is you can't use the border attribute and also validate as a frameset, but you can work around it to achieve the outcome of validating your page and also killing the frame borders. A site I developed some time ago at http://www.mattman.com.au/ does just that.
If you look at the page source you will see that the frameset includes 7 frames, no border attributes (so it validates), but also does not display the borders.
What I did to achieve this was to use a re-framer JavaScript for the separate purpose of ensuring that no pages are shown without the rest of the frameset wrapped around it. From within the source you'll see that the re-framer script sits at http://www.mattman.com.au/reframer2.js, so take a peek. Apart from the JS functionality to re-frame, the script also repeats the frameset tags. But this time I included the border="0" attribute.
So when a JavaScript enabled browser displays this page it also reads the script and follows the border attribute within it. Of course the W3C validator doesn't read JavaScript, so it is happy to validate.
This is a work around, some might say a cheat. But it works. Of course the 10% of users who refuse to enable JavaScript will see the frame borders, but I figure this 10% of users are probably used to missing out on a lot of website functionality as their trade-off.
Now, with all of that said, I want to emphasis that my sample site is a few years old. I've now left frameset pages and moved on to using CSS fixed divs to create the illusion of frames. Much better, and my pages now validate as xhtml 1.1 (Gary Badger as an example).
I've only been a member here for as long as it has taken me to type this, so I hope my views on this are welcome.
Cheers,
Gary.