Ontology primitives and data model configuration

The Ontology primitives for dynamic scheduling are comprised of one schedule object and one or more resource objects. Begin by creating your objects in the Ontology Manager. At a minimum, the Workshop widget requires two object types: a schedule object and a resource object.

Object TypeDescription
Schedule objectA schedule object represents the task or activity of interest and should include a start and end time of when that event is occurring and/or the expected duration.
Resource objectA resource object represents any entity (such as a person, location, project, etc.) that the schedule object is being assigned to or scheduled against.

Example: Aircraft maintenance schedule

The example below demonstrates the process of scheduling maintenance tasks for aircraft.

Simple configuration

The two-object-type configuration, the minimum requirement for the Dynamic Scheduling Workshop widget, is illustrated below.

  • Schedule object type: In the example below, maintenance tasks are a time-bound activity.
  • Resource object type: Aircraft are the object/place where the tasks are conducted.
Schedule object type.

Advanced configuration

The dynamic scheduling data supports a variety of additional configurations beyond the two-object-type model, allowing application builders to create complex, advanced workflows.

Building on the two-object-type model above, in addition to scheduling when maintenance tasks will occur on an assigned aircraft, users can also determine who will carry out the maintenance task by assigning the task to a specific mechanic. In this new Ontology, as pictured below, the mechanic object acts as a second resource object type, which can be unlimited in number.

  • Schedule object type: Maintenance tasks are a time-bound activity.
  • Resource object type 1: Aircraft are the object/place where the tasks are conducted.
  • Resource object type 2: Mechanic who will carry out the assigned maintenance task.
Advanced schedule object type.

Ontology requirements

Your Ontology must be defined as a scheduling primitive. To help quickly classify your Ontology objects, use the Ontology Manager Wizard. Before the setup tool can be used, your schedule object must meet the property and link requirements outlined below.

Required schedule object properties

Object propertyType
Start timetimestamp
End timetimestamp
Durationlong (milliseconds)
Foreign key to resourcesstring

The schedule object type should be linked to each resource object type in a many-to-one relationship. For instance, in the example above, many tasks can be assigned to one aircraft.

Ontology Manager Wizard

To help you quickly and easily classify your Ontology objects as scheduling primitives, the Ontology Manager Wizard applies a series of required type classes to properties on your schedule object (and, if selected in the optional configuration section, the wizard creates a schedule save action).

Before using the wizard, ensure you have created the required objects and links as described in the model configuration.

To classify your Ontology objects using the Ontology Manager Wizard, follow the steps below:

  1. Navigate to your schedule objects type in Ontology Manager.
  2. Select the Capabilities tab from the left-side panel.
  3. Find Dynamic scheduling and select Get started.

From here, the wizard will guide you through start time and end time properties for the selected schedule objects, links to the relevant resource object types, and advanced configuration options. You will need to modify the type class on your schedule object type's primary key property when the wizard completes its work:

  1. The wizard creates a save handler action for you. Navigate to it and copy the action RID, which will look like this:

    ri.actions.main.action-type.9853f3fd-ad15-4015-8865-081d537e19e6

  2. Navigate to your schedule object type's primary key property and select the Interaction tab.

  3. Set the schedulable-save-handler type class to the copied action RID and save the Ontology.