The current material situation is a bit cumbersome.
as we have multiple material librarys, and multiple appearance librarys. and too many combinations theirin.
You are close to the perfect solution for rendering and materials, nearly anyway.
The materials physical properties alone should set the parameters for appearance.
Lets use aluminum as an example.
Ideal Scenereo - For most industries
1. MATERIAL: User picks the physical material
ALUMINUM
2. ALLOY: User then may check a box for particular alloy if need be,
(the default alloy is set to a common standard that is then set as default in the template)
(the alloy modifies physical properties for the material, apperance only changes if an alloy has visual affect)
ALUMINUM - 6061
3. FINISH: User can then choose the finish or machining operation used on the material. (as material check box)
ALUMINUM - 6061 - R(x) sets shine/reflect
or ALUMINUM - 6061 - Knurled adds knurl bump map etc...
4. COATING: User can then choose a coating option. Paint, galvanized, anodized, etc.
ALUMINUM - 6061- R(x) - Paint(RGB) Egshell
This presents the opportunity to add the finish and coating field to the BOM, if needed for finish and paint tracking.
This simplifies the library so I only have (1) aluminum.
If i edit that base material and make variants(with check boxes only), it auto names them based on the options that have been checked, and you still have the ability to list it in the BOM as just the Base material name if you wish ie.. Aluminum as opposed to Aluminum - 6061 - R(x)... etc. Otherwise the BOM can get too big.
The material library browser could be modified to easily show the check box options for a material in a table format.
The subname for the "user optioned" material in the library would be a combo of the above 4 catagories.
and the name that shows up in the BOM field under material could be listed in this long format, or just show up as Aluminum if a simpler BOM is required. and of course finish and coating could be turned on if needed there too.
With a system closer to this, you never have to worry about naming, etc. it is what it is.
Aluminum is Aluminum plain and simple. it's real world finishes and surface processes modify the appearance further as an overlay to the original material.
Updating a material, would consist of adding more finish and surface options over time, since Aluminum itself does not change its nature... ever. why would the material need constant updating version to version.
Make it a modular material system, add modules over time. So my Aluminum in 2014 will be the same as my aluminum in 2018, perhaps with a few new modules though.
You guys are close to a system that is this simple, intuitive, and realistic, It's just not there yet.
Eventually this should evolve into a master industry library that covers every program across the planet.
so that my aluminum is the same in my Photoshop, Inventor, Poser, Revit, solidworks, 3dstudio, etc...
The renderers change, the material charectersitics do not.
overrides will still be possible if you just want to play with funky colors and unrealistic materials though.
Anyway just a though on getting this material system standardized and simplified a bit further.
T.S.