The PROPERTIES rowset contains information about the available properties for each level of the dimension, assuming that each level defines a class of members. The properties of all members in this class are the same. For a data store that does not support named levels, a dummy level includes all members in the dimension. The name of this level is the same as the name of the dimension.
The default sort order: PROPERTY_TYPE, CATALOG_NAME, SCHEMA_NAME, CUBE_NAME, DIMENSION_UNIQUE_NAME, HIERARCHY_UNIQUE_NAME, and LEVEL_UNIQUE_NAME.
GUID: MDSCHEMA_PROPERTIES
Table 9 describes the rowset structure.
Table 9. MDSCHEMA_PROPERTIES Rowset Structure
| Column Name | Essbase Mapping |
|---|---|
| CATALOG_NAME | Application name |
| CUBE_NAME | Database name |
| HIERARCHY_UNIQUE_NAME | Dimension name |
| LEVEL_UNIQUE_NAME | Dimension name |
| PROPERTY_TYPE | 1 (MDPROP_MEMBER) |
| PROPERTY_NAME | One of the following:
|
| PROPERTY_CAPTION | One of the following:
|
| DATA_TYPE | 1 (double) – attribute dimension 2 (boolean) – attribute dimension 3 (string) – attribute dimension, UDA or alias 4 (integer) – attribute dimension |
| CHARACTER_MAXIMUM_LENGTH | 80 (for UDA or an attribute dimension) 30 (for alias) |
| CHARACTER_OCTET_LENGTH | 320 (for UDA or an attribute dimension) 120 (for alias) |
| PROPERTY_CONTENT_TYPE | 0 (MD_PROPTYPE_REGULAR) |
| SQL_COLUMN_NAME | One of the following:
|
| PROPERTY_ORIGIN | 1 (MD_USER_DEFINED) |
| PROPERTY_ATTRIBUTE_HIERARCHY_NAME | For attribute dimensions, the attribute dimension name |
| PROPERTY_CARDINALITY | ONE (for UDA and aliases) MANY (for attribute dimension) |
| PROPERTY_IS_VISIBLE | True |
Request Example
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Body>
<Discover xmlns="urn:schemas-microsoft-com:xml-analysis"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<RequestType>MDSCHEMA_PROPERTIES</RequestType>
<Restrictions>
<RestrictionList>
<CATALOG_NAME>Sample</CATALOG_NAME>
<CUBE_NAME>Basic</CUBE_NAME>
<DIMENSION_UNIQUE_NAME>Product</DIMENSION_UNIQUE_NAME>
<LEVEL_UNIQUE_NAME>SKU</LEVEL_UNIQUE_NAME>
</RestrictionList>
</Restrictions>
<Properties>
<PropertyList>
<DataSourceInfo>
Provider=Essbase;Data Source=localhost
</DataSourceInfo>
<Format>Tabular</Format>
</PropertyList>
</Properties>
</Discover>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>Response Example(truncated)
<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<m:DiscoverResponse xmlns:m="urn:schemas-microsoft-com:xml-analysis">
<m:return xsi:type="xsd:string"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<root xmlns="urn:schemas-microsoft-com:xml-analysis:rowset"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:schema xmlns="urn:schemas-microsoft-com:xml-analysis:rowset"
targetNamespace="urn:schemas-microsoft-com:xml-analysis:rowset"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:sql="urn:schemas-microsoft-com:xml-sql"
elementFormDefault="qualified">
<xsd:element name="root">
<xsd:complexType>
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
<xsd:element name="row" type="row"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="row">
<xsd:sequence maxOccurs="unbounded" minOccurs="0">
<xsd:element name="CATALOG_NAME" type="xsd:string"
sql:field="CATALOG_NAME"/>
<xsd:element name="CUBE_NAME" type="xsd:string"
sql:field="CUBE_NAME"/>
<xsd:element name="DIMENSION_UNIQUE_NAME" type="xsd:string"
sql:field="DIMENSION_UNIQUE_NAME"/>
<xsd:element name="HIERARCHY_UNIQUE_NAME" type="xsd:string"
sql:field="HIERARCHY_UNIQUE_NAME"/>
<xsd:element name="LEVEL_UNIQUE_NAME" type="xsd:string"
sql:field="LEVEL_UNIQUE_NAME" minOccurs ="0"/>
<xsd:element name="MEMBER_UNIQUE_NAME" type="xsd:string"
sql:field="MEMBER_UNIQUE_NAME" minOccurs ="0"/>
<xsd:element name="PROPERTY_TYPE" type="xsd:short"
sql:field="PROPERTY_TYPE" minOccurs ="0"/>
<xsd:element name="PROPERTY_NAME" type="xsd:string"
sql:field="PROPERTY_NAME" minOccurs ="0"/>
<xsd:element name="PROPERTY_CAPTION" type="xsd:string"
sql:field="PROPERTY_CAPTION" minOccurs ="0"/>
<xsd:element name="DATA_TYPE" type="xsd:unsignedShort"
sql:field="DATA_TYPE" minOccurs ="0"/>
<xsd:element name="CHARACTER_MAXIMUM_LENGTH"
type="xsd:unsignedInt"
sql:field="CHARACTER_MAXIMUM_LENGTH" minOccurs ="0"/>
<xsd:element name="CHARACTER_OCTET_LENGTH" type="xsd:unsignedInt"
sql:field="CHARACTER_OCTET_LENGTH" minOccurs ="0"/>
<xsd:element name="NUMERIC_PRECISION" type="xsd:unsignedShort"
sql:field="NUMERIC_PRECISION" minOccurs ="0"/>
<xsd:element name="NUMERIC_SCALE" type="xsd:short"
sql:field="NUMERIC_SCALE" minOccurs ="0"/>
<xsd:element name="DESCRIPTION" type="xsd:string"
sql:field="DESCRIPTION" minOccurs ="0"/>
<xsd:element name="PROPERTY_CONTENT_TYPE" type="xsd:short"
sql:field="PROPERTY_CONTENT_TYPE" minOccurs ="0"/>
<xsd:element name="SQL_COLUMN_NAME" type="xsd:string"
sql:field="SQL_COLUMN_NAME" minOccurs ="0"/>
<xsd:element name="LANGUAGE" type="xsd:unsignedShort"
sql:field="LANGUAGE" minOccurs ="0"/>
<xsd:element name="PROPERTY_ORIGIN" type="xsd:unsignedShort"
sql:field="PROPERTY_ORIGIN" minOccurs ="0"/>
<xsd:element name="PROPERTY_ATTRIBUTE_HIERARCHY_NAME"
type="xsd:string"
sql:field="PROPERTY_ATTRIBUTE_HIERARCHY_NAME" minOccurs ="0"/>
<xsd:element name="PROPERTY_CARDINALITY" type="xsd:string"
sql:field="PROPERTY_CARDINALITY" minOccurs ="0"/>
<xsd:element name="MIME_TYPE" type="xsd:string"
sql:field="MIME_TYPE" minOccurs ="0"/>
<xsd:element name="PROPERTY_IS_VISIBLE" type="xsd:boolean"
sql:field="PROPERTY_IS_VISIBLE" minOccurs ="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
<row>
<CATALOG_NAME>Sample</CATALOG_NAME>
<CUBE_NAME>Sample.Basic</CUBE_NAME>
<DIMENSION_UNIQUE_NAME>[Product]</DIMENSION_UNIQUE_NAME>
<HIERARCHY_UNIQUE_NAME>[Product]</HIERARCHY_UNIQUE_NAME>
<LEVEL_UNIQUE_NAME>[Product]</LEVEL_UNIQUE_NAME>
<PROPERTY_TYPE>1</PROPERTY_TYPE>
<PROPERTY_NAME>Caffeinated</PROPERTY_NAME>
<PROPERTY_CAPTION>Caffeinated</PROPERTY_CAPTION>
<DATA_TYPE>2</DATA_TYPE>
<PROPERTY_CONTENT_TYPE>0</PROPERTY_CONTENT_TYPE>
<SQL_COLUMN_NAME>Caffeinated</SQL_COLUMN_NAME>
<PROPERTY_ORIGIN>1</PROPERTY_ORIGIN>
<PROPERTY_ATTRIBUTE_HIERARCHY_NAME>Caffeinated
</PROPERTY_ATTRIBUTE_HIERARCHY_NAME>
<PROPERTY_CARDINALITY>MANY</PROPERTY_CARDINALITY>
<PROPERTY_IS_VISIBLE>true</PROPERTY_IS_VISIBLE>
</row>
< ................More Rows............. >
</root>
</m:return>
</m:DiscoverResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>