PROPERTIES行セットには、次元の各レベルで使用可能なプロパティの情報が含まれています。ここでは各レベルにメンバー・クラスが定義されていることが前提となっています。このクラス内のすべてのメンバーのプロパティは同一です。名前の付いたレベルをサポートしていないデータ・ストアの場合は、ダミー・レベルに次元内のすべてのメンバーが含まれます。このレベルの名前は、次元の名前と同じです。
デフォルトのソート順序: PROPERTY_TYPE、CATALOG_NAME、SCHEMA_NAME、CUBE_NAME、DIMENSION_UNIQUE_NAME、HIERARCHY_UNIQUE_NAMEおよびLEVEL_UNIQUE_NAME。
GUID: MDSCHEMA_PROPERTIES
表39で、このrowset構造体について説明します。
表 39. MDSCHEMA_PROPERTIES rowset構造体
|
列名 |
Essbaseマッピング |
|---|---|
|
CATALOG_NAME |
アプリケーション名 |
|
CUBE_NAME |
データベース名 |
|
HIERARCHY_UNIQUE_NAME |
次元名 |
|
LEVEL_UNIQUE_NAME |
次元名 |
|
PROPERTY_TYPE |
1 (MDPROP_MEMBER) |
|
PROPERTY_NAME |
次のいずれかです:
|
|
PROPERTY_CAPTION |
次のいずれかです:
|
|
DATA_TYPE |
1 (倍精度) - 属性次元 2 (ブール値) - 属性次元 3 (文字列) - 属性次元、UDAまたは別名 4(整数) - 属性次元 |
|
CHARACTER_MAXIMUM_LENGTH |
80 (UDAまたは属性次元の場合) 30 (別名の場合) |
|
CHARACTER_OCTET_LENGTH |
320 (UDAまたは属性次元の場合) 120 (別名の場合) |
|
PROPERTY_CONTENT_TYPE |
0 (MD_PROPTYPE_REGULAR) |
|
SQL_COLUMN_NAME |
次のいずれかです:
|
|
PROPERTY_ORIGIN |
1 (MD_USER_DEFINED) |
|
PROPERTY_ATTRIBUTE_HIERARCHY_NAME |
属性次元の場合は属性次元名 |
|
PROPERTY_CARDINALITY |
ONE (UDAまたは別名の場合) MANY (属性次元の場合) |
|
PROPERTY_IS_VISIBLE |
TRUE |
要求の例
<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>
応答の例(抜粋)
<?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>