No, you're right -- the xmlns:h bits are pointless. Sorry to have left them in, as they're a bit misleading. (I created Listing2.xml using an XSLT tool that generated these extra declarations and failed to notice them before posting the code.) Since everything is using the default namespace declaration at the root anyway, the document is valid, but the declarations could be removed.