Can a Cycles/Blender Internal materials be shared on their own?
While its possible to invent some file-format to store Blender materials, this is currently not a common way to share materials.

Typically for this would be done by appending materials into a new Blend file, saving it, and sending this to a 3rd party.

In rare cases a material may depend on objects (using empties for mapping), in those cases you could create a group of objects in your Blend file and append that instead of the materials (the materials will load in too).