A recommendation:
Make a folder called 'schemas'
Put a OASIS XML Catalog in that directory called 'catalog.xml'.
Put all your schemata in this directory or subdirectories of this directory.
Make all your schemaLocation attributes relative to this directory structure.
Put an entries in the catalog relative to this directory structure for all your namespace names.
The result is a portable directory that anyone can use:
All the schemas are contained in a parent directory.
The catalog lists the namespaces contained.
All the schema documents refer to each other with relative URIs and so the URL starting the schema processing should work without special non-standard handling of the URI values.