XSLT relies on XML facilities to declare namespaces, and XML doesn't provide any capability like this: it deliberately makes namespace declarations local to a document.
Some people put namespace declarations in a DTD as default attribute values, which are then implicitly added to every document using that DTD. It works, but I think it's a really bad idea - people reading and editing the documents can't see what's going on.
Michael Kay
http://www.saxonica.com/
Author, XSLT Programmer's Reference and XPath 2.0 Programmer's Reference