There is a natural tendency to have one target namespace for every "kind" of schema construct.
That can cause problems (e.g. rainbows of namespaces).
It is better to have one target namespace for every "major area".
It is best to have just one.
But if you find conflicts, you probably need to have another namespace somewhere.
Do not alias someone else's elements into your namespace (e.g. XHTML in your namespace without XHTML's namespace).