/// <summary>
 /// Get all output taxon categories that are checked.
 /// </summary>
 /// <returns>All output taxon categories that are checked.</returns>
 public TaxonCategoryList GetOutputTaxonCategories()
 {
     if (_outputTaxonCategories.IsNull())
     {
         _outputTaxonCategories = new TaxonCategoryList();
         foreach (ExportTaxonCategory outputTaxonCategory in OutputAllTaxonCategories)
         {
             if (outputTaxonCategory.IsChecked)
             {
                 _outputTaxonCategories.Add(TaxonCategories.Get(outputTaxonCategory.CategoryId));
             }
         }
     }
     return(_outputTaxonCategories);
 }
 /// <summary>
 /// Get all filter taxon categories that are checked.
 /// </summary>
 /// <returns>All filter taxon categories that are checked.</returns>
 public TaxonCategoryList GetFilteredTaxonCategories()
 {
     if (_filteredTaxonCategories.IsNull())
     {
         _filteredTaxonCategories = new TaxonCategoryList();
         foreach (ExportTaxonCategory filterTaxonCategory in FilterAllTaxonCategories)
         {
             if (filterTaxonCategory.IsChecked)
             {
                 _filteredTaxonCategories.Add(TaxonCategories.Get(filterTaxonCategory.CategoryId));
             }
         }
     }
     return(_filteredTaxonCategories);
 }