protected virtual void CalculateSignificances(string areaCode, TimePeriod timePeriod, IList<CoreDataSet> categoryDataList)
        {
            var area = AreaFactory.NewArea(_areasReader, areaCode);
            var nationalArea = GetNationalArea(area);

            var indicatorComparisonHelper = new IndicatorComparisonHelper(_indicatorMetadata,
                _grouping, _groupDataReader, _pholioReader, nationalArea);

            // Set benchmark data
            var benchmarkDataProvider = new BenchmarkDataProvider(_groupDataReader);
            AverageCalculator averageCalculator = null; // Assume parent value is in database
            CoreDataSet benchmarkData = benchmarkDataProvider.GetBenchmarkData(_grouping, timePeriod,
                averageCalculator, area);

            foreach (CoreDataSet coreDataSet in categoryDataList)
            {
                coreDataSet.SignificanceAgainstOneBenchmark =
                    (int) indicatorComparisonHelper.GetSignificance(coreDataSet, benchmarkData);
            }
        }
        protected override void CalculateSignificances(string areaCode, TimePeriod timePeriod, IList<CoreDataSet> categoryDataList)
        {
            var area = AreaFactory.NewArea(_areasReader, areaCode);
            var nationalArea = GetNationalArea(area);

            var personsData = categoryDataList.FirstOrDefault(x => x.SexId == SexIds.Persons);

            if (personsData == null && _indicatorMetadata.HasTarget == false)
            {
                // Do not calculate significance
                foreach (var coreDataSet in categoryDataList)
                {
                    coreDataSet.SignificanceAgainstOneBenchmark = (int)Significance.None;
                }
            }
            else
            {
                // Calculate significance (is data for persons or there is a target)
                var indicatorComparisonHelper = new IndicatorComparisonHelper(_indicatorMetadata,
                    _grouping, _groupDataReader, _pholioReader, nationalArea);
                foreach (var coreDataSet in categoryDataList)
                {
                    coreDataSet.SignificanceAgainstOneBenchmark =
                        indicatorComparisonHelper.GetSignificance(coreDataSet, personsData);
                }
            }
        }