Naming
As a general rule, unless stated otherwise: file names are lower_snake_case
and friendly (display) names are written as proper words separated by spaces.
Enforced identifier rules
Section titled “Enforced identifier rules”tcli validates the following identifiers when you scaffold. These are not suggestions, invalid values are rejected.
| Thing | Rule | Example |
|---|---|---|
| Extension symbol / file | lowercase snake_case |
validate_bom |
| Tool | snake_case |
import_bom |
| Handler (friendly name) | uppercase prefix, then hyphen-separated lowercase words | MY-custom-handler |
| AW kit | camelCase |
customKit |
| AW version | 0.0.0–99.99.99 |
7.0.0 |
| IPLIB mode | none, libuser_exits, or libserver_exits |
— |
Libraries
Section titled “Libraries”Library names are composed of lower- and uppercase letters and numbers 0-9 (e.g. MY4Custom, libsample, my_custom_lib).
Tool names are lower_snake_case.
Custom tool arguments follow the standard Teamcenter convention,
-<arg_name>=<value>. Teamcenter utilities follow neither POSIX nor Windows
command-line style: there are no positional arguments and no --long-name
flags. Every argument is -<arg_name>=<value>, where the name may be a long or
short handle.
Action and rule handlers
Section titled “Action and rule handlers”Friendly handler names start with an uppercase prefix, followed by hyphen-separated lowercase detail words:
MY-custom-action-handlerDo not encode the handler type (e.g. ah, rh) in the name:
- The Teamcenter Workflow Designer already distinguishes rule and action handlers in its UI.
- tcli-scaffolded libraries already organise rule and action handlers into separate subdirectories.
File names and handler function names are lower_snake_case.
AW kits
Section titled “AW kits”AW kit and module names are camelCase (e.g. customModule). See
the AW kit scaffolding step.
RAC plugins
Section titled “RAC plugins”RAC plugin names are lowercase. They may contain underscores. (e.g. customplugin, my_plugin).
C++ symbols
Section titled “C++ symbols”C++ symbol naming (classes, functions, variables, constants) is covered in the C++ guidelines.