Studio

Naming Conventions

Updated: November 7, 2024

This page provides naming conventions for Studio items configuration to make usage, maintenance and support easier.

Using Naming Conventions enables you to debug more efficiently. By investigating server.log, you can instantly identify which type of configuration caused an error. It also ensures better investigation of your issues by the Support Team.

quick switcher
By using prefixes, you can find elements of your configuration more easily. You can jump between any Studio feature or menu in a snap by typing its name. This action can be triggered by clicking the Jump To option on the bottom left of your Studio project or using the Ctrl + K / ⌘ + K shortcut.

We strongly encourage you to follow these, especially if you are a beginner.

General Rules

  • Use pascal case naming convention (initial uppercase letter).
    • Example: PascalCase
  • Use underscore _, instead of hyphens -. Automation scripting doesn't work with items containing hyphens.

Nuxeo Studio Modeler

Content Model

Item Rules Example
Document types Pascal case naming convention ContractLibrary
Schemas Lower case, separated by underscore only if readability is affected contract_library
Properties Camel case, not separated contractNumber
Lifecycles Pascal case naming convention ContractLifecycle
Lifecycle states Camel case, not separated ingestionInProgress
Lifecycle transitions to_ followed by the lifecycle state name to_ingestionInProgress
Structure templates Pascal case naming convention, suffixed by Factory ContractLibraryFactory

Workflow

Item Rules Example
Workflow templates WF_ followed by the workflow template name WF_Contract
Workflow tasks Workflow task IDs are autogenerated by Nuxeo Studio Modeler WF_SampleReview-20200410165513701-accept-reject-task

Page Providers

Item Rules Example
Page Providers PP_ followed by the document type name (if searching for a specific document type), and the search name PP_Obsolete_Contracts

Automation

Item Rules Example
Automation chains AC_ followed by the associated document type (if specific to a particular document type) and the automation name. AC_Contract_UpdateLifecycle
Automation scripting AS_ followed by the associated document type (if specific to a particular document type) and the automation name. AS_Contract_CreationPrefill
Event handlers EH_ followed by the associated automation chain/scripting name EH_AS_Contract_CreationPrefill

Templates

Item Rules Example
Document templates Camel case, suffixed by DocTemplate ContractReportDocTemplate
Mail templates Camel case, suffixed by Notif contractUpdateNotif

Roles and Permissions

Item Rules Example
Permissions Pascal case naming convention ReadWithoutDownload

Vocabularies

Item Rules Example
Vocabularies VOC_ followed by the property name (if relevant), and the vocabulary name VOC_ContractProvider

Advanced Settings

Item Rules Example
XML Extensions XML_ followed by the extension point type (actions, notifications, providers, doctype...) and the configuration name. If relevant, add the associated document type, automation chain, workflow task triggering the mail template, an event, a button etc. XML_notification_Contract_OnCreation

Nuxeo Studio Designer

UI

Item Rules Example
Layout elements All elements from the Layout are auto-generated by Nuxeo Studio Designer nuxeo-contract-create-layout
Layout blocks Lower case, separated by -, generally suffixed by -edit or -view depending on the mode of its elements nuxeo-contractinfo-edit
Document tabs Pascal case naming convention, suffixed by Page ContractAttachmentsPage
Drawer items Pascal case naming convention, suffixed by DrawerPage or MenuPage depending on the its type ContractsDrawerPage
Drawer menus Pascal case naming convention, suffixed by Page ContractsAdminPage
Actions Pascal case naming convention, suffixed by Action ContractUpdateLifecycleAction
Themes Pascal case naming convention, suffixed by Theme ContractManagementTheme