The view will be broken up into components. A single component encomposes those data elements and arcs that are added by a single Import statement by the user. This might just be an implementation issue, eg: the user may or may not be aware of the existence of components.
We are given a graph corresponding to a database. In order to construct a view based on this graph what do we need to do?
Given the above, a component will need to do one or more of the following basic operations:
I am not convinced that we need to implicitly add all edges between objects Imported with all previous components of a view. It doesn't seem like we lose anything by not doing this and it will make the implementation easier and faster.