Skip to main content

Configure data models for InField

Beta

The features described in this section are currently in beta testing and are subject to change.

Proper planning is crucial to setting up InField. This section helps you plan and configure the source data and the Cognite Data Fusion (CDF) project that will power the application and describes how to set up assets and visualize data in InField. You can also use the Cognite Toolkit to use pre-built configurations to set up InField.

Before you start

Make sure you have the following:

Caution

Make sure to set up locations in InField even if you have them set up in CDF. At the moment, CDF and InField use different location concepts.

Set up access

You can use your existing identity provider (IdP) framework to manage access to InField and choose admin users. We currently support Microsoft Entra ID, Microsoft's cloud-based identity and access management service. By creating groups, you can assign different sets of capabilities to users and thus give different access rights to each group.

Create admin group

Create a group of users who can configure the InField application across all locations. See also how to configure locations in InField.

  1. Go to CDF > Manage > Manage access.
  2. Create a group and name it applications-configuration.
  3. Give read and write access to all capabilities with the scope All, or have the minimum set of capabilities.
Capability typeActionScopeDescription
Groupsgroups: read, groups: listAllFor InField administrators to grant access to users.
Data modelsdataModel:readAllView data models.
Data model instancesdataModelInstance:readAllAccess data organized in data models.
Data model instancesdataModelInstance:writecognite_app_data, APM_ConfigAccess and edit data organized in data models and spaces.
Data model instancesdataModelInstance:write_propertiesSpaces with time series instancesAccess, create and edit time series data.
Location filterslocationfilters:read, locationfilters:writeAllView locations in your InField project.

Create user groups

Create groups of users who can view checklists, administer checklists and templates, and work with checklists in the field. You can create similar groups for different locations. The groups can have the same capabilities but different access based on the group name.

Note

Group names are suggestions and can differ from user to user.

NameDescription
infield_dev_location_viewersUsers in the group can view but not edit checklists in the specified location (location) and environment (dev).
infield_dev_location_checklist_adminsUsers in this group can create, update, delete, and approve checklists in the specified location (location) and environment (dev).
infield_dev_location_template_adminsUsers in this group can create, update, and delete templates in the specified location (location) and environment (dev).
infield_dev_location_checklist_usersUsers in this group can work with checklists and create observations in the specified location (location) and environment (dev).

Assign the following group capabilities:

Capability typeActionScopeDescription
Groupsgroups:read, groups: listAllView user groups.
Data modelsdataModel:readcdf_cdm , cdf_idm, APM_Config, cdf_infield, cdf_apps_shared , idm_customer_datamodel_space- where you can extend the views if necessaryView and analyze the data created in InField.
Data model instancesdataModelInstance:readAPM_Config, cognite_app_data, location_app_data_space, location_source_data_space - a list of spaces to read the data from; cdf_cdm_units - a space to use units for time series. Add all such spaces you want to read the data from to the scope.View and analyze the data created in InField.
Data model instancesdataModelInstance:writecognite_app_dataAccess and edit data organized in data models and spaces.
Data model instancesdataModelInstance:write_propertiesSpaces with time series instancesAccess, create and edit time series data.
Location filterslocationfilters:readAllView locations in InField.

Create data modeling spaces

InField stores asset data in data models. You need to create at least 4 spaces to store your data and data models.

Space nameDescription
cognite_app_dataThis space holds user data, such as user profiles.
APM_ConfigThis space holds configurations in Asset Performance Management (APM).
yourRootLocation_source_dataThis space holds space data (data coming from a customer source system, such as SAP) for a particular location.
yourRootLocation_app_dataThis space holds data coming from InField (from checklists and templates) for a particular location.
ApmAppDataYou don't need to set up or change this space. ApmAppData is a system data model that's present in all projects by default. The data model has the System tag.
tip

Create new yourRootLocation_source_data and yourRootLocation_app_data spaces for each root location you have if you want to implement access control per location.

You can create spaces in the following ways:

Spaces created with SDK

You can create the spaces using Cognite Python SDK. Use the following Python code and replace yourRootLocation with your root location/asset name in yourRootLocation_source_data, yourRootLocation_app_data.

Create spaces

from cognite.client.data_classes.data_modeling import SpaceApply

# List of spaces to create
spaces_to_create = ["yourRootLocation_source_data", "yourRootLocation_app_data", "APM_Config", "cognite_app_data"]

# Apply spaces
for space_name in spaces_to_create:
client.data_modeling.spaces.apply(SpaceApply(space=space_name))

Spaces created with API

You can create the spaces using the API endpoint:

  • cognite_app_data
  • APM_Config
  • yourRootLocation_source_data
  • yourRootLocation_app_data

Use the same names for the space and name attributes. The space attribute is also the space ID. Replace yourRootLocation with your root location/asset name in yourRootLocation_source_data, yourRootLocation_app_data.

APM_Config is the space that you can create manually in CDF or automatically by running the script. You create this space by creating corresponding data model.

Spaces created in InField

To create location spaces in InField:

  1. Sign in to InField and select > location to which you want to add spaces.
  2. On the Customer instance spaces tab, select the space from the list or enter the name of the space, for example, yourRootLocation_source_data and press Enter.
  3. On the InField instance spaces tab, select the space from the list or enter the name of the space, for example, yourRootLocation_app_data and press Enter.

Configure locations

Note

Users need admin rights to configure locations.

The Locations page has your root locations. Root location is a root asset that's at the top of the asset hierarchy. The root asset is a digital representation of a site, such as an oil platform, a plant, or an installation. Each site in InField should have a root location. For each location you want to be available in InField, complete the configuration in the InField application.

  1. Sign in to InField, select () > + Add location.
  2. Enter the name and the description and select Add.
  3. Select the location to complete configuration.

Location details

Update the name and description of your location.

View mappings

Views contain a group of properties that you can change for specific cases. By default, InField uses the Cognite process industries data model that extends the core data model to meet the needs of the process industries. You can customize entity definitions (or views), such as CogniteAsset and CogniteMaintenanceOrder by extending them with properties that are specific to your operations. For example, to extend the CogniteMaintenanceOrder property, you can create a new view and add the Cost field to this property.

In InField, you can select the entities you want to use, such as activities, assets, etc., with views defined in the cdf_idm (Process industries data model), cdf_cdm (Core data model) spaces, or the space where you store your custom views.

Data entityViewExtendable
Assetcdf_cdm.CogniteAssetYes
Activity (work orders)cdf_idm.CogniteMaintenanceOrderYes
Operationscdf_idm.CogniteOperationsYes
Notificationscdf_idm.CogniteNotificationYes
Files (P&IDs)cdf_cdm.CogniteFileNo
Annotations (file Contextualization)cdf_cdm.CogniteDiagramAnnotation (edge)No
3DIngested through 3D APIsNo

To configure the views you want to use:

  1. Go to Locations > View mappings.
  2. For each property, select either the default space or the space where you created custom views. In the current implementation, you can configure view mappings of 4 entities only.
  3. Save to apply the changes.
Caution

Make sure the view version always matches the data model version. Otherwise, the table on the Overview page won't work correctly.

Each entity type, such as activity, asset, etc., has a standard view defined in the cdf_idm system space. To view and customize views, go to CDF > Data management > Data models > find and select CogniteProcessIndustries.

Customer instance space

Select the space to store data on assets, work orders, notifications, and other data coming from a customer source system, such as SAP, for a particular location. Currently, you can select only one space.

InField instance space

Select the space to store data on templates, checklists, and observations created in the application for a particular location.

Asset explorer

Select what information you want to see on the Asset explorer page for your assets.