Load Model Fragment Dialog

Import elements from a model fragment previously exported in a file.

Purpose

This dialog and the respective Export command allow you to exchange groups of model elements with the file system.

This results in the following use cases, for example:

  • Copy subsystems

    Model fragments stored in a file are an excellent way of reusing subsystems within the model or in other models while retaining their structure.

  • Undo changes or deletes

    Export relevant model areas before making a big change or at regular intervals. This means you can always import this state if you need to restore it.

Note

Import always attempts to load the model fragment's elements into the same system model it was exported from. System models are searched using namespace or UUID, depending on the method of identification. A new placeholder is created if no such system model can be found.

Prerequisites

Due to your currently used role you have the privilege Use Model Fragments.

Structure

  • Model Fragment field and Select... button

    Enter the file's path in the Model Fragment field or select the file with the model fragments to be imported using the Select... button.

  • Identification Strategy Group

    • Identify elements by namespace radio button

      Derive the location for insert from the element's namespace. This option is suitable for inserting copies.

      Each element has a UUID which can be used to uniquely find it. If this option is set, the element's namespace is used to determine its place in the model instead of the UUID.

    • Identify elements by UUID radio button

      Identify the element by its UUID, even if the element itself or its owner have been renamed. This option is suitable for restoring from a prior version.

  • Adopt UUID on import check box

    When the checkbox is activated, UUIDs will be adopted from the file. If the checkbox is not activated, the UUIDs from the model will be used, while new elements will get new UUIDs.

  • Behavior on Conflicts Group

    Specify how to proceed in case of conflict.

    • Abort import radio button

      The import is terminated in the case of a conflict.

      The conflict option causes conflicts with corresponding messages to be shown. The messages can support the decision about behavior on conflicts.

    1. With Identify elements by namespace radio button and Adopt UUID on import check box activated

      Elements are searched for using their names. Elements which are not found are created as new and given the UUID from the model fragment.

      • The element adopted from the model fragment receives a new UUID radio button

        The element imported from the model fragment is given a new UUID in the model.

      • The element already existing in the model receives a new UUID radio button

        The element which already exists in the model is given a new UUID and is modified in this way.

    2. With the Identify elements by UUID radio button activated

      Elements are searched for using their UUID. Elements which are not found are created as new and given a new UUID.

      • The element adopted from the model fragment is uniquely renamed radio button

        The element which already exists in the model is given a unique name and is modified in this way.

      • The element already existing in the model is uniquely renamed radio button

        The element imported from the model fragment is given a unique name in the model.

  • Import button

    Executes the import of the model fragments from the file in accordance with the chosen settings

  • Cancel default button

Options for Handling Conflicts

Conflicts can only occur in conjunction with UUIDs:

  1. Identifying elements in the modeling using namespaces and adopting UUIDs from the model fragment upon import

    (with Identify elements by namespace radio button and Adopt UUID on import check box activated)

    Restriction

    Import via a namespace always takes place in a system model with the same name as that from which the export took place. A new placeholder is created if no such system model can be found. You first need to determine whether the system model you want to use for the import can be identified by a name.

    If the import should take place in the same Innovator model that the export took place in and you want to create a copy, you can rename the original system model or a deeper path component, e.g. the model or package.

    If the import takes place in another Innovator model, renaming ensures that the path to be used as the target reached or that the import does not inadvertently take place in a path that already exists that you do not want.

    • Elements are searched for using their names. If an element is found in the model via its namespace, then it adopts the properties from the model fragment and is modified.

    • Elements of the model fragment which are not found are created as new in the model and given the UUID from the model fragment.

    • A conflict occurs if the model already contains another element with the same UUID from the model fragment as the element to be adopted. You then need to decide for the model fragment whether a new UUID should be given to element imported from the model fragment or the element that exists in the model for each conflict. UUIDs are relevant for internal and external references and for synchronizing model elements.

    • What to do with conflicts:

      • Abort import: The import is terminated in the case of a conflict. A corresponding message is displayed for conflicts. The messages can support the decision about behavior on conflicts.
      • The element adopted from the model fragment receives a new UUID: The element imported from the model fragment is given a new UUID in the model. UUIDs are relevant for internal and external references and for synchronizing model elements.
      • The element already existing in the model receives a new UUID: The element which already exists in the model is given a new UUID and is modified in this way. UUIDs are relevant for internal and external references and for synchronizing model elements.
  2. Identifying elements in the modeling using UUIDs and adopting UUIDs from the model fragment upon import

    (with Identify elements by UUID radio button and Adopt UUID on import check box activated)

    • Elements are searched for using their UUID. If an element is found in the model via its UUID, then it adopts the properties from the model fragment and is modified.

    • Elements of the model fragment which are not found are created as new in the model and given the UUID from the model fragment.

    • A conflict occurs if the model already contains an element with the name of an element to be restored or created as new. You then need to decide for the model fragment whether a new unique name should be given to element imported from the model fragment or the element that exists in the model for each conflict.

    • What to do with conflicts:

      • Abort import: The import is terminated in the case of a conflict. A corresponding message is displayed for conflicts. The messages can support the decision about behavior on conflicts.
      • The element adopted from the model fragment is uniquely renamed: The element which already exists in the model is given a unique name and is modified in this way.
      • The element already existing in the model is uniquely renamed: The element to be adopted from the model fragment is given a unique name by adding a suffix.
  3. Identifying elements in the modeling using UUIDs and not adopting UUIDs from the model fragment upon import

    (with Identify elements by UUID radio button activated and Adopt UUID on import check box deactivated)

    • Elements are searched for using their UUID. If an element is found in the model via its UUID, then it adopts the properties from the model fragment and is modified.

    • Elements of the model fragment that are not found are created as new in the model. They are not given the UUID from the model fragment; they are given a new UUID instead.

    • A conflict occurs if the model already contains an element with the structure of an element to be restored or created as new. You then need to decide for the model fragment whether a new unique name should be given to element imported from the model fragment or the element that exists in the model for each conflict.

    • What to do with conflicts:

      • Abort import: The import is terminated in the case of a conflict. A corresponding message is displayed for conflicts. The messages can support the decision about behavior on conflicts.
      • The element adopted from the model fragment is uniquely renamed: The element which already exists in the model is given a unique name and is modified in this way.
      • The element already existing in the model is uniquely renamed: The element to be adopted from the model fragment is given a unique name by adding a suffix.

Inserting as a Copy

Activate the Identify elements by namespace check box.

If the you are importing in the same model that was exported from, then deactivate the Adopt UUID on import check box.

It may be a good idea to adopt UUIDs from the model fragment if you want to implement the import in another or empty model and you want to activate the elements to be imported via the API.

The Abort import conflict option shows you conflicts to expect. The messages can support the decision about behavior on conflicts.

Inserting to Restore

It normally makes sense to identify elements using namespaces and then adopt UUIDs from the model fragment.

The The element adopted from the model fragment receives a new UUID check box should be activated in the Behavior on Conflicts group.

The Abort import conflict option shows you conflicts to expect. The messages can support the decision about behavior on conflicts.

Refreshing the Menu

If models or profiles are created when model fragments are loaded, then run View>Synchronize>Reload Content (F5) with the model root selected to refresh the menus under Start>New .