Most of the root software is associated with the configuration of the machine or product. The share part of a software product contains the part of the product that can be shared among machines, even if they have different hardware architectures. This would include nonexecutable text or data files. The share part of a product is optional because many products may not have any files that can be shared among different hardware platforms. The share part of a product is always packaged in a separately installable package.
Every product has a usr part.
The root part of a product is optional because many products may not have any files that need to be specific to each individual machine. The usr and root parts of a product are packaged together in the same installable package.