MDSCHEMA_PROPERTIES Rowset

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 39 describes the rowset structure.

Table 39. MDSCHEMA_PROPERTIES Rowset Structure

Column NameEssbase Mapping
CATALOG_NAMEApplication name
CUBE_NAMEDatabase name
HIERARCHY_UNIQUE_NAMEDimension name
LEVEL_UNIQUE_NAMEDimension name
PROPERTY_TYPE1 (MDPROP_MEMBER)
PROPERTY_NAME

One of the following:

  • For attribute dimension, the name of the dimension is the name of the property

  • For UDA, the UDA name

  • For aliases, the alias name

PROPERTY_CAPTION

One of the following:

  • For attribute dimensions, the attribute dimension name

  • For UDA, the UDA name

  • For aliases, the alias name

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_TYPE0 (MD_PROPTYPE_REGULAR)
SQL_COLUMN_NAME

One of the following:

  • For attribute dimensions, the attribute dimension name

  • For UDA, the UDA name

  • For aliases, the alias name

PROPERTY_ORIGIN1 (MD_USER_DEFINED)
PROPERTY_ATTRIBUTE_HIERARCHY_NAMEFor attribute dimensions, the attribute dimension name
PROPERTY_CARDINALITY

ONE (for UDA and aliases)

MANY (for attribute dimension)

PROPERTY_IS_VISIBLETrue

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>