The smallest resource that is named, versioned, and packaged as part of an application and can be used by other modules that are part of the same application. A shared module cannot be deployed by itself; it must be included as part of an application module.
Shared modules can depend only on other shared modules and cannot depend on application modules.
A process can also reference a WSDL or a schema defined in a different shared module. Schemas that are intended to be exported from a shared module must be contained in the Schemas special folder.
See Binary Shared Modules for information on shared modules that can be exported for the purpose of sharing them with other users.