- XML for Analysis
XML for Analysis (abbreviated as XMLA) is the industry standard for data access in analytical systems, such as
OLAP andData Mining . XMLA is based on other industry standards such asXML ,SOAP andHTTP . XMLA is maintained by "XMLA Council" withMicrosoft , Hyperion and SAS being the official XMLA Council founder members. [cite web|title=What is XMLA?|url=http://www.xmlforanalysis.com/index.htm]History
The XMLA specification was first proposed by
Microsoft as a successor forOLE DB for OLAP (ODBO) in April 2000. By January 2001 it was joined by Hyperion endorsing XMLA. The 1.0 version of the standard was released in April 2001, and in September 2001 the XMLA Council was formed. In April 2002SAS joined Microsoft and Hyperion as founding member of XMLA Council. [cite web|title=XML for Analysis gathers steam|url=http://www.olapreport.com/Comment_APIs.htm] With time, more than 25 companies joined with their support for the standard.API
XMLA consists of only two
SOAP methods. [cite web|title=XML for Analysis Specification|url=http://msdn.microsoft.com/en-us/library/ms977626.aspx] It was designed in such a way to preserve simplicity.* Execute
* DiscoverExecute
Execute method has two parameters:
* Command - command to be executed. It can be MDX, DMX or
SQL .
* Properties -XML list of command properties such as Timeout, Catalog name etc.The result of Execute command could be "Multidimensional Dataset" or "Tabular Rowset".
Discover
Discover method was designed to model all the discovery methods possible in
OLEDB including various schema rowset, properties, keywords etc. Discover method allows to specify what needs to be discovered, the possible restrictions and properties.The result of Discover method is a rowset.Query language
XMLA specifies MDXML as the query language. In the XMLA 1.1 version, the only construct in MDXML is an MDX statement enclosed in the
tag. [cite web|title=MDX / mdXML|url=http://www.xmlforanalysis.com/mdx.htm] Example
Below is an example of XMLA Execute request with MDX query in command.
"> ">"> ">SELECT Measures.MEMBERS ON COLUMNS FROM Sales FoodMart Multidimensional TupleFormat ession management
XMLA has a notion of "session state". It is maintained through predefined "
SOAP headers"* BeginSession - to begin a new session
* EndSession - to end existing session
* UseSession - to use existing session. SessionId attribute previously returned for BeginSession should be used.Products
Products which support XMLA fall into two categories:
* XMLA Providers - these products provide XMLA service. Typically these are server or middle tier products
* XMLA Consumers - these products can connect to XMLA Providers and consume XMLA. Typically these are client/UI productsXMLA Providers
* Microsoft Analysis Services
* Hyperion Essbase
*Infor PM OLAP Server - formerly known as MIS Alea
*Mondrian OLAP server References
External links
* [http://knol.google.com/k/igor-krupitsky/xmla-consumers XMLA Consumers]
* [http://www.mosha.com/msolap/tech.htm#XMLA XMLA resources and links]
* [http://www.xmlforanalysis.com XMLA Information]
Wikimedia Foundation. 2010.