modular BOM duplications. The search engine is also used for all combinatorial feature constraints and GUI representations to support specification selections. To decide which assembly variant of the parts or components is to be chosen, they are attributed by the product options which are the characteristic features of the product. If the options of the product build an ideal Boolean algebra, it is possible to describe the connection between parts and product variants with a Boolean expression, which refers to a subset of the set of products. Parts which will not be assembled at all in one or more variants are typically marked as "DNP" (for "do not populate" or "do not place") in the affected variants. Other less frequently used designators for this include "NP" ("no placement", "not placed"), "NF" ("no fit", "not fitting"), "DNM" ("do not mount"), "NM" ("not mounted"), "NU" ("not used"), "DNI" ("do not install", "do not insert"), "DNE" ("do not equip"), "DNA" ("do not assemble"), "DNS" ("do not stuff"), "NOFIT" etc. Multi-level BOM A multi-level bill of materials (BOM), referred to as an indented BOM, is a bill of materials that lists the assemblies, components, and parts required to make a product in a parent-child, top-down method. It provides a display of all items that are in parent-children relationships. When an item is a sub-component, of a (parent) component, it can in-turn have its own child components, and so on. The resulting top-level BOM (item number) would include children; a mix of finished sub-assemblies, various parts and raw materials. A multi-level structure can be illustrated by a tree with several levels. In contrast, a single-level structure only consists of one level of children in components, assemblies and material See also Software bill of materials RKM code Component placement Notes References Further reading Production economics Supply chain management