Skip to main content

Designs

What is a design?

Designs are fundamental to Alloy's data structure. A design is a set of attributes that collectively describe a category of things, such as an asset type (e.g. Street Lights) or an activity type (e.g. Highway Inspections). An item of the design represents one set of values for those attributes, which describe an actual thing!

If you're familiar with conventional databases, you can think of a design as the schema that defines the columns of a table, with each item of the design being a row of values.

For example, the design illustrated below describes a minifigure, with colour attributes for the Head, Body, Hands and Legs.

An example minifigure design with attributes

Attributes

A design can have any number of defined attributes. It can also inherit attributes from interfaces.

An attribute is a data field that represents a single characteristic of the concept described by the design. The characteristic can be physical (e.g. dimensions, material) or abstract (e.g. unit number, installed date).

Link attributes are a special type that can reference items of a specific design/interface (e.g. the Teams design has a Members attribute that links to the Team Members design). This makes it possible for items to link to other items!

Attributes can be configured as Required, so that a value must be entered when creating/editing an item of the design. They can also have a default value, which can be overridden as needed.

To learn more, see Attributes in Alloy Web.

Note

To customise which attributes are shown when users create, edit or view items, see Item forms in Alloy Web.

Appearance

Every design has Icon and Colour properties. They determine how the design and its items look in Alloy (though you can override them on a per-item basis).

The header of the Street Lights design

Additionally, every design has Title and Subtitle properties. They determine how items of the design are labelled. You can define the text and/or variables used to generate both labels. For example, asset designs typically display a unique attribute in the title and the design's name in the subtitle.

To learn more, see Titles and subtitles in Alloy Web.

The header of a Street Lights item

Geometry types

Every design has a Geometry attribute that can store coordinate data. By default, the attribute is optional and accepts any geometry types (e.g. point, line, polygon).

Alternatively, you can configure a design's properties to make geometry Required, so that a value must be entered when creating/editing items of the design. You can also limit the types of geometry that can be stored, including none at all!

To learn more, see Editing general design details in Alloy Web.

Examples of point, line and polygon geometry

Context

Every design has a Context property that indicates the design's origin. If set to Customer, it was created by your organisation and can be edited freely. Otherwise, it's a protected system design.

System designs are included with Alloy to provide core functionality and help you get started (e.g. the Teams and Team Members designs). While system designs can't be edited or deleted, they can be extended with extra attributes.

Details

The possible context types are:

  • Core - the design is provided with Alloy and required for system functionality. It can't be deleted but you can:

    • edit these properties: Name, Icon, Colour, Title, Subtitle

    • add, edit or remove any custom attributes

    • implement or remove any extra interfaces

  • Module - the design belongs to an optional module that was installed. Same restrictions as Core.

  • Package - the design was created by our system architects as part of a custom solution for your organisation. Same restrictions as Core.

  • Customer - the design was created by your organisation. Therefore, you can freely edit or delete it, providing your user account has permission to do so.

Note

If you create an item of a Core, Module or Package design, the item's context will be Customer.

What is a DoDI?

When using Alloy (or reading these guides), you may encounter the term DoDI.

It stands for Design or Design Interface and refers collectively to designs and interfaces, as they share a lot of the same characteristics.