Skip to main content

Development workspace

The Development workspace is where data builders author models, datasets, and dashboards as AML files. Open it via the Development button in the header.

The workspace surfaces a few standard panels:

The rest of this page covers the rules specific to writing files in the workspace.

Supported files

Holistics objects live in plain-text files with a .<feature>.aml extension:

File nameCorresponding feature
model_name.model.amlData Model
dataset_name.dataset.amlDataset
dashboard_name.page.amlCanvas Dashboard
relationships.amlModel Relationships
schedules.amlQuery Model Persistence Scheduling
file_name.mdMarkdown contents (e.g. README.md)

You can create files of any extension, but only those above have meaning to Holistics.

File names

File names can be arbitrary. All of the following are valid:

orders_master.model.aml
orders master.model.aml

We recommend snake_case.

Allowed characters
  • Any Unicode characters except: NUL, \, /, :, *, ?, ", <, >, |
  • No space at the start or end of the name
  • No period (.) at the end of the name

Object names

Object names (models, datasets, etc.) are stricter than file names:

  • Must not start with a number or special character (except _)
  • Must not contain spaces or special characters

Valid examples:

order_master
OrderMaster
_order_master
business_metrics

We recommend snake_case.

File names vs. object names

tip
  • File and object names don't need to match, but matching them is recommended.
  • Renaming an object after it's referenced downstream will break those references.
  • File names can be changed freely as long as the object names inside don't change.

A typical use of the file/object split is keeping similarly-shaped models in separate folders:

data_warehouse
├── region_asia
│ ├── orders.model.aml // contains model orders_asia
│ ├── products.model.aml // contains model products_asia
│ └── business_metrics.dataset.aml // contains dataset business_metrics_asia
|
└── region_europe
├── orders.model.aml // contains model orders_europe
├── products.model.aml // contains model products_europe
└── business_metrics.dataset.aml // contains dataset business_metrics_europe

Object names still need to be unique across the project, so use prefixes or suffixes to disambiguate.

Visual vs Code mode

Each file can be viewed in two modes:

  • Code mode: plain-text AML, edited directly.
  • Visual mode: graphical representation of the file with limited inline edits.

Studio View Code

The two modes write to the same underlying file. Behavior differs by file type. See the dedicated docs for each feature in the table above.

Project structure

For folder layout conventions, see Project Structure.


Open Markdown
Let us know what you think about this document :)