In "Top-down" design, a reference element is created in the context of an assembly based on the geometry of the fragments, taking into account the transformations of the fragment in the assembly (i.e., its movements, rotations, scaling, and the values of its parameters). Accordingly, each reference element needs to "know" not only the Source Geometry but also "know" the transformation of the source-geometry in the assembly. Information about the transformations of the fragment, on the basis of the geometry of which the reference element was created, is located in the assembly file, since it is the assembly that determines the position and execution of all fragments. Therefore, for each reference element, you specify not only the source file where the Geometry Source is located, but also the assembly file in the context of which the reference element was created. For a reference element, the assembly file is the source of the document parameters (Get Document Parameters from).
The source of the document parameters (Get Document Parameters from) will always be the assembly file in the context of which the reference element was created.
Considered an example. We have the Holder assembly. For example, while you do not understand exactly how it should be located Bracket on the Support and do not understand what should be the length of the Bracket. Therefore, you set the length of the Bracket using external variable, and the Bracket in the assembly is located approximately.
You need to design a Hanger. Let's create two Reference Elements that will be edges of Bracket holes. Since you have only approximate assembly, then you should specify the file, which will contain the source geometry – a fragment of the bracket. To do this, we specify Geometry Source: initial fragment.
As a result, the created fragment will have a geometry source of reference elements in the "Bracket" file, and the source (Get Document Parameters from) of parameters (transformations) of the fragment will be an assembly file "Holder".
Let's create a Hanger geometry.
Suppose that our assembly was incorrect. The length of the Bracket should be different, and its location also need to be changed. Create a new "Corrected Holder" assembly.
In the new assembly change the position of the Bracket and change its length by changing the value of the external variable, which determines the length of the Bracket. Insert the fragment "Hanger".
The fragment will be located according to the location in the old assembly. In addition, since the fragment "Bracket" changed its geometry only in the assembly (according to the value of the external variable), and in the source file remained the original length, the Hanger is not located correctly along the Support and along the Bracket.
The example shows that the geometric reference itself is preserved, but the fragment "Hanger" has no information about transformations of a fragment of "Bracket" in the new assembly, because the assembly file "Holder" remained the source (Get from Document Parameters) of parameters (transformations) of the fragment.
This example only shows the importance of the information contained in the assembly. Keep in mind that the use of temporary assemblies, or the unavailability of the assembly when editing fragments, should be caused by a real production or design need. In all other cases, it is not recommended to apply the temporary assembly and remove the assemblies. The very concept of "Top-down" design implies the presence of an assembly that defines all the parts included in it.