Skip to content

A minimal cube based on an inline table with levels with phisical and inline tables

Definition

This files represent the complete definition of the catalog.

xml
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:roma="https://www.daanse.org/spec/org.eclipse.daanse.rolap.mapping">
  <roma:InlineTableQuery id="_query_country" alias="COUNTRY" table="_tab_COUNTRY"/>
  <roma:InlineTableQuery id="_query_fact" alias="Fact" table="_tab_FACT"/>
  <roma:ExplicitHierarchy id="_hierarchy" name="Hierarchy" primaryKey="_col_town_key" query="_query_hierarchy" levels="_level_country _level_town"/>
  <roma:Catalog description="Schema of a minimal cube consisting of one measurement and based on an virtual inline fact table and physical table town and country inline table" name="CubeOneMeasureInlineTableLevelPhysicalAndInlineTables" cubes="_cube" dbschemas="databaseSchema"/>
  <roma:DatabaseSchema id="databaseSchema">
    <tables xsi:type="roma:PhysicalTable" id="_tab_TOWN_Physical" name="TOWN">
      <columns xsi:type="roma:PhysicalColumn" id="_col_town_key" name="KEY" type="Integer"/>
      <columns xsi:type="roma:PhysicalColumn" id="_col_town_country_key" name="KEY_COUNTRY" type="Integer"/>
      <columns xsi:type="roma:PhysicalColumn" id="_col_level_name" name="NAME"/>
    </tables>
    <tables xsi:type="roma:InlineTable" id="_tab_COUNTRY" name="COUNTRY">
      <columns xsi:type="roma:PhysicalColumn" id="_col_country_KEY" name="KEY" type="Integer"/>
      <columns xsi:type="roma:PhysicalColumn" id="_col_country_NAME" name="NAME"/>
      <rows>
        <rowValues column="_col_country_KEY" value="1"/>
        <rowValues column="_col_country_NAME" value="Germany"/>
      </rows>
      <rows>
        <rowValues column="_col_country_KEY" value="2"/>
        <rowValues column="_col_country_NAME" value="France"/>
      </rows>
    </tables>
    <tables xsi:type="roma:InlineTable" id="_tab_FACT" name="Fact">
      <columns xsi:type="roma:PhysicalColumn" id="_col_Fact_KEY" name="KEY" type="Integer"/>
      <columns xsi:type="roma:PhysicalColumn" id="_col_Fact_VALUE" name="VALUE" type="Double"/>
      <rows>
        <rowValues column="_col_Fact_KEY" value="1"/>
        <rowValues column="_col_Fact_VALUE" value="100.5"/>
      </rows>
      <rows>
        <rowValues column="_col_Fact_KEY" value="2"/>
        <rowValues column="_col_Fact_VALUE" value="200.5"/>
      </rows>
      <rows>
        <rowValues column="_col_Fact_KEY" value="3"/>
        <rowValues column="_col_Fact_VALUE" value="300.5"/>
      </rows>
    </tables>
  </roma:DatabaseSchema>
  <roma:TableQuery id="_query_town" table="_tab_TOWN_Physical"/>
  <roma:JoinQuery id="_query_hierarchy">
    <left key="_col_town_country_key" query="_query_town"/>
    <right key="_col_country_KEY" query="_query_country"/>
  </roma:JoinQuery>
  <roma:Level id="_level_country" name="Country" column="_col_country_KEY" nameColumn="_col_country_NAME"/>
  <roma:Level id="_level_town" name="Town" column="_col_town_key" nameColumn="_col_level_name"/>
  <roma:StandardDimension id="_dim_town" name="Dimension" hierarchies="_hierarchy"/>
  <roma:PhysicalCube id="_cube" name="CubeTwoLevelsInlineAndPhysicalTable" query="_query_fact">
    <dimensionConnectors foreignKey="_col_Fact_KEY" dimension="_dim_town"/>
    <measureGroups>
      <measures xsi:type="roma:SumMeasure" id="_measure-Sum" name="Measure-Sum" column="_col_Fact_VALUE"/>
    </measureGroups>
  </roma:PhysicalCube>
</xmi:XMI>

Turorial Zip

This files contaisn the data-tables as csv and the mapping as xmi file.

Download Zip File

Released under the Eclipse Public License 2.0