Create relationships between object types in Assets

20 min
Advanced

By the end of this lesson, you'll be able to:

  • Understand how asset relationships work in Jira Service Management
  • View object type references
  • Create an object reference
  • Explain the difference between outbound and inbound references
  • Describe attribute inheritance
  • Enable Include Children

How does Assets handle asset relationships?

Asset objects can reference other objects

A useful feature of Assets is the ability for object types to reference other types, allowing data to be related in meaningful ways. This is a crucial aspect of managing and understanding the relationships between various assets within an organization.
In Jira Service Management, Assets allows you to map and track these dependencies, clearly showing how different assets are interconnected.

What are asset dependencies?

Asset dependencies refer to the relationships and interconnections between different assets within your organization. These dependencies can be physical (such as a computer-dependent on a specific network device) or logical (like a software application relying on a particular server).
Asset dependencies can be:
  • One-to-One: A single asset depends on another single asset (for example a specific printer connected to a particular workstation).
  • One-to-Many: A single asset depends on multiple other assets (for example a server supporting several applications).
  • Many-to-Many: Multiple assets depend on multiple other assets (for example several virtual machines dependent on multiple network switches and storage systems).
👇 Here's a visual of Asset dependencies.
An illustration showing one-to-one, one-to-many, and many-to-many object relationships.

Why should you map asset dependencies?

Managing asset dependencies in Jira Service Management makes it easier to quickly find the root cause of issues and ensure that changes don't accidentally disrupt related systems. It also helps with risk assessment and resource planning, leading to a smoother and more reliable IT setup.

How can you view these dependencies?

Use Assets' graph views

Assets' graph views enable you to visualize the connections between object types. It's a convenient way to get a comprehensive overview of all object type references.

Graph views are available for the entire object schema, for an individual object type, and also for an individual object.

👇This is an example of an object schema graph.
An object schema is shown in the graph view showing how object types are connected.
👇Click the boxes below to explore how to use the object schema graph view.

Object type graph

👇Click the boxes below to explore how to use the object type graph view.

Object graph

You can also view connections for individual objects.
👇Click the boxes below to explore how to use the object type graph view.

How can you connect object types?

Object references connect object types

Object references enable data sharing between object types via reference attributes. Object types are connected with attributes that reference other object types.
👉 For example:
  • The Computer object type has an attribute: Model.
  • The Model attribute references the Computer Model object type.
  • The value of Model will be set to one of the Computer Model objects.
  • In this example, Model is set to Dell XPS.
👇Here's an example of the Computer object type.
The Computer object type screen. The Attributes tab is selected.
👇In this example, Model is set to Dell XPS.
The Computer object type screen. The Objects tab is selected. The computer model, Dell XPS, is highlighted.

Benefits of object types

👇Click the boxes below to learn more about why you would use object types.
👇Watch the video below to see how to connect objects by creating object attributes.

Creating object references

Object type references are created by using attributes of type Object. You can create as many references as you like.
👉 For example: The Computer Model attribute is of type Object, and its Type Value points to the Computer Model object type. This is all you need to configure a connection between the Computer to Computer Model object types.
In this example, we are referencing another object, but you can also specify a different reference type, which can be helpful when configuring custom fields and advanced searches.
When a new object of type Computer is created, the value of the Computer Model attribute is selected from a list of Computer Model objects. Object names populate the pick list of the Computer Model attribute.
👇You can create a reference by adding an attribute.
The ITSM Demo schema is shown with the Computer object selected in the Attribute view. A new attribute, Computer Model, is being added to the object attributes.

The Additional Value column provides context for the reference and is chosen from a list of configurable values. It is primarily used to filter reference types in the graph view and can also be used in advanced AQL searches.

What reference types exist?

👇Click the tabs below to learn more about reference types.
Outbound references point from the current object to another object. Object types in outbound references contain attributes that link to another object type. An object type can have any number of outbound references.

Groups and references

When configuring object references, you must determine which object type should own the relationship. In other words, which object type contains the attribute making the reference. Depending on the situation, you can connect object types in either direction, but in other cases, the appropriate direction may be unclear. If you need to decide, take into account the effects of outbound and inbound connections:
  1. If you want attributes displayed in reports, they need to belong to the filtered object type, which means the object type needs to have an outbound reference.
  2. It is easier to search using outbound references since you can use dot notation in AQL search queries.
  3. Avoid referencing object types with many objects since those objects will appear in pick lists and multi-value referencing attributes.

Let’s explore an example

When an attribute contains too many items, it can become messy.
👉 For example: If we want to track Groups that all users are members of, we could structure it in two ways, each with its pros and cons.
👇Click the tabs below to explore different structures and their benefits.
The first way would be to have the Group object type contain a multi-value attribute referencing users.
  • The risk here is that Group objects can potentially contain hundreds of User objects.
  • This makes it difficult to edit and view the Group objects.
  • However, the benefit is it's easy to create a report showing a list of Groups with all their members.

It's also possible to reference objects in a different object schema. To do this, you must enable the setting Allow others to select objects from this schema.

👉 For example: If an HR schema contains information about all employees, an ITSM schema can reference the employee objects in the HR schema to assign an employee ownership of a computer.

👇Watch this video to see how to connect objects and add a status option.

Attribute inheritance

Can attributes be inherited?

You can configure an object type to “pass on” its attributes to its child object types. This causes any children to effectively inherit the parent type's attributes. This parent-child relationship is visible in the schema tree view.
In addition to inherited attributes, child object types also have their own unique attributes. Only the attributes are being inherited, not attribute values.
Inheritance is an excellent way to establish a common set of attributes once and ensure these attributes are present in any new object types created as children of the parent.

Let's explore a use case!

We want to manage hardware assets such as computers, monitors, and mobile phones. Each asset type has its own unique attributes, such as RAM for a laptop or screen size for a monitor. Still, a common set of attributes applies to all hardware items, such as purchase date, manufacturer, and asset owner.
👇Click the boxes below to explore this use case.
👇Watch this video to see how to configure inheritance

Inheritance considerations

While inheritance is a powerful feature that can make maintenance easier, several important considerations must be made when working with it.
👇Click the boxes below to learn more.
👇Watch the video below to see how to attempt to disable inheritance.

Enabling Include Children

You can create a reference that includes child objects. If you select an object type that has object type children, you can also reference these children in a reference by enabling the Include Children flag in the attribute configuration screen.
👇Watch the video below to examine a scenario where we could use Include Children.
The Include Children configuration needs to be enabled for the Project Lead attribute to make all Employee objects and all child objects of Employee (in this case, Partners and Contractors) available for selection.
With Include Children enabled, you can select not only the referenced object type (Employee) but also all of its child object types (Contractors, Partners).
This is one of the benefits of organizing object types in a hierarchy.

Including children is unrelated to inheritance and unaffected by schema inheritance configurations.

How was this lesson?

next lesson

Find your assets with AQL

  • How do you search for assets?
  • Bulk update assets from your search
  • Assets Query Language (AQL) basics
  • AQL dot notation
  • Assets custom fields in Jira
Go to next lesson

Community

FAQsForums guidelines
Copyright © 2025 Atlassian
Report a problemPrivacy PolicyNotice at CollectionTermsSecurityAbout