Tuple-expressies gebruiken

Een tuple bestaat uit één lid uit elke dimensie die in een kubus is opgenomen. Daarom identificeert een tuple uniek een enkele cel binnen de kubus.

Note

Een tuple die verwijst naar één of meer leden die niet geldig zijn, wordt een lege tuple genoemd.

De volledige uitdrukking van een tuple-identificatie bestaat uit één of meer expliciet gespecificeerde leden, tussen haakjes geplaatst:

(Member_expression [ ,Member_expression ... ] )

Een tuple kan volledig gekwalificeerd zijn, impliciete leden bevatten, of één enkel lid bevatten.

Tuples en impliciete leden

Een tuple die expliciet een enkel lid uit elke dimensie specificeert dat zich in een kubus bevindt, staat bekend als een volledig gekwalificeerde tuple. Een tuple hoeft echter niet volledig gekwalificeerd te zijn.

Elke dimensie die niet expliciet binnen een tuple wordt genoemd, wordt impliciet genoemd. Het lid voor de impliciet verwezen dimensie hangt af van de structuur van de dimensie en de attributrelaties die daarin zijn gedefinieerd. Als er een expliciete verwijzing is naar een hiërarchie op dezelfde dimensie als de impliciet gerefereerde hiërarchie, en er is een directe of indirecte relatie gedefinieerd tussen de expliciet gerefereerde hiërarchie en de impliciet gerefereerde hiërarchie, dan gedraagt de tuple zich alsof het lid bevat op de impliciet gerefereerde hiërarchie die samen met het lid op de expliciet gerefereerde hiërarchie bestaat. Als bijvoorbeeld een kubus een Klantdimensie bevat met Stad- en Landattributen, en er is een relatie gedefinieerd tussen deze twee attributen zodat een Stad één Land heeft en een Land veel Steden kan bevatten, dan verwijst expliciet het opnemen van de Stad 'Londen' in je tuple impliciet naar het Land 'Verenigd Koninkrijk'. Als er echter geen attributrelaties zijn gedefinieerd, is de relatie in de tegenovergestelde richting (bijvoorbeeld, hoewel de stad een relatie met het land kan hebben, kun je niet bepalen in welke stad iemand woont alleen door het land waarin ze wonen te kennen) of zijn er geen directe relaties tussen de twee gedefinieerde attributen (er kan een relatie zijn van klant tot stad en klant naar land, maar er is geen relatie gedefinieerd tussen Stad en Land) dan gelden de volgende regels:

  • Als de impliciet verwezen hiërarchie een standaardlid heeft, wordt dat standaardlid aan de tuple toegevoegd.

  • Als de impliciet verwezen hiërarchie geen standaardlid heeft, wordt het (All) lid van de standaardhiërarchie gebruikt.

  • Als de impliciet verwezen hiërarchie geen standaardlid heeft, wordt het eerste lid van het hoogste niveau van de hiërarchie gebruikt.

One-Member Tuples

Als de tuple-expressie één lid heeft, zet MDX het lid om in een één-lid tuple voor het evalueren van de expressie. Met andere woorden, het geven van de liduitdrukking [Measures].[TestMeasure] in plaats van een tuple-uitdrukking is functioneel equivalent aan de tuple-uitdrukking ( [Measures].[TestMeasure] ).