XMLA stands for XML for Analysis

XMLA stands for XML for Analysis or Extensible Mark-up Language for Analysis. It’s a protocol built on top of XML language. It allows data access from standard multidimensional data sources. Client applications accesses Microsoft cubes and tabular models using the XMLA language and the HTTP protocol.

Firstly, what is XMLA or XML for Analysis? Microsoft Analysis Services OLAP cubes and Tabular models both uses XMLA. In other words, it’s the unique protocol that allows communication with end-user’s data analytics applications.

Definition of XMLA : XML for Analysis or Extensible Markup Language for Analysis

Secondly, how does Microsoft developers use XML for Analysis? Microsoft Business Intelligence developers use XMLA for client applications integration with Analysis Services. And without dependencies to the Microsoft .NET framework.

XMLA is a simple standard

In other words, to communicate from the client to the server, the only two necessary components are an HTTP connectivity and the XMLA or XML for Analysis language.

Check this article also on Microsoft Business Intelligence, it’s about MDX literally the SQL for OLAP Cubes.

XMLA practical usage

Use XMLA for example to develop an SSAS Tabular Model programmatically.

Or to create deployment script of the connection, the tables – including the fact tables and the dimensions – the security Roles or the full tabular database. To generate these XMLA scripts, simply connect to an SSAS Tabular instance with SSMS, then right click and select Scripts the object.

Three options are available when generating XMLA scripts for a tabular database:

  • CREATE
  • CREATE OR REPLACE
  • DELETE

Check the Wikipedia page on XML for Analysis standard. To go further and explain the benefits of XML instead of other proprietary standards for example: it’s open source, it’s easy to read for a human, it’s a simple file with tags. It means the structure is encapsulated in the file and any data structure can be stored inside an XML message.

XMLA Power BI Endpoints

The Power BI connectivity with XMLA endpoints announces a couple of years ago allows to access Power BI datasets through the XMLA protocol. It makes any XMLA ready data sources accessible through a wide variety of tools, like for example:

  • SQL Server Reporting Services (SSRS)
  • Reports in Power BI Premium, Power BI Report Server
  • Excel PivotTables
  • Third party data-visualization tools like Tableau or QlikView
  • SQL Server Management Studio (SSMS)