Skip to main content

Interfaces section

Inherit attributes and standard paths

When editing a design/interface, the Interfaces section lists any interfaces that it implements. This includes interfaces implemented directly (identifiable by their button), plus any interfaces inherited indirectly via those interfaces (no button).

An interface is a set of shared attributes and standard paths that designs (and other interfaces) can inherit alongside their own. To learn more, see Implementing interfaces.

Select an interface to open it. To open it in a new browser tab, use middle-click or Ctrl-click.

The Interfaces section of an example design, listing implemented and inherited interfaces
Note

All designs/interfaces implement the standard Items interface and inherit its Title, Subtitle and Geometry attributes.

Add an interface

You can typically add interfaces to any design/interface, providing they're compatible with each other.

To add an interface, select Add interface and choose one from the list. The chosen interface and any interfaces it implements will be added, along with all their collective attributes and standard paths.

Placeholder paths

A standard path is a shortcut to an attribute on a connected design/interface. If the chosen interface contains any standard paths that are abstract placeholders, you must define them on the current design. For each placeholder, specify a path from the current design to the target attribute on the connected design/interface.

The Complete Required Standard Paths window displaying two placeholder paths that need to be defined

Select a placeholder to set the following properties:

  • Name * - enter a distinct name that clearly identifies the target attribute.

  • Path * - use the Pathfinder to "hop" to a parent or child design/interface from the current one. You can follow Link attributes , follow existing standard paths, or use Navigate to hop to a specific design/interface. Repeat for any number of hops until you're on the correct design/interface. Select the target attribute and then select Done.

  • Standard path group - organise standard paths into groups for easier navigation. Select an existing group or select Add to create a new one. To delete a group, select its button (this won't delete the standard paths within it).

Select Add to finish. Repeat for each placeholder and then select Add interface to continue.

Defining the properties of an example placeholder path
Note

The target attribute should be evident from the placeholder's name. If you're unsure, contact your Alloy administrator or our Support Team for assistance.

Compatibility concerns

If the chosen interface is incompatible, it will fail with a DodiIncompatible error. This can happen when a property on the chosen interface conflicts with the same one on the current design/interface, such as the Geometry (E1584453762) or Collections (E1584453485) property, e.g. the current design/interface allows the "Inventory" collection but the chosen interface doesn't.

An notification shown after trying to add an incompatible interface

To continue, select the error notification to see more details. Depending on the source of the conflict, the solution may be to reconfigure the conflicting property on the chosen interface, or on the current design/interface, or to remove another interface from the current design/interface that the property is being inherited from.

A notification shown after trying to add an incompatible interface

Remove an interface

To remove an interface from the current design/interface, select its button and answer Yes to the confirmation. Any interfaces inherited via that interface will also be removed, along with their collective attributes and standard paths.

If any attributes from the removed interface(s) are populated on existing items, it will fail with a DodiAttributeInUse error (E1594039108). To continue, perform a bulk action that either edits the items to clear those attributes on them, or deletes the items entirely if they're no longer needed.

Interfaces can't be removed from system designs/interfaces. If you try, it will fail with an DesignInterfaceEditForbidden error (E1535298831).

An error notification shown after trying to remove an interface from a system interface