The DGraph.WhyPrecedenceRuleFired property value has a multi-part format that is made up of a list of trigger reasons and trigger values that were evaluated for each precedence rule.

The DGraph.WhyPrecedenceRuleFired property is returned as a JSON object with the following format:

  { "triggerReason" : "<Reason>", "triggerDimensionValues" : ["<DimensionID>, ... "], "ruleType" : "<Type>", "sourceDimension" : "<DimensionName>", 
   "sourceDimensionValue" : "<DimensionID>" },

The following table describes the reporting values in the DGraph.WhyPrecedenceRuleFired property. The specific reporting values depend on the precedence rules in the MDEX Engine and how many rules the MDEX Engine evaluated for the current set of available refinement dimensions.

Reporting Value



The triggerReason can have any of the following values:


The triggerDimensionValues is followed by a list of integers representing the dimension IDs.


The ruleType can have any of the following values:


A string representing the name of the dimension.

The DGraph.WhyPrecedenceRuleFired property may contain any number of triggerReason reporting values. However, there is one exception in the case where the value of triggerReason is default. In that case, there would be a single triggerReason value.

Here is an example query that contains at least the following two URL query parameters: N=310002&Nx=whyprecedencerulefired. The value of 310002 is the dimension value ID that triggers a precedence rule for dimension 300000. The query produces a result with a root dimension value that contains the following DGraph.WhyPrecedenceRuleFired property:

<Dimension Id=300000 Name=Number of Digits>
          <DimVal Name="Number of Digits" Id=300000>
            <PropertyList Size=1>
              <Property Key="DGraph.WhyPrecedenceRuleFired" Value="[ { "triggerReason" : "explicitSelection", "triggerDimensionValues" : [310002] } ]">

Copyright © Legal Notices