When a symbol is instantiated in a schematic (e.g. by the user
selecting it from the gschem component library and placing it on the
page), a compound
object known as a component is created.
page, a component contains some number of
elements. When a component is created from a symbol, the contents of
page are copied into the component.
In order to allow the component to appear in the correct place on the
schematic page, at the correct orientation, etc., a transformation is
applied to every
object in the component.
Normally, when the schematic
page is closed, the parameters of
the transformation are stored in the schematic file along with the
basename of the original symbol, but the
object contents of the
component are discarded. When the schematic is subsequently
re-opened, the original symbol is retrieved from the component
library, and used to recreate the component.
However, a component may optionally be embedded. In this case, its contents are stored in the schematic file.
Note: A component cannot contain another component – only
other types of