private PropertiesDescriptor <object> CreateInterpretedFieldsPropertyDescriptor() { //have to put limit on this field because if term/string is longer than the 32766 bytes it can't be stored in Lucene var propDesc = new PropertiesDescriptor <object>(); propDesc.String(desc => desc .Name("raw") .Index(FieldIndexOption.NotAnalyzed).IgnoreAbove(10000).IncludeInAll(false)); var analyzerName = string.Format("{0}{1}", _analyzerPrefix, 1); propDesc.String(desc => desc .Name("1") .Analyzer(analyzerName) .SearchAnalyzer(analyzerName) .TermVector(TermVectorOption.WithPositionsOffsetsPayloads)); // we only store the count for unigrams, because it's easy to calculate the others from this propDesc.TokenCount(desc => desc .Name("1" + _tokenCountSuffix) .Analyzer(analyzerName) .DocValues(true) .Store(true)); return(propDesc); }