private function doResolveInnerConditionRecursively(DIProperty $property, Description $description) { $innerOrderByProperty = null; // Find out if we should order by the values of this property if (array_key_exists($property->getKey(), $this->compoundConditionBuilder->getSortKeys())) { $innerOrderByProperty = $property; } // Prepare inner condition $innerJoinVariable = $this->compoundConditionBuilder->getNextVariable(); $innerCondition = $this->compoundConditionBuilder->mapDescriptionToCondition($description, $innerJoinVariable, $innerOrderByProperty); return array($innerOrderByProperty, $innerCondition, $innerJoinVariable); }