Skip to main content

Standard paths section

Define shortcuts to other attributes

When editing a design or interface, the Standard paths section lists any standard paths that have been defined on it, plus the standard paths inherited from any implemented interfaces. They may be organised into groups for convenience. Select beside a group to show the standard paths within it.

A standard path is a shortcut to an attribute on a connected design/interface, which users would otherwise need to navigate to using the Pathfinder. It may involve "hopping" to a parent design/interface (which links to the current one), or to a child design/interface (the current one links to it), for any number of hops. This brings the connected attribute within easy reach and surfaces it to users that may be unaware of its availability!

You can add any number of standard paths to any design/interface. Custom standard paths added by your organisation are identifiable by their button.

The Standard Paths section of an example design, listing implemented and inherited paths

Add a standard path

To add a standard path to the current design/interface:

  1. Select Add standard path.

  2. Fill in the following fields:

    • 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).

  3. Select Add to finish.

The properties of a standard path

Edit a standard path

Select a standard path to view its properties. If the standard path was added by your organisation (it has a button), you can also edit those properties! Populate the fields as needed and select Save to finish.

If the standard path is inherited, select the displayed Go to... link to edit the standard path on the interface it belongs to. To do this in a new browser tab, use middle-click or Ctrl-click.

An orange message in the attribute's properties, explaining that the attribute belongs to an inherited interface

System standard paths can't be edited, except for their Name property. If you try to edit any other properties, it will fail with a DodiStandardPathEditForbidden error (1720000003). This ensures Alloy's core functionality runs consistently and reliably for everybody.

Note

A standard path can belong to a single group or exist on its own.

Delete a standard path

To delete a standard path from the design/interface, select its button and answer Yes to the confirmation.

If the standard path doesn't have a button, select the standard path to see if it's inherited. If so, follow the Go to... link to the interface it belongs to. If not, it's a protected system path that can't be deleted!

Abstract Placeholders

On interfaces only, it's possible for a standard path to have no path! This is known as an abstract standard path. It serves as a placeholder shortcut that only describes the type and design/interface of the target attribute.

When designs implement the interface, they must override the abstract standard path with a real path, which can be different on each design. When other interfaces implement the interface, the override is optional, but will affect anything that implements them.

This provides a single point of reference that workflows, reports and other Alloy features can use to target an attribute connected to multiple designs/interfaces, even if the path from each one to the attribute is different.

For example, imagine a workflow that triggers on a component item and uses a Relation action to fetch its parent asset item. By referencing the ID of an abstract standard path (instead of a fixed AQS path), the Relation action can fetch items of any design that implements the interface, over any number of hops.

In other words, the workflow could trigger on a street light component and fetch the corresponding street light asset it belongs to, whether it's one hop away (column > street light) or multiple hops (lamp > housing > bracket > column > street light).

Note

We include some abstract standard paths in our blueprinted modules to maximise their flexibility. Currently, abstract standard paths can only be created using the DesignInterface endpoint of the Alloy API (see ReDoc / Swagger).