Book a Demo
Prev Next

Check Package Dependencies

As you register a Package in the Reusable Asset Service, the system provides a check on whether that Package is dependent on any external content; that is, whether it links to any modeling component held in Packages other than its own child Packages. You can perform three types of dependency check:

  • Complete, which will consider Package A to be dependent on Package B if Package A contains any element, attribute, operation, operation parameter, diagram or connector (or their Tagged Values) that references elements in Package B
  • Normative, which is the same as a Complete Dependency Check except that it will not treat as a dependency for Package A any element from Package B that is added as a link on a diagram in Package A
  • Package Dependency/Import, where only those Packages that are the target of a Dependency/Package Import connector from Package A will be treated as dependent Packages for Package A

You perform this dependency check as an integral part of the Asset Registration process (specifically, at step 6 of the Register Package as Asset process). The check automatically identifies, firstly, the Packages directly needed by the Asset Package, and then any Packages needed by those initial Packages, and so on until the needed Packages are not dependent on any other.

In practice, such dependency chains are likely to be quite short. If you know that the original Asset Package is dependent on two other Packages, one of which is subordinate to the other, you can simplify the process further by selecting the Parent or Ancestor Package first and thus avoid the extra steps of selecting the two Packages separately.


Open the Reusable Asset Service window, using one of the methods outlined here.


Publish > Model Exchange > Reusable Assets : Register

Check Package Dependencies



See also


Select the appropriate Registry, Storage and version of the model Package to register, and provide any appropriate comments or notes.

Register New Assets


Click on the Check Dependency button.

If there are no Packages on which the Asset Package depends, the system sets that Package to 'Ready'. Go to step 6.

The 'Select Needed Package: <dependent package name>' dialog displays, showing the model hierarchy containing the Packages needed by the Asset Package. Each needed Package has a selected checkbox against it.

If you know that a needed Package is a child or grandchild of another needed Package, click on the checkbox next to the 'higher' Package name so that the child is validated as part of the parent. In this example, if the Asset Package has dependencies on both External factors and Location, click on the 'External factors' checkbox to register both dependencies as External factors.

Showing that an Asset Package depends on a specified package, in Sparx Systems Enterprise Architect.

If the needed Package is already registered in the Registry, it is indicated by a globe icon:

When a needed package is already registered, it is indicated by a globe icon, in Sparx Systems Enterprise Architect.

In this case, select the 'Use latest version of selected package in Registry (if available)' checkbox to link to the registered version. For such Packages, no further dependency check is performed and, on the 'Register Package(s)' dialog, the Package's Status is set to 'Ready'.


Click on the OK button.

The 'Register Package(s)' dialog updates to show the initial 'Asset Package status' as 'Ready', and to list the needed Packages each with the status of 'Pending'.


Click on the Check Dependency button again.

If there are no Packages on which the needed Package depends, the system sets that Package to 'Ready' and sets the focus on the next Pending Package. If there are no more Pending Packages, go to step 6.

If the needed Package is dependent on other Packages, the 'Select Needed Package: <dependent package name>' dialog displays again, showing the model hierarchy containing those Packages, each with a selected checkbox next to it. As in step 2, you can select a 'higher' Package if appropriate.


Click on the OK button.

The 'Register Package(s)' dialog updates to show the first needed Package status as 'Ready', and to list any further needed Packages with the status of 'Pending.


If there are further needed Packages in the chain, repeat step 4. The system automatically identifies them and lists them for validation as in step 5.

Otherwise the system sets the final needed Package status to 'Ready' and you can continue to register files and MDG Technologies.

Register New Assets


  • A Package with status 'Pending' cannot be registered; only Packages with status 'Ready' can be registered
  • If you are certain that there are no parent-child relationships between the needed Packages, you can work through these steps quickly by just clicking on the Check Dependency button and OK button alternately until all Packages in the Package to Register list have the status Ready
  • The system does not allow you to register an Asset Package that has dependencies on its own parent or grandparent Package; such dependencies would cause the Asset Package to be registered twice - by itself and as part of the parent Package - creating the risk of differences developing between the two instances

Learn more