Naming guidelines

It’s a good practice to establish a naming convention for dialog elements and resources in Mix projects. This will help you avoid names that might conflict with keywords commonly found in programming languages. Inadvertent use of such keywords could generate errors at runtime in your client applications.

In some situations—for example, if you copy a name or an ID from a context that supports a wider set of characters, to reuse it in a more restrictive context—Mix.dialog automatically removes unwanted characters.

Reserved keywords

Don’t use JavaScript reserved words  and Java keywords  .

The words in this list are also reserved, within the Mix platform—don’t use them in your Mix projects:

  • _
  • appsessionID
  • AUTO_INTENT_… (that is, anything prefixed with AUTO_INTENT_ cannot be used as an entity or intent name)
  • ConfigurationModel
  • id
  • inputmodes
  • library
  • odm
  • SLOTS
  • version

Component names

Generic component names are limited to letters (A-Z, a-z), digits (0-9), and the characters _, ., :, ;, -, and ~, which you can use as separators, if desired. A generic component name must be unique across all nodes and components in your project.

Intent components are always named after the intent they handle. Intent names must not start with a number or hyphen (-), and cannot include spaces. Use underscores (_) or hyphens (-) as separators if desired. The name must be unique across all intents, entities and variables in your project.

Entity names

Entity names must not start with a number or hyphen (-), or nuance_, and cannot include spaces. Use underscores (_) or hyphens (-) as separators if desired. The name must be unique across all intents, entities, and variables in your project.

You cannot rename rule-based entities.

Event names

Custom event names are limited to 120 characters, and can only include letters (A-Z, a-z), and digits (0-9).

You cannot rename predefined events.

Intent names

Intent names are limited to 500 characters, must not start with a number or hyphen (-), or nuance_, and cannot include spaces. Use underscores (_) or hyphens (-) as separators if desired. The name must be unique across all intents, entities, and variables in your project.

Renaming an intent automatically renames the associated intent component, if any. You cannot rename an intent component as such, unless you first convert it into a generic component.

You cannot rename the NO_INTENT predefined intent.

Message identifiers

Message IDs are limited to alphanumeric characters and the characters _, [, and ]. When you create a message, Mix.dialog automatically generates its ID, based on the text of the message. You can manually edit the message ID (maximum 255 characters), if desired.

Audio file IDs are static filenames for audio files to play in channels that use the Audio Script modality (the file extension is determined in the project settings). You cannot automatically generate the audio file ID for a message that isn’t used in the project. However, you can enter one manually (maximum 255 characters), if desired. If you must manually edit or specify audio file IDs, avoid using characters that might not be valid in filenames for the system hosting your audio files.

Node names

Except for the Start and Enter nodes, which you cannot rename, every node must have a unique name, across all nodes and components in your project.

The name of a data access node must not start with a number and cannot include spaces.

Variable names

Variable names are limited to letters (A-Z, a-z), digits (0-9), the dollar sign ($) and the underscore (_). They must not start with a digit. The name must be unique across all intents, entities, and variables in your project.

The same naming rules apply to schemas, and schema fields. However, a variable can have the same name as a schema, and the name of a schema field must only be unique within its parent schema.

You cannot rename predefined variables, predefined schemas, and their fields.