private static string CreateReformedQueryMessage(IReformedQuery query)
        {
            var sb = new StringBuilder();

            sb.Append(query.ReformExplanation + " ");
            return(sb.ToString());
        }
 public static void AddSearchTermsToOriginal(IReformedQuery query)
 {
     if (!query.OriginalQueryString.Equals(query.QueryString))
     {
         var sb = new StringBuilder();
         sb.Append("Add search terms automatically.");
         DataCollectionLogEventHandlers.WriteInfoLogMessage("Post-search recommendation", sb.ToString());
     }
 }
 public static void IssueRecommendedQueries(IReformedQuery[] allQueries)
 {
     if (allQueries.Any())
     {
         var sb = new StringBuilder();
         sb.Append("Created links.");
         DataCollectionLogEventHandlers.WriteInfoLogMessage("Post-search recommendation",
             sb.ToString());
     }
 }
 public static void AddSearchTermsToOriginal(IReformedQuery query)
 {
     if (!query.OriginalQueryString.Equals(query.QueryString))
     {
         var sb = new StringBuilder();
         sb.Append("Add search terms automatically.");
         sb.Append(CreateReformedQueryMessage(query));
         DataCollectionLogEventHandlers.WriteInfoLogMessage("Post-search recommendation", sb.ToString());
     }
 }
        private string GetStemmedNewQuery(IReformedQuery query)
        {
            var sb = new StringBuilder();

            foreach (var word in query.ReformedWords.Select(w => w.NewTerm))
            {
                sb.Append(word.GetStemmedQuery());
                sb.Append(" ");
            }
            return(sb.ToString().Trim());
        }
Example #6
0
 public bool Equals(IReformedQuery other)
 {
     if (other as ExpandedQuery != null)
     {
         var wordsList1 = this.WordsAfterReform.ToArray();
         var wordsList2 = other.WordsAfterReform.ToArray();
         return(wordsList1.Aggregate((s1, s2) => s1 + " " + s2).Equals
                    (wordsList2.Aggregate((s1, s2) => s1 + " " + s2)));
     }
     return(false);
 }
 private static String GetExplanation(IReformedQuery query, List<String> originalTerms)
 {
     var appended = false;
     var sb = new StringBuilder();
     sb.Append(ADDED_TERMS);
     foreach (var term in query.ReformedWords.Where(term => !originalTerms.Contains(term.NewTerm)))
     {
         appended = true;
         sb.Append(" " + term.NewTerm + ", ");
     }
     return appended ? sb.ToString().TrimEnd(new char[]{',', ' '}) + ". " : String.Empty;
 }
Example #8
0
        private static String GetExplanation(IReformedQuery query, List <String> originalTerms)
        {
            var appended = false;
            var sb       = new StringBuilder();

            sb.Append("Added search term(s):");
            foreach (var term in query.ReformedWords.Where(term => !originalTerms.Contains(term.NewTerm)))
            {
                appended = true;
                sb.Append(" " + term.NewTerm + ", ");
            }
            return(appended ? sb.ToString().TrimEnd(new char[] { ',', ' ' }) + ". " : String.Empty);
        }
        private Boolean IsEveryWordPairExisting(IReformedQuery query)
        {
            var words = query.ReformedWords.Select(q => q.NewTerm).ToList();

            for (int i = 0; i < words.Count - 1; i++)
            {
                for (int j = i + 1; j < words.Count; j++)
                {
                    if (coOccurrenceMatrix.GetCoOccurrenceCount(words.ElementAt(i),
                                                                words.ElementAt(j)) == 0)
                    {
                        return(false);
                    }
                }
            }
            return(true);
        }
 private int GetTotalDistance(IReformedQuery query)
 {
     return query.ReformedWords.Sum(term => term.DistanceFromOriginal);
 }
 public bool Equals(IReformedQuery other)
 {
     return(this.QueryString.Equals(other.QueryString));
 }
Example #12
0
 internal ScoredReformedQuery(IReformedQuery query)
 {
     this.Query = query;
     this.Score = 0;
 }
Example #13
0
 private int GetTotalDistance(IReformedQuery query)
 {
     return(query.ReformedWords.Sum(term => term.DistanceFromOriginal));
 }