1. A method of creating product design model instances comprising the steps of: creating, within non-transitory computer readable storage medium based on instructions executed by a processing device, a product definition tree that represents permitted elements of a generalized product structure the product definition tree including: a plurality of root definition nodes; at least one child definition node that is a child of one of said root definition nodes or another said child definition node; at least one usage node, each said usage node being a child of one of said root definition nodes or one of said child definition nodes, each said usage node having a reference link to one other of said root definition nodes; a plurality of occurrence nodes, each said occurrence node being a child of a respective said usage node or a child of one other of said occurrence nodes; at least one usage subtree, each said usage subtree formed by each said usage node and said occurrence nodes that are direct or indirect children of the respective said usage node; a plurality of definition trees, each definition tree comprising one of said root definition nodes and all said usage subtrees that are children of the respective said root definition node and all child definition trees that are children of the respective said root definition node, each said usage subtree having a same structure as the definition tree associated with another of said root definition nodes to which said usage node has the reference link, each said child definition tree comprising one of said child definition nodes and all said usage subtrees that are children of the respective one of said child definition nodes and all child definition trees that are children of the respective one of said child definition nodes; creating, within the non-transitory computer readable storage medium and based on instructions executed by the processing device, a template tree representing a product design structure variant which represents a subset of the product definition tree, the template tree including: a plurality of root definition template nodes; at least one child definition template node that is a child of at least one of said root definition template nodes or of at least one of said child definition template nodes; at least one usage template node, each said usage template node being the child of at least one of said root definition template nodes or one of said child definition template nodes, each said usage template node having a reference link to one other of said root definition template nodes; a plurality of occurrence template nodes, each said occurrence template node being a child of one or more respective said usage template nodes or a child of one or more other of said occurrence template nodes; at least one usage template subtree, each said usage template subtree formed by each said usage template node and said occurrence template nodes that are direct or indirect children of the respective said usage template nodes; and a plurality of definition template trees, each definition template tree comprising one of said root definition template nodes and all said usage template subtrees that are children of the respective said root definition template node and all child definition trees that are children of the respective said root definition template node, each said usage template subtree having a same structure as the definition template tree associated with one other of said root definition template nodes to which said usage template node has the reference link, each child definition template tree comprising one of said child definition template nodes and all said usage template subtrees that are children of the respective one of said child definition template nodes and all child definition template trees that are children of the respective one of said child definition template nodes; and storing, using the processing device and into the non-transitory computer readable storage medium, the product definition tree and the template tree.