TMSL Reference - Objects overview

Applies to: SQL Server 2016 and later Analysis Services Azure Analysis Services Fabric/Power BI Premium

Applications that create, consume, or administer tabular databases or that connect to a server instance can use the Tabular Model Scripting Language (TMSL) for commands and object representations in JSON format.

This article documents the major objects of the TMSL schema used in scripts generated by SQL Server Management Studio, SQL Server Data Tools (SSDT), and AMO PowerShell.

Object definitions are in JSON and used in TMSL commands like Create, Alter, and Delete. See TMSL Reference - Commands overview for a list of commands.

Main objects

Commonly used objects in TMSL script:

Object Description
Database object (TMSL) Defines a tabular database at compatibility level 1200 or higher, based on a model of the same level.
Model object (TMSL) Defines a tabular model at compatibility level 1200 or higher.
DataSources object (TMSL) Defines a connection to a data source used during import to load the model, or for pass through queries when the model is in DirectQuery mode.
Tables object (TMSL) Specifies the tables of the model.
Partitions object (TMSL) Defines storage of table rowsets, including calculated tables.
Relationships object (TMSL) Defines the relationships between tables.
Roles object (TMSL) Defines permissions, membership, and security filters that control access to data and operations.