/// <summary>
        /// Constructor with specified dataset and default HTML extractor
        /// </summary>
        /// <param name="dataset">The query dataset</param>
        /// <param name="defaultExtractor">The HTML extractor for articles</param>
        public ArticleQuerier(QueryDataset dataset, IHtmlPlainTextExtractor defaultExtractor)
        {
            // Generate dataset path
            switch (dataset)
            {
                case QueryDataset.TrainDataset:
                    this.datasetPath = Path.Combine(General.Constants.DatasetPath, General.Constants.TrainDatasetDir);
                    break;
                case QueryDataset.TestDataset:
                    this.datasetPath = Path.Combine(General.Constants.DatasetPath, General.Constants.TestDatasetDir);
                    break;
                default:
                    throw new NotImplementedException();
            }
            this.titlePath = Path.Combine(datasetPath, Constants.TitleDir);
            this.summaryPath = Path.Combine(datasetPath, Constants.SummaryDir);
            this.typePath = Path.Combine(datasetPath, Constants.TypeDir);

            this.defaultExtractor = defaultExtractor;
        }
 /// <summary>
 /// Constructor with specified dataset
 /// </summary>
 /// <param name="dataset">The query dataset</param>
 public ArticleQuerier(QueryDataset dataset)
     : this(dataset, new HtmlAgilityPackPlainTextExtractor())
 {
 }