If that can not be found, VBDC is unhappy. Unfortunately, the VBDC tool does not understand environment variables. There is nothing intrinsically wrong with their method. From a tool standpoint, it is necessary to define the top of the design tree. From a user standpoint it just helps a lot.
Schematics can contain blocks that point at other schematics.
Unconnected schematics can easily get attached to a project, simply by opening that schematic. The second is good, the first is bad. The problem is that in real life, the repeated circuitry is actually represented by repeated components with distinct identities. The answer to this is simple but costly. No instance-specific information shall be tolerated.