Thanks napo - nice explainations. Could you give a link to where you found these data structures? I've been all through the SDK chm, and Google searched, but I've not found anything as clearly set out as you did.
I did find one nice link on HLSL
http://www.ati.com/developer/ShaderX2_IntroductionToHLSL.pdf which talks about matworld etc.