lucenenet-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From synhers...@apache.org
Subject [41/46] lucenenet git commit: Facet: Updated documentation
Date Tue, 04 Oct 2016 20:02:11 GMT
Facet: Updated documentation


Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/44958102
Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/44958102
Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/44958102

Branch: refs/heads/master
Commit: 44958102853fca1051996bfe6cd42b7b1c194c56
Parents: 8cbc492
Author: Shad Storhaug <shad@shadstorhaug.com>
Authored: Sun Sep 25 23:32:33 2016 +0700
Committer: Shad Storhaug <shad@shadstorhaug.com>
Committed: Mon Oct 3 23:32:10 2016 +0700

----------------------------------------------------------------------
 src/Lucene.Net.Facet/DrillDownQuery.cs          |  50 ++++---
 src/Lucene.Net.Facet/DrillSideways.cs           |  69 +++++----
 src/Lucene.Net.Facet/DrillSidewaysQuery.cs      |   3 +-
 src/Lucene.Net.Facet/DrillSidewaysScorer.cs     |  10 +-
 src/Lucene.Net.Facet/FacetField.cs              |  16 +-
 src/Lucene.Net.Facet/FacetResult.cs             |  19 ++-
 src/Lucene.Net.Facet/Facets.cs                  |  19 +--
 src/Lucene.Net.Facet/FacetsCollector.cs         |  60 ++++----
 src/Lucene.Net.Facet/FacetsConfig.cs            |  91 ++++++------
 src/Lucene.Net.Facet/LabelAndValue.cs           |  10 +-
 src/Lucene.Net.Facet/Lucene.Net.Facet.csproj    |   4 +
 src/Lucene.Net.Facet/MultiFacets.cs             |   8 +-
 .../RandomSamplingFacetsCollector.cs            |  47 +++---
 .../Range/DoubleRangeFacetCounts.cs             |  36 ++---
 src/Lucene.Net.Facet/Range/LongRangeCounter.cs  |  17 ++-
 .../Range/LongRangeFacetCounts.cs               |  32 ++--
 src/Lucene.Net.Facet/Range/Range.cs             |  41 ++---
 src/Lucene.Net.Facet/Range/RangeFacetCounts.cs  |   8 +-
 .../DefaultSortedSetDocValuesReaderState.cs     |  21 ++-
 .../SortedSet/SortedSetDocValuesFacetCounts.cs  |  24 +--
 .../SortedSet/SortedSetDocValuesFacetField.cs   |   6 +-
 .../SortedSet/SortedSetDocValuesReaderState.cs  |  36 ++---
 .../Taxonomy/AssociationFacetField.cs           |  29 ++--
 .../Taxonomy/CachedOrdinalsReader.cs            |  21 +--
 src/Lucene.Net.Facet/Taxonomy/CategoryPath.cs   |  37 +++--
 .../Directory/DirectoryTaxonomyReader.cs        |  51 +++----
 .../Directory/DirectoryTaxonomyWriter.cs        | 148 ++++++++++---------
 .../Taxonomy/Directory/TaxonomyIndexArrays.cs   |  25 ++--
 .../Taxonomy/DocValuesOrdinalsReader.cs         |  13 +-
 src/Lucene.Net.Facet/Taxonomy/FacetLabel.cs     |  37 ++---
 .../Taxonomy/FastTaxonomyFacetCounts.cs         |  16 +-
 .../Taxonomy/FloatAssociationFacetField.cs      |  17 ++-
 .../Taxonomy/FloatTaxonomyFacets.cs             |   8 +-
 .../Taxonomy/IntAssociationFacetField.cs        |  18 +--
 .../Taxonomy/IntTaxonomyFacets.cs               |   8 +-
 src/Lucene.Net.Facet/Taxonomy/LRUHashMap.cs     |  41 +++--
 src/Lucene.Net.Facet/Taxonomy/OrdinalsReader.cs |  12 +-
 .../Taxonomy/ParallelTaxonomyArrays.cs          |  35 ++---
 .../Taxonomy/PrintTaxonomyStats.cs              |  10 +-
 .../Taxonomy/SearcherTaxonomyManager.cs         |  29 ++--
 .../Taxonomy/TaxonomyFacetCounts.cs             |  12 +-
 .../TaxonomyFacetSumFloatAssociations.cs        |  12 +-
 .../Taxonomy/TaxonomyFacetSumIntAssociations.cs |  12 +-
 .../Taxonomy/TaxonomyFacetSumValueSource.cs     |  24 +--
 src/Lucene.Net.Facet/Taxonomy/TaxonomyFacets.cs |  22 +--
 src/Lucene.Net.Facet/Taxonomy/TaxonomyReader.cs |  88 ++++++-----
 src/Lucene.Net.Facet/Taxonomy/TaxonomyWriter.cs |  58 ++++----
 .../Taxonomy/WriterCache/CategoryPathUtils.cs   |  12 +-
 .../Taxonomy/WriterCache/CharBlockArray.cs      |   2 +-
 .../WriterCache/Cl2oTaxonomyWriterCache.cs      |  10 +-
 .../Taxonomy/WriterCache/CollisionMap.cs        |  10 +-
 .../WriterCache/CompactLabelToOrdinal.cs        |  27 ++--
 .../Taxonomy/WriterCache/LabelToOrdinal.cs      |  11 +-
 .../WriterCache/LruTaxonomyWriterCache.cs       |   8 +-
 .../Taxonomy/WriterCache/NameIntCacheLRU.cs     |  17 ++-
 .../Taxonomy/WriterCache/TaxonomyWriterCache.cs |  38 ++---
 src/Lucene.Net.Facet/TopOrdAndFloatQueue.cs     |  11 +-
 src/Lucene.Net.Facet/TopOrdAndIntQueue.cs       |  11 +-
 58 files changed, 844 insertions(+), 723 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/DrillDownQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/DrillDownQuery.cs b/src/Lucene.Net.Facet/DrillDownQuery.cs
index d6fa03b..67c36f2 100644
--- a/src/Lucene.Net.Facet/DrillDownQuery.cs
+++ b/src/Lucene.Net.Facet/DrillDownQuery.cs
@@ -36,13 +36,13 @@ namespace Lucene.Net.Facet
     using TermQuery = Lucene.Net.Search.TermQuery;
 
     /// <summary>
-    /// A <seealso cref="Query"/> for drill-down over facet categories. You
-    /// should call <seealso cref="#add(String, String...)"/> for every group of categories you
+    /// A <see cref="Query"/> for drill-down over facet categories. You
+    /// should call <see cref="Add(string, string[])"/> for every group of categories you
     /// want to drill-down over.
     /// <para>
-    /// <b>NOTE:</b> if you choose to create your own <seealso cref="Query"/> by calling
-    /// <seealso cref="#term"/>, it is recommended to wrap it with <seealso cref="ConstantScoreQuery"/>
-    /// and set the <seealso cref="ConstantScoreQuery#setBoost(float) boost"/> to {@code 0.0f},
+    /// <b>NOTE:</b> if you choose to create your own <see cref="Query"/> by calling
+    /// <see cref="Term"/>, it is recommended to wrap it with <see cref="ConstantScoreQuery"/>
+    /// and set the <see cref="ConstantScoreQuery.Boost">boost</see> to <c>0.0f</c>,
     /// so that it does not affect the scores of the documents.
     /// 
     /// @lucene.experimental
@@ -51,7 +51,8 @@ namespace Lucene.Net.Facet
     public sealed class DrillDownQuery : Query
     {
         /// <summary>
-        /// Creates a drill-down term. </summary>
+        /// Creates a drill-down term.
+        /// </summary>
         public static Term Term(string field, string dim, params string[] path)
         {
             return new Term(field, FacetsConfig.PathToString(dim, path));
@@ -62,7 +63,8 @@ namespace Lucene.Net.Facet
         private readonly IDictionary<string, int?> drillDownDims = new Dictionary<string, int?>();
 
         /// <summary>
-        /// Used by clone() </summary>
+        /// Used by <see cref="Clone"/>
+        /// </summary>
         internal DrillDownQuery(FacetsConfig config, BooleanQuery query, IDictionary<string, int?> drillDownDims)
         {
             this.query = (BooleanQuery)query.Clone();
@@ -71,7 +73,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Used by DrillSideways </summary>
+        /// Used by <see cref="DrillSideways"/>
+        /// </summary>
         internal DrillDownQuery(FacetsConfig config, Filter filter, DrillDownQuery other)
         {
             query = new BooleanQuery(true); // disable coord
@@ -92,7 +95,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Used by DrillSideways </summary>
+        /// Used by <see cref="DrillSideways"/>
+        /// </summary>
         internal DrillDownQuery(FacetsConfig config, Query baseQuery, IList<Query> clauses, IDictionary<string, int?> drillDownDims)
         {
             query = new BooleanQuery(true);
@@ -109,9 +113,9 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Creates a new {@code DrillDownQuery} without a base query, 
-        ///  to perform a pure browsing query (equivalent to using
-        ///  <seealso cref="MatchAllDocsQuery"/> as base). 
+        /// Creates a new <see cref="DrillDownQuery"/> without a base query, 
+        /// to perform a pure browsing query (equivalent to using
+        /// <see cref="MatchAllDocsQuery"/> as base). 
         /// </summary>
         public DrillDownQuery(FacetsConfig config)
             : this(config, null)
@@ -119,10 +123,10 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Creates a new {@code DrillDownQuery} over the given base query. Can be
-        ///  {@code null}, in which case the result <seealso cref="Query"/> from
-        ///  <seealso cref="#rewrite(IndexReader)"/> will be a pure browsing query, filtering on
-        ///  the added categories only. 
+        /// Creates a new <see cref="DrillDownQuery"/> over the given base query. Can be
+        /// <c>null</c>, in which case the result <see cref="Query"/> from
+        /// <see cref="Rewrite(IndexReader)"/> will be a pure browsing query, filtering on
+        /// the added categories only. 
         /// </summary>
         public DrillDownQuery(FacetsConfig config, Query baseQuery)
         {
@@ -136,7 +140,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Merges (ORs) a new path into an existing AND'd
-        ///  clause. 
+        /// clause. 
         /// </summary>
         private void Merge(string dim, string[] path)
         {
@@ -166,9 +170,9 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Adds one dimension of drill downs; if you pass the same
-        ///  dimension more than once it is OR'd with the previous
-        ///  cofnstraints on that dimension, and all dimensions are
-        ///  AND'd against each other and the base query. 
+        /// dimension more than once it is OR'd with the previous
+        /// cofnstraints on that dimension, and all dimensions are
+        /// AND'd against each other and the base query. 
         /// </summary>
         public void Add(string dim, params string[] path)
         {
@@ -188,8 +192,8 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Expert: add a custom drill-down subQuery.  Use this
-        ///  when you have a separate way to drill-down on the
-        ///  dimension than the indexed facet ordinals. 
+        /// when you have a separate way to drill-down on the
+        /// dimension than the indexed facet ordinals. 
         /// </summary>
         public void Add(string dim, Query subQuery)
         {
@@ -212,7 +216,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Expert: add a custom drill-down Filter, e.g. when
-        ///  drilling down after range faceting. 
+        /// drilling down after range faceting. 
         /// </summary>
         public void Add(string dim, Filter subFilter)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/DrillSideways.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/DrillSideways.cs b/src/Lucene.Net.Facet/DrillSideways.cs
index 457bed3..408117b 100644
--- a/src/Lucene.Net.Facet/DrillSideways.cs
+++ b/src/Lucene.Net.Facet/DrillSideways.cs
@@ -27,18 +27,18 @@ namespace Lucene.Net.Facet
 
     /// <summary>
     /// Computes drill down and sideways counts for the provided
-    /// <seealso cref="DrillDownQuery"/>.  Drill sideways counts include
+    /// <see cref="DrillDownQuery"/>.  Drill sideways counts include
     /// alternative values/aggregates for the drill-down
     /// dimensions so that a dimension does not disappear after
     /// the user drills down into it.
     /// 
     /// <para> Use one of the static search
     /// methods to do the search, and then get the hits and facet
-    /// results from the returned <seealso cref="DrillSidewaysResult"/>.
+    /// results from the returned <see cref="DrillSidewaysResult"/>.
     /// 
     /// </para>
-    /// <para><b>NOTE</b>: this allocates one {@link
-    /// FacetsCollector} for each drill-down, plus one.  If your
+    /// <para><b>NOTE</b>: this allocates one <see cref="FacetsCollector"/>
+    /// for each drill-down, plus one.  If your
     /// index has high number of facet labels then this will
     /// multiply your memory usage.
     /// 
@@ -48,33 +48,37 @@ namespace Lucene.Net.Facet
     public class DrillSideways
     {
         /// <summary>
-        /// <seealso cref="IndexSearcher"/> passed to constructor. </summary>
+        /// <see cref="IndexSearcher"/> passed to constructor.
+        /// </summary>
         protected internal readonly IndexSearcher searcher;
 
         /// <summary>
-        /// <seealso cref="TaxonomyReader"/> passed to constructor. </summary>
+        /// <see cref="TaxonomyReader"/> passed to constructor.
+        /// </summary>
         protected internal readonly TaxonomyReader taxoReader;
 
         /// <summary>
-        /// <seealso cref="SortedSetDocValuesReaderState"/> passed to
-        ///  constructor; can be null. 
+        /// <see cref="SortedSetDocValuesReaderState"/> passed to
+        /// constructor; can be <c>null</c>. 
         /// </summary>
         protected internal readonly SortedSetDocValuesReaderState state;
 
         /// <summary>
-        /// <seealso cref="FacetsConfig"/> passed to constructor. </summary>
+        /// <see cref="FacetsConfig"/> passed to constructor.
+        /// </summary>
         protected internal readonly FacetsConfig config;
 
         /// <summary>
-        /// Create a new {@code DrillSideways} instance. </summary>
+        /// Create a new <see cref="DrillSideways"/> instance.
+        /// </summary>
         public DrillSideways(IndexSearcher searcher, FacetsConfig config, TaxonomyReader taxoReader)
             : this(searcher, config, taxoReader, null)
         {
         }
 
         /// <summary>
-        /// Create a new {@code DrillSideways} instance, assuming the categories were
-        ///  indexed with <seealso cref="SortedSetDocValuesFacetField"/>. 
+        /// Create a new <see cref="DrillSideways"/> instance, assuming the categories were
+        /// indexed with <see cref="SortedSetDocValuesFacetField"/>. 
         /// </summary>
         public DrillSideways(IndexSearcher searcher, FacetsConfig config, SortedSetDocValuesReaderState state)
             : this(searcher, config, null, state)
@@ -82,10 +86,9 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Create a new {@code DrillSideways} instance, where some
-        ///  dimensions were indexed with {@link
-        ///  SortedSetDocValuesFacetField} and others were indexed
-        ///  with <seealso cref="FacetField"/>. 
+        /// Create a new <see cref="DrillSideways"/> instance, where some
+        /// dimensions were indexed with <see cref="SortedSetDocValuesFacetField"/>
+        /// and others were indexed with <see cref="FacetField"/>. 
         /// </summary>
         public DrillSideways(IndexSearcher searcher, FacetsConfig config, TaxonomyReader taxoReader, SortedSetDocValuesReaderState state)
         {
@@ -97,7 +100,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Subclass can override to customize per-dim Facets
-        ///  impl. 
+        /// impl. 
         /// </summary>
         protected virtual Facets BuildFacetsResult(FacetsCollector drillDowns, FacetsCollector[] drillSideways, string[] drillSidewaysDims)
         {
@@ -139,7 +142,7 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Search, collecting hits with a <seealso cref="Collector"/>, and
+        /// Search, collecting hits with a <see cref="Collector"/>, and
         /// computing drill down and sideways counts.
         /// </summary>
         public virtual DrillSidewaysResult Search(DrillDownQuery query, Collector hitCollector)
@@ -194,7 +197,7 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Search, sorting by <seealso cref="Sort"/>, and computing
+        /// Search, sorting by <see cref="Sort"/>, and computing
         /// drill down and sideways counts.
         /// </summary>
         public virtual DrillSidewaysResult Search(DrillDownQuery query, Filter filter, FieldDoc after, int topN, Sort sort, bool doDocScores, bool doMaxScore)
@@ -249,15 +252,14 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Override this and return true if your collector
-        ///  (e.g., {@code ToParentBlockJoinCollector}) expects all
-        ///  sub-scorers to be positioned on the document being
-        ///  collected.  This will cause some performance loss;
-        ///  default is false.  Note that if you return true from
-        ///  this method (in a subclass) be sure your collector
-        ///  also returns false from {@link
-        ///  Collector#acceptsDocsOutOfOrder}: this will trick
-        ///  {@code BooleanQuery} into also scoring all subDocs at
-        ///  once. 
+        /// (e.g., <see cref="Join.ToParentBlockJoinCollector"/>) expects all
+        /// sub-scorers to be positioned on the document being
+        /// collected.  This will cause some performance loss;
+        /// default is <c>false</c>.  Note that if you return true from
+        /// this method (in a subclass) be sure your collector
+        /// also returns <c>false</c> from <see cref="Collector.AcceptsDocsOutOfOrder"/>: 
+        /// this will trick <see cref="BooleanQuery"/> into also scoring all subDocs at
+        /// once. 
         /// </summary>
         protected virtual bool ScoreSubDocsAtOnce()
         {
@@ -266,20 +268,23 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Result of a drill sideways search, including the
-        ///  <seealso crTopDocsetss"/> and <seealso cref="Lucene"/>. 
+        /// <see cref="Facet.Facets"/> and <see cref="TopDocs"/>. 
         /// </summary>
         public class DrillSidewaysResult
         {
             /// <summary>
-            /// Combined drill down & sideways results. </summary>
+            /// Combined drill down & sideways results.
+            /// </summary>
             public Facets Facets { get; private set; }
 
             /// <summary>
-            /// Hits. </summary>
+            /// Hits.
+            /// </summary>
             public TopDocs Hits { get; private set; }
 
             /// <summary>
-            /// Sole constructor. </summary>
+            /// Sole constructor.
+            /// </summary>
             public DrillSidewaysResult(Facets facets, TopDocs hits)
             {
                 this.Facets = facets;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/DrillSidewaysQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/DrillSidewaysQuery.cs b/src/Lucene.Net.Facet/DrillSidewaysQuery.cs
index 9b25dac..38fac96 100644
--- a/src/Lucene.Net.Facet/DrillSidewaysQuery.cs
+++ b/src/Lucene.Net.Facet/DrillSidewaysQuery.cs
@@ -36,9 +36,8 @@ namespace Lucene.Net.Facet
 
     /// <summary>
     /// Only purpose is to punch through and return a
-    ///  DrillSidewaysScorer 
+    /// <see cref="DrillSidewaysScorer"/> 
     /// </summary>
-
     internal class DrillSidewaysQuery : Query
     {
         internal readonly Query baseQuery;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/DrillSidewaysScorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/DrillSidewaysScorer.cs b/src/Lucene.Net.Facet/DrillSidewaysScorer.cs
index 18a0e06..0dcc285 100644
--- a/src/Lucene.Net.Facet/DrillSidewaysScorer.cs
+++ b/src/Lucene.Net.Facet/DrillSidewaysScorer.cs
@@ -169,10 +169,10 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Used when base query is highly constraining vs the
-        ///  drilldowns, or when the docs must be scored at once
-        ///  (i.e., like BooleanScorer2, not BooleanScorer).  In
-        ///  this case we just .next() on base and .advance() on
-        ///  the dim filters. 
+        /// drilldowns, or when the docs must be scored at once
+        /// (i.e., like <see cref="Search.BooleanScorer2"/>, not <see cref="Search.BooleanScorer"/>).  In
+        /// this case we just .Next() on base and .Advance() on
+        /// the dim filters. 
         /// </summary>
         private void DoQueryFirstScoring(Collector collector, DocIdSetIterator[] disis, 
             Collector[] sidewaysCollectors, Bits[] bits, Collector[] bitsSidewaysCollectors)
@@ -263,7 +263,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Used when drill downs are highly constraining vs
-        ///  baseQuery. 
+        /// baseQuery. 
         /// </summary>
         private void DoDrillDownAdvanceScoring(Collector collector, DocIdSetIterator[] disis, Collector[] sidewaysCollectors)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/FacetField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/FacetField.cs b/src/Lucene.Net.Facet/FacetField.cs
index 794ec31..9934afb 100644
--- a/src/Lucene.Net.Facet/FacetField.cs
+++ b/src/Lucene.Net.Facet/FacetField.cs
@@ -24,11 +24,11 @@ namespace Lucene.Net.Facet
     using FieldType = Lucene.Net.Documents.FieldType;
 
     /// <summary>
-    /// Add an instance of this to your <seealso cref="Document"/> for every facet label.
+    /// Add an instance of this to your <see cref="Document"/> for every facet label.
     /// 
     /// <para>
-    /// <b>NOTE:</b> you must call <seealso cref="FacetsConfig#build(Document)"/> before
-    /// you add the document to IndexWriter.
+    /// <b>NOTE:</b> you must call <see cref="FacetsConfig.Build(Document)"/> before
+    /// you add the document to <see cref="Index.IndexWriter"/>.
     /// </para>
     /// </summary>
     public class FacetField : Field
@@ -41,16 +41,18 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Dimension for this field. </summary>
+        /// Dimension for this field.
+        /// </summary>
         public string Dim { get; private set; }
 
         /// <summary>
-        /// Path for this field. </summary>
+        /// Path for this field.
+        /// </summary>
         public string[] Path { get; private set; }
 
         /// <summary>
-        /// Creates the this from {@code dim} and
-        ///  {@code path}. 
+        /// Creates the this from <paramref name="dim"/> and
+        /// <paramref name="path"/>. 
         /// </summary>
         public FacetField(string dim, params string[] path)
             : base("dummy", TYPE)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/FacetResult.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/FacetResult.cs b/src/Lucene.Net.Facet/FacetResult.cs
index 7dc73b9..26040e8 100644
--- a/src/Lucene.Net.Facet/FacetResult.cs
+++ b/src/Lucene.Net.Facet/FacetResult.cs
@@ -23,30 +23,35 @@ namespace Lucene.Net.Facet
      */
 
     /// <summary>
-    /// Counts or aggregates for a single dimension. </summary>
+    /// Counts or aggregates for a single dimension.
+    /// </summary>
     public sealed class FacetResult
     {
         /// <summary>
-        /// Dimension that was requested. </summary>
+        /// Dimension that was requested.
+        /// </summary>
         public string Dim { get; private set; }
 
         /// <summary>
-        /// Path whose children were requested. </summary>
+        /// Path whose children were requested.
+        /// </summary>
         public string[] Path { get; private set; }
 
         /// <summary>
         /// Total value for this path (sum of all child counts, or
-        ///  sum of all child values), even those not included in
-        ///  the topN. 
+        /// sum of all child values), even those not included in
+        /// the topN. 
         /// </summary>
         public float Value { get; private set; }
 
         /// <summary>
-        /// How many child labels were encountered. </summary>
+        /// How many child labels were encountered.
+        /// </summary>
         public int ChildCount { get; private set; }
 
         /// <summary>
-        /// Child counts. </summary>
+        /// Child counts.
+        /// </summary>
         public LabelAndValue[] LabelValues { get; private set; }
 
         /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Facets.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Facets.cs b/src/Lucene.Net.Facet/Facets.cs
index ce17c15..669124f 100644
--- a/src/Lucene.Net.Facet/Facets.cs
+++ b/src/Lucene.Net.Facet/Facets.cs
@@ -27,31 +27,32 @@ namespace Lucene.Net.Facet
     public abstract class Facets
     {
         /// <summary>
-        /// Default constructor. </summary>
+        /// Default constructor.
+        /// </summary>
         public Facets()
         {
         }
 
         /// <summary>
         /// Returns the topN child labels under the specified
-        ///  path.  Returns null if the specified path doesn't
-        ///  exist or if this dimension was never seen. 
+        /// path.  Returns null if the specified path doesn't
+        /// exist or if this dimension was never seen. 
         /// </summary>
         public abstract FacetResult GetTopChildren(int topN, string dim, params string[] path);
 
         /// <summary>
         /// Return the count or value
-        ///  for a specific path.  Returns -1 if
-        ///  this path doesn't exist, else the count. 
+        /// for a specific path.  Returns -1 if
+        /// this path doesn't exist, else the count. 
         /// </summary>
         public abstract float GetSpecificValue(string dim, params string[] path);
 
         /// <summary>
         /// Returns topN labels for any dimension that had hits,
-        ///  sorted by the number of hits that dimension matched;
-        ///  this is used for "sparse" faceting, where many
-        ///  different dimensions were indexed, for example
-        ///  depending on the type of document. 
+        /// sorted by the number of hits that dimension matched;
+        /// this is used for "sparse" faceting, where many
+        /// different dimensions were indexed, for example
+        /// depending on the type of document. 
         /// </summary>
         public abstract List<FacetResult> GetAllDims(int topN);
     }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/FacetsCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/FacetsCollector.cs b/src/Lucene.Net.Facet/FacetsCollector.cs
index 0b225d0..c494a7b 100644
--- a/src/Lucene.Net.Facet/FacetsCollector.cs
+++ b/src/Lucene.Net.Facet/FacetsCollector.cs
@@ -25,11 +25,11 @@ namespace Lucene.Net.Facet
 
     /// <summary>
     /// Collects hits for subsequent faceting.  Once you've run
-    ///  a search and collect hits into this, instantiate one of
-    ///  the <seealso cref="Collector"/> subclasses to do the facet
-    ///  counting.  Use the {@code search} utility methods to
-    ///  perform an "ordinary" search but also collect into a
-    ///  <seealso cref="Facets"/>. 
+    /// a search and collect hits into this, instantiate one of
+    /// the <see cref="Collector"/> subclasses to do the facet
+    /// counting.  Use the <see cref="Search"/> utility methods to
+    /// perform an "ordinary" search but also collect into a
+    /// <see cref="Facets"/>. 
     /// </summary>
     public class FacetsCollector : Collector
     {
@@ -43,29 +43,32 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Used during collection to record matching docs and then return a
-        /// <seealso cref="DocIdSet"/> that contains them.
+        /// <see cref="DocIdSet"/> that contains them.
         /// </summary>
         protected internal abstract class Docs
         {
 
             /// <summary>
-            /// Solr constructor. </summary>
+            /// Sole constructor.
+            /// </summary>
             public Docs()
             {
             }
 
             /// <summary>
-            /// Record the given document. </summary>
+            /// Record the given document.
+            /// </summary>
             public abstract void AddDoc(int docId);
 
             /// <summary>
-            /// Return the <seealso cref="DocIdSet"/> which contains all the recorded docs. </summary>
+            /// Return the <see cref="DocIdSet"/> which contains all the recorded docs.
+            /// </summary>
             public abstract DocIdSet DocIdSet { get; }
         }
 
         /// <summary>
-        /// Holds the documents that were matched in the <seealso cref="AtomicReaderContext"/>.
-        /// If scores were required, then {@code scores} is not null.
+        /// Holds the documents that were matched in the <see cref="AtomicReaderContext"/>.
+        /// If scores were required, then <see cref="Scores"/> is not <c>null</c>.
         /// </summary>
         public sealed class MatchingDocs
         {
@@ -87,7 +90,8 @@ namespace Lucene.Net.Facet
             public int TotalHits { get; private set; }
 
             /// <summary>
-            /// Sole constructor. </summary>
+            /// Sole constructor.
+            /// </summary>
             public MatchingDocs(AtomicReaderContext context, DocIdSet bits, int totalHits, float[] scores)
             {
                 this.Context = context;
@@ -98,15 +102,16 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Default constructor </summary>
+        /// Default constructor
+        /// </summary>
         public FacetsCollector()
             : this(false)
         {
         }
 
         /// <summary>
-        /// Create this; if {@code keepScores} is true then a
-        ///  float[] is allocated to hold score of all hits. 
+        /// Create this; if <paramref name="keepScores"/> is <c>true</c> then a
+        /// <see cref="float[]"/> is allocated to hold score of all hits. 
         /// </summary>
         public FacetsCollector(bool keepScores)
         {
@@ -114,9 +119,9 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Creates a <seealso cref="Docs"/> to record hits. The default uses <seealso cref="FixedBitSet"/>
+        /// Creates a <see cref="Docs"/> to record hits. The default uses <see cref="FixedBitSet"/>
         /// to record hits and you can override to e.g. record the docs in your own
-        /// <seealso cref="DocIdSet"/>.
+        /// <see cref="DocIdSet"/>.
         /// </summary>
         protected virtual Docs CreateDocs(int maxDoc)
         {
@@ -153,7 +158,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// True if scores were saved. </summary>
+        /// True if scores were saved.
+        /// </summary>
         public bool KeepScores
         {
             get
@@ -163,7 +169,7 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Returns the documents matched by the query, one <seealso cref="GetMatchingDocs"/> per
+        /// Returns the documents matched by the query, one <see cref="GetMatchingDocs"/> per
         /// visited segment.
         /// </summary>
         public virtual List<MatchingDocs> GetMatchingDocs()
@@ -231,7 +237,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopDocs Search(IndexSearcher searcher, Query q, int n, Collector fc)
         {
@@ -240,7 +246,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopDocs Search(IndexSearcher searcher, Query q, Filter filter, int n, Collector fc)
         {
@@ -249,7 +255,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopFieldDocs Search(IndexSearcher searcher, Query q, Filter filter, int n, Sort sort, Collector fc)
         {
@@ -262,7 +268,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopFieldDocs Search(IndexSearcher searcher, Query q, Filter filter, int n, Sort sort, bool doDocScores, bool doMaxScore, Collector fc)
         {
@@ -275,7 +281,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public virtual TopDocs SearchAfter(IndexSearcher searcher, ScoreDoc after, Query q, int n, Collector fc)
         {
@@ -284,7 +290,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopDocs SearchAfter(IndexSearcher searcher, ScoreDoc after, Query q, Filter filter, int n, Collector fc)
         {
@@ -293,7 +299,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopDocs SearchAfter(IndexSearcher searcher, ScoreDoc after, Query q, Filter filter, int n, Sort sort, Collector fc)
         {
@@ -306,7 +312,7 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Utility method, to search and also collect all hits
-        ///  into the provided <seealso cref="Collector"/>. 
+        /// into the provided <see cref="Collector"/>. 
         /// </summary>
         public static TopDocs SearchAfter(IndexSearcher searcher, ScoreDoc after, Query q, Filter filter, int n, Sort sort, bool doDocScores, bool doMaxScore, Collector fc)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/FacetsConfig.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/FacetsConfig.cs b/src/Lucene.Net.Facet/FacetsConfig.cs
index 48e97a1..0df6e07 100644
--- a/src/Lucene.Net.Facet/FacetsConfig.cs
+++ b/src/Lucene.Net.Facet/FacetsConfig.cs
@@ -44,15 +44,16 @@ namespace Lucene.Net.Facet
 
     /// <summary>
     /// Records per-dimension configuration.  By default a
-    ///  dimension is flat, single valued and does
-    ///  not require count for the dimension; use
-    ///  the setters in this class to change these settings for
-    ///  each dim.
+    /// dimension is flat, single valued and does
+    /// not require count for the dimension; use
+    /// the setters in this class to change these settings for
+    /// each dim.
     /// 
-    ///  <para><b>NOTE</b>: this configuration is not saved into the
-    ///  index, but it's vital, and up to the application to
-    ///  ensure, that at search time the provided {@code
-    ///  FacetsConfig} matches what was used during indexing.
+    /// <para>
+    /// <b>NOTE</b>: this configuration is not saved into the
+    /// index, but it's vital, and up to the application to
+    /// ensure, that at search time the provided <see cref="FacetsConfig"/>
+    /// matches what was used during indexing.
     /// 
     ///  @lucene.experimental 
     /// </para>
@@ -61,7 +62,7 @@ namespace Lucene.Net.Facet
     {
         /// <summary>
         /// Which Lucene field holds the drill-downs and ords (as
-        ///  doc values). 
+        /// doc values). 
         /// </summary>
         public const string DEFAULT_INDEX_FIELD_NAME = "$facets";
 
@@ -99,7 +100,8 @@ namespace Lucene.Net.Facet
             public string IndexFieldName { get; set; }
 
             /// <summary>
-            /// Default constructor. </summary>
+            /// Default constructor.
+            /// </summary>
             public DimConfig()
             {
                 IndexFieldName = DEFAULT_INDEX_FIELD_NAME;
@@ -111,19 +113,21 @@ namespace Lucene.Net.Facet
         public static readonly DimConfig DEFAULT_DIM_CONFIG = new DimConfig();
 
         /// <summary>
-        /// Default constructor. </summary>
+        /// Default constructor.
+        /// </summary>
         public FacetsConfig()
         {
         }
 
         /// <summary>
         /// Get the default configuration for new dimensions.  Useful when
-        ///  the dimension is not known beforehand and may need different 
-        ///  global default settings, like {@code multivalue =
-        ///  true}.
+        /// the dimension is not known beforehand and may need different 
+        /// global default settings, like <c>multivalue = true</c>.
         /// </summary>
-        ///  <returns> The default configuration to be used for dimensions that 
-        ///  are not yet set in the <seealso cref="FacetsConfig"/>  </returns>
+        /// <returns>
+        /// The default configuration to be used for dimensions that 
+        /// are not yet set in the <see cref="FacetsConfig"/>
+        /// </returns>
         protected virtual DimConfig DefaultDimConfig
         {
             get
@@ -133,7 +137,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Get the current configuration for a dimension. </summary>
+        /// Get the current configuration for a dimension.
+        /// </summary>
         public virtual DimConfig GetDimConfig(string dimName)
         {
             lock (this)
@@ -148,8 +153,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Pass {@code true} if this dimension is hierarchical
-        ///  (has depth > 1 paths). 
+        /// Pass <c>true</c> if this dimension is hierarchical
+        /// (has depth > 1 paths). 
         /// </summary>
         public virtual void SetHierarchical(string dimName, bool v)
         {
@@ -168,8 +173,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Pass {@code true} if this dimension may have more than
-        ///  one value per document. 
+        /// Pass <c>true</c> if this dimension may have more than
+        /// one value per document. 
         /// </summary>
         public virtual void SetMultiValued(string dimName, bool v)
         {
@@ -188,9 +193,9 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Pass {@code true} if at search time you require
-        ///  accurate counts of the dimension, i.e. how many
-        ///  hits have this dimension. 
+        /// Pass <c>true</c> if at search time you require
+        /// accurate counts of the dimension, i.e. how many
+        /// hits have this dimension. 
         /// </summary>
         public virtual void SetRequireDimCount(string dimName, bool v)
         {
@@ -210,8 +215,8 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Specify which index field name should hold the
-        ///  ordinals for this dimension; this is only used by the
-        ///  taxonomy based facet methods. 
+        /// ordinals for this dimension; this is only used by the
+        /// taxonomy based facet methods. 
         /// </summary>
         public virtual void SetIndexFieldName(string dimName, string indexFieldName)
         {
@@ -230,7 +235,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Returns map of field name to <seealso cref="DimConfig"/>. </summary>
+        /// Returns map of field name to <see cref="DimConfig"/>.
+        /// </summary>
         public virtual IDictionary<string, DimConfig> DimConfigs
         {
             get
@@ -249,12 +255,12 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Translates any added <seealso cref="FacetField"/>s into normal fields for indexing;
-        /// only use this version if you did not add any taxonomy-based fields (
-        /// <seealso cref="FacetField"/> or <seealso cref="AssociationFacetField"/>).
+        /// Translates any added <see cref="FacetField"/>s into normal fields for indexing;
+        /// only use this version if you did not add any taxonomy-based fields 
+        /// (<see cref="FacetField"/> or <see cref="AssociationFacetField"/>).
         /// 
         /// <para>
-        /// <b>NOTE:</b> you should add the returned document to IndexWriter, not the
+        /// <b>NOTE:</b> you should add the returned document to <see cref="Index.IndexWriter"/>, not the
         /// input one!
         /// </para>
         /// </summary>
@@ -264,10 +270,10 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Translates any added <seealso cref="FacetField"/>s into normal fields for indexing.
+        /// Translates any added <see cref="FacetField"/>s into normal fields for indexing.
         /// 
         /// <para>
-        /// <b>NOTE:</b> you should add the returned document to IndexWriter, not the
+        /// <b>NOTE:</b> you should add the returned document to <see cref="Index.IndexWriter"/>, not the
         /// input one!
         /// </para>
         /// </summary>
@@ -527,8 +533,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Encodes ordinals into a BytesRef; expert: subclass can
-        ///  override this to change encoding. 
+        /// Encodes ordinals into a <see cref="BytesRef"/>; expert: subclass can
+        /// override this to change encoding. 
         /// </summary>
         protected virtual BytesRef DedupAndEncode(IntsRef ordinals)
         {
@@ -608,7 +614,8 @@ namespace Lucene.Net.Facet
         private const char ESCAPE_CHAR = '\u001E';
 
         /// <summary>
-        /// Turns a dim + path into an encoded string. </summary>
+        /// Turns a dim + path into an encoded string.
+        /// </summary>
         public static string PathToString(string dim, string[] path)
         {
             string[] fullPath = new string[1 + path.Length];
@@ -618,15 +625,16 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Turns a dim + path into an encoded string. </summary>
+        /// Turns a dim + path into an encoded string.
+        /// </summary>
         public static string PathToString(string[] path)
         {
             return PathToString(path, path.Length);
         }
 
         /// <summary>
-        /// Turns the first {@code length} elements of {@code
-        /// path} into an encoded string. 
+        /// Turns the first <paramref name="length"/> elements of <paramref name="path"/>
+        /// into an encoded string. 
         /// </summary>
         public static string PathToString(string[] path, int length)
         {
@@ -661,9 +669,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Turns an encoded string (from a previous call to {@link
-        ///  #pathToString}) back into the original {@code
-        ///  String[]}. 
+        /// Turns an encoded string (from a previous call to <see cref="PathToString"/>) 
+        /// back into the original <see cref="string[]"/>. 
         /// </summary>
         public static string[] StringToPath(string s)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/LabelAndValue.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/LabelAndValue.cs b/src/Lucene.Net.Facet/LabelAndValue.cs
index bf6271c..b5719bf 100644
--- a/src/Lucene.Net.Facet/LabelAndValue.cs
+++ b/src/Lucene.Net.Facet/LabelAndValue.cs
@@ -22,7 +22,7 @@ namespace Lucene.Net.Facet
 
     /// <summary>
     /// Single label and its value, usually contained in a
-    ///  <seealso cref="FacetResult"/>. 
+    /// <see cref="FacetResult"/>. 
     /// </summary>
     public sealed class LabelAndValue
     {
@@ -69,14 +69,14 @@ namespace Lucene.Net.Facet
             return Label + " (" + valueString + ")";
         }
 
-        public override bool Equals(object _other)
+        public override bool Equals(object other)
         {
-            if ((_other is LabelAndValue) == false)
+            if ((other is LabelAndValue) == false)
             {
                 return false;
             }
-            LabelAndValue other = (LabelAndValue)_other;
-            return Label.Equals(other.Label) && Value.Equals(other.Value);
+            LabelAndValue _other = (LabelAndValue)other;
+            return Label.Equals(_other.Label) && Value.Equals(_other.Value);
         }
 
         public override int GetHashCode()

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Lucene.Net.Facet.csproj
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Lucene.Net.Facet.csproj b/src/Lucene.Net.Facet/Lucene.Net.Facet.csproj
index 1b33158..0270457 100644
--- a/src/Lucene.Net.Facet/Lucene.Net.Facet.csproj
+++ b/src/Lucene.Net.Facet/Lucene.Net.Facet.csproj
@@ -107,6 +107,10 @@
       <Project>{5d4ad9be-1ffb-41ab-9943-25737971bf57}</Project>
       <Name>Lucene.Net</Name>
     </ProjectReference>
+    <ProjectReference Include="..\Lucene.Net.Join\Lucene.Net.Join.csproj">
+      <Project>{e8a339c7-fcf6-4a72-8586-56d8961d7b99}</Project>
+      <Name>Lucene.Net.Join</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Lucene.Net.Queries\Lucene.Net.Queries.csproj">
       <Project>{69d7956c-c2cc-4708-b399-a188fec384c4}</Project>
       <Name>Lucene.Net.Queries</Name>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/MultiFacets.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/MultiFacets.cs b/src/Lucene.Net.Facet/MultiFacets.cs
index 79bb077..340b706 100644
--- a/src/Lucene.Net.Facet/MultiFacets.cs
+++ b/src/Lucene.Net.Facet/MultiFacets.cs
@@ -20,8 +20,8 @@ namespace Lucene.Net.Facet
      */
 
     /// <summary>
-    /// Maps specified dims to provided Facets impls; else, uses
-    ///  the default Facets impl. 
+    /// Maps specified dims to provided <see cref="Facets"/> impls; else, uses
+    /// the default <see cref="Facets"/> impl. 
     /// </summary>
     public class MultiFacets : Facets
     {
@@ -29,8 +29,8 @@ namespace Lucene.Net.Facet
         private readonly Facets defaultFacets;
 
         /// <summary>
-        /// Create this, with the specified default <seealso cref="Facets"/>
-        ///  for fields not included in {@code dimToFacets}. 
+        /// Create this, with the specified default <see cref="Facets"/>
+        /// for fields not included in <paramref name="dimToFacets"/>. 
         /// </summary>
         public MultiFacets(IDictionary<string, Facets> dimToFacets, Facets defaultFacets = null)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/RandomSamplingFacetsCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/RandomSamplingFacetsCollector.cs b/src/Lucene.Net.Facet/RandomSamplingFacetsCollector.cs
index 491cf5e..436f9b0 100644
--- a/src/Lucene.Net.Facet/RandomSamplingFacetsCollector.cs
+++ b/src/Lucene.Net.Facet/RandomSamplingFacetsCollector.cs
@@ -32,14 +32,14 @@ namespace Lucene.Net.Facet
     /// <summary>
     /// Collects hits for subsequent faceting, using sampling if needed. Once you've
     /// run a search and collect hits into this, instantiate one of the
-    /// <seealso cref="Facets"/> subclasses to do the facet counting. Note that this collector
+    /// <see cref="Facets"/> subclasses to do the facet counting. Note that this collector
     /// does not collect the scores of matching docs (i.e.
-    /// <seealso cref="FacetsCollector.MatchingDocs#scores"/>) is {@code null}.
+    /// <see cref="FacetsCollector.MatchingDocs.Scores"/>) is <c>null</c>.
     /// <para>
     /// If you require the original set of hits, you can call
-    /// <seealso cref="#getOriginalMatchingDocs()"/>. Also, since the counts of the top-facets
+    /// <see cref="GetOriginalMatchingDocs()"/>. Also, since the counts of the top-facets
     /// is based on the sampled set, you can amortize the counts by calling
-    /// <seealso cref="#amortizeFacetCounts"/>.
+    /// <see cref="AmortizeFacetCounts"/>.
     /// </para>
     /// </summary>
     public class RandomSamplingFacetsCollector : FacetsCollector
@@ -56,14 +56,16 @@ namespace Lucene.Net.Facet
             internal long x;
 
             /// <summary>
-            /// Creates a xorshift random generator using the provided seed </summary>
+            /// Creates a xorshift random generator using the provided seed
+            /// </summary>
             public XORShift64Random(long seed)
             {
                 x = seed == 0 ? 0xdeadbeef : seed;
             }
 
             /// <summary>
-            /// Get the next random long value </summary>
+            /// Get the next random long value
+            /// </summary>
             public virtual long RandomLong()
             {
                 x ^= (x << 21);
@@ -73,7 +75,8 @@ namespace Lucene.Net.Facet
             }
 
             /// <summary>
-            /// Get the next random int, between 0 (inclusive) and n (exclusive) </summary>
+            /// Get the next random int, between 0 (inclusive) and <paramref name="n"/> (exclusive)
+            /// </summary>
             public virtual int NextInt(int n)
             {
                 int res = (int)(RandomLong() % n);
@@ -95,7 +98,7 @@ namespace Lucene.Net.Facet
         /// <summary>
         /// Constructor with the given sample size and default seed.
         /// </summary>
-        /// <seealso cref= #RandomSamplingFacetsCollector(int, long) </seealso>
+        /// <seealso cref="RandomSamplingFacetsCollector(int, long)"/>
         public RandomSamplingFacetsCollector(int sampleSize)
             : this(sampleSize, 0)
         {
@@ -111,7 +114,7 @@ namespace Lucene.Net.Facet
         ///          samplingRatio of 0.01. If the number of hits is lower, no sampling
         ///          is done at all </param>
         /// <param name="seed">
-        ///          The random seed. If {@code 0} then a seed will be chosen for you. </param>
+        ///          The random seed. If <c>0</c> then a seed will be chosen for you. </param>
         public RandomSamplingFacetsCollector(int sampleSize, long seed)
             : base(false)
         {
@@ -122,15 +125,15 @@ namespace Lucene.Net.Facet
 
         /// <summary>
         /// Returns the sampled list of the matching documents. Note that a
-        /// <seealso cref="FacetsCollector.MatchingDocs"/> instance is returned per segment, even
+        /// <see cref="FacetsCollector.MatchingDocs"/> instance is returned per segment, even
         /// if no hits from that segment are included in the sampled set.
         /// <para>
-        /// Note: One or more of the MatchingDocs might be empty (not containing any
+        /// Note: One or more of the <see cref="FacetsCollector.MatchingDocs"/> might be empty (not containing any
         /// hits) as result of sampling.
         /// </para>
         /// <para>
-        /// Note: {@code MatchingDocs.totalHits} is copied from the original
-        /// MatchingDocs, scores is set to {@code null}
+        /// Note: <see cref="FacetsCollector.MatchingDocs.TotalHits"/> is copied from the original
+        /// <see cref="FacetsCollector.MatchingDocs"/>, scores is set to <c>null</c>
         /// </para>
         /// </summary>
         public override List<MatchingDocs> GetMatchingDocs()
@@ -160,14 +163,16 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Returns the original matching documents. </summary>
+        /// Returns the original matching documents.
+        /// </summary>
         public virtual List<MatchingDocs> GetOriginalMatchingDocs()
         {
             return base.GetMatchingDocs();
         }
 
         /// <summary>
-        /// Create a sampled copy of the matching documents list. </summary>
+        /// Create a sampled copy of the matching documents list.
+        /// </summary>
         private List<MatchingDocs> CreateSampledDocs(IEnumerable<MatchingDocs> matchingDocsList)
         {
             List<MatchingDocs> sampledDocsList = new List<MatchingDocs>(matchingDocsList.Count());
@@ -179,7 +184,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Create a sampled of the given hits. </summary>
+        /// Create a sampled of the given hits.
+        /// </summary>
         private MatchingDocs CreateSample(MatchingDocs docs)
         {
             int maxdoc = docs.Context.Reader.MaxDoc;
@@ -254,9 +260,9 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Note: if you use a counting <seealso cref="Facets"/> implementation, you can amortize the
-        /// sampled counts by calling this method. Uses the <seealso cref="FacetsConfig"/> and
-        /// the <seealso cref="IndexSearcher"/> to determine the upper bound for each facet value.
+        /// Note: if you use a counting <see cref="Facets"/> implementation, you can amortize the
+        /// sampled counts by calling this method. Uses the <see cref="FacetsConfig"/> and
+        /// the <see cref="IndexSearcher"/> to determine the upper bound for each facet value.
         /// </summary>
         public virtual FacetResult AmortizeFacetCounts(FacetResult res, FacetsConfig config, IndexSearcher searcher)
         {
@@ -296,7 +302,8 @@ namespace Lucene.Net.Facet
         }
 
         /// <summary>
-        /// Returns the sampling rate that was used. </summary>
+        /// Returns the sampling rate that was used.
+        /// </summary>
         public virtual double SamplingRate
         {
             get

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Range/DoubleRangeFacetCounts.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Range/DoubleRangeFacetCounts.cs b/src/Lucene.Net.Facet/Range/DoubleRangeFacetCounts.cs
index 7905086..47f4b41 100644
--- a/src/Lucene.Net.Facet/Range/DoubleRangeFacetCounts.cs
+++ b/src/Lucene.Net.Facet/Range/DoubleRangeFacetCounts.cs
@@ -30,20 +30,20 @@ namespace Lucene.Net.Facet.Range
     using ValueSource = Lucene.Net.Queries.Function.ValueSource;
 
     /// <summary>
-    /// <seealso cref="Facets"/> implementation that computes counts for
-    ///  dynamic double ranges from a provided {@link
-    ///  ValueSource}, using <seealso cref="FunctionValues#doubleVal"/>.  Use
+    /// <see cref="Facets"/> implementation that computes counts for
+    ///  dynamic double ranges from a provided <see cref="ValueSource"/>, 
+    ///  using <see cref="FunctionValues.DoubleVal"/>.  Use
     ///  this for dimensions that change in real-time (e.g. a
     ///  relative time based dimension like "Past day", "Past 2
     ///  days", etc.) or that change for each request (e.g.
-    ///  distance from the user's location, "< 1 km", "< 2 km",
+    ///  distance from the user's location, "&lt; 1 km", "&lt; 2 km",
     ///  etc.).
     /// 
-    ///  <para> If you had indexed your field using {@link
-    ///  FloatDocValuesField} then pass <seealso cref="FloatFieldSource"/>
-    ///  as the <seealso cref="ValueSource"/>; if you used {@link
-    ///  DoubleDocValuesField} then pass {@link
-    ///  DoubleFieldSource} (this is the default used when you
+    ///  <para> If you had indexed your field using <see cref="Documents.FloatDocValuesField"/> 
+    ///  then pass <see cref="Queries.Function.ValueSources.FloatFieldSource"/>
+    ///  as the <see cref="ValueSource"/>; if you used 
+    ///  <see cref="Documents.DoubleDocValuesField"/> then pass 
+    ///  <see cref="DoubleFieldSource"/> (this is the default used when you
     ///  pass just a the field name).
     /// 
     ///  @lucene.experimental 
@@ -52,8 +52,8 @@ namespace Lucene.Net.Facet.Range
     public class DoubleRangeFacetCounts : RangeFacetCounts
     {
         /// <summary>
-        /// Create {@code RangeFacetCounts}, using {@link
-        ///  DoubleFieldSource} from the specified field. 
+        /// Create <see cref="RangeFacetCounts"/>, using 
+        /// <see cref="DoubleFieldSource"/> from the specified field. 
         /// </summary>
         public DoubleRangeFacetCounts(string field, FacetsCollector hits, params DoubleRange[] ranges)
             : this(field, new DoubleFieldSource(field), hits, ranges)
@@ -61,8 +61,8 @@ namespace Lucene.Net.Facet.Range
         }
 
         /// <summary>
-        /// Create {@code RangeFacetCounts}, using the provided
-        ///  <seealso cref="ValueSource"/>. 
+        /// Create <see cref="RangeFacetCounts"/>, using the provided
+        /// <see cref="ValueSource"/>. 
         /// </summary>
         public DoubleRangeFacetCounts(string field, ValueSource valueSource, FacetsCollector hits, params DoubleRange[] ranges)
             : this(field, valueSource, hits, null, ranges)
@@ -70,11 +70,11 @@ namespace Lucene.Net.Facet.Range
         }
 
         /// <summary>
-        /// Create {@code RangeFacetCounts}, using the provided
-        ///  <seealso cref="ValueSource"/>, and using the provided Filter as
-        ///  a fastmatch: only documents passing the filter are
-        ///  checked for the matching ranges.  The filter must be
-        ///  random access (implement <seealso cref="DocIdSet#bits"/>). 
+        /// Create <see cref="RangeFacetCounts"/>, using the provided
+        /// <see cref="ValueSource"/>, and using the provided Filter as
+        /// a fastmatch: only documents passing the filter are
+        /// checked for the matching ranges.  The filter must be
+        /// random access (implement <see cref="DocIdSet.GetBits()"/>). 
         /// </summary>
         public DoubleRangeFacetCounts(string field, ValueSource valueSource, FacetsCollector hits, Filter fastMatchFilter, DoubleRange[] ranges)
             : base(field, ranges, fastMatchFilter)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Range/LongRangeCounter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Range/LongRangeCounter.cs b/src/Lucene.Net.Facet/Range/LongRangeCounter.cs
index f5753fa..a871e1e 100644
--- a/src/Lucene.Net.Facet/Range/LongRangeCounter.cs
+++ b/src/Lucene.Net.Facet/Range/LongRangeCounter.cs
@@ -23,11 +23,10 @@ namespace Lucene.Net.Facet.Range
 
     /// <summary>
     /// Counts how many times each range was seen;
-    ///  per-hit it's just a binary search (<seealso cref="#add"/>)
-    ///  against the elementary intervals, and in the end we
-    ///  rollup back to the original ranges. 
+    /// per-hit it's just a binary search (<see cref="Add"/>)
+    /// against the elementary intervals, and in the end we
+    /// rollup back to the original ranges. 
     /// </summary>
-
     internal sealed class LongRangeCounter
     {
         internal readonly LongRangeNode root;
@@ -205,8 +204,8 @@ namespace Lucene.Net.Facet.Range
 
         /// <summary>
         /// Fills counts corresponding to the original input
-        ///  ranges, returning the missing count (how many hits
-        ///  didn't match any ranges). 
+        /// ranges, returning the missing count (how many hits
+        /// didn't match any ranges). 
         /// </summary>
         public int FillCounts(int[] counts)
         {
@@ -285,7 +284,8 @@ namespace Lucene.Net.Facet.Range
         }
 
         /// <summary>
-        /// Holds one node of the segment tree. </summary>
+        /// Holds one node of the segment tree.
+        /// </summary>
         public sealed class LongRangeNode
         {
             internal readonly LongRangeNode left;
@@ -328,7 +328,8 @@ namespace Lucene.Net.Facet.Range
             }
 
             /// <summary>
-            /// Recursively assigns range outputs to each node. </summary>
+            /// Recursively assigns range outputs to each node.
+            /// </summary>
             internal void AddOutputs(int index, LongRange range)
             {
                 if (start >= range.minIncl && end <= range.maxIncl)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Range/LongRangeFacetCounts.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Range/LongRangeFacetCounts.cs b/src/Lucene.Net.Facet/Range/LongRangeFacetCounts.cs
index 60451c4..e3a17e7 100644
--- a/src/Lucene.Net.Facet/Range/LongRangeFacetCounts.cs
+++ b/src/Lucene.Net.Facet/Range/LongRangeFacetCounts.cs
@@ -29,13 +29,13 @@ namespace Lucene.Net.Facet.Range
     using ValueSource = Lucene.Net.Queries.Function.ValueSource;
 
     /// <summary>
-    /// <seealso cref="Facets"/> implementation that computes counts for
-    ///  dynamic long ranges from a provided <seealso cref="ValueSource"/>,
-    ///  using <seealso cref="FunctionValues#longVal"/>.  Use
-    ///  this for dimensions that change in real-time (e.g. a
-    ///  relative time based dimension like "Past day", "Past 2
-    ///  days", etc.) or that change for each request (e.g. 
-    ///  distance from the user's location, "< 1 km", "< 2 km",
+    /// <see cref="Facets"/> implementation that computes counts for
+    /// dynamic long ranges from a provided <see cref="ValueSource"/>,
+    /// using <see cref="FunctionValues.LongVal"/>.  Use
+    /// this for dimensions that change in real-time (e.g. a
+    /// relative time based dimension like "Past day", "Past 2
+    /// days", etc.) or that change for each request (e.g. 
+    /// distance from the user's location, "&lt; 1 km", "&lt; 2 km",
     ///  etc.).
     /// 
     ///  @lucene.experimental 
@@ -44,8 +44,8 @@ namespace Lucene.Net.Facet.Range
     {
 
         /// <summary>
-        /// Create {@code LongRangeFacetCounts}, using {@link
-        ///  LongFieldSource} from the specified field. 
+        /// Create <see cref="LongRangeFacetCounts"/>, using
+        /// <see cref="LongFieldSource"/> from the specified field. 
         /// </summary>
         public LongRangeFacetCounts(string field, FacetsCollector hits, params LongRange[] ranges)
             : this(field, new LongFieldSource(field), hits, ranges)
@@ -53,8 +53,8 @@ namespace Lucene.Net.Facet.Range
         }
 
         /// <summary>
-        /// Create {@code RangeFacetCounts}, using the provided
-        ///  <seealso cref="ValueSource"/>. 
+        /// Create <see cref="RangeFacetCounts"/>, using the provided
+        /// <see cref="ValueSource"/>. 
         /// </summary>
         public LongRangeFacetCounts(string field, ValueSource valueSource, FacetsCollector hits, params LongRange[] ranges)
             : this(field, valueSource, hits, null, ranges)
@@ -62,11 +62,11 @@ namespace Lucene.Net.Facet.Range
         }
 
         /// <summary>
-        /// Create {@code RangeFacetCounts}, using the provided
-        ///  <seealso cref="ValueSource"/>, and using the provided Filter as
-        ///  a fastmatch: only documents passing the filter are
-        ///  checked for the matching ranges.  The filter must be
-        ///  random access (implement <seealso cref="DocIdSet#bits"/>). 
+        /// Create <see cref="RangeFacetCounts"/>, using the provided
+        /// <see cref="ValueSource"/>, and using the provided Filter as
+        /// a fastmatch: only documents passing the filter are
+        /// checked for the matching ranges.  The filter must be
+        /// random access (implement <see cref="DocIdSet.GetBits"/>). 
         /// </summary>
         public LongRangeFacetCounts(string field, ValueSource valueSource, 
             FacetsCollector hits, Filter fastMatchFilter, params LongRange[] ranges)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Range/Range.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Range/Range.cs b/src/Lucene.Net.Facet/Range/Range.cs
index 32ea724..ca2e2f4 100644
--- a/src/Lucene.Net.Facet/Range/Range.cs
+++ b/src/Lucene.Net.Facet/Range/Range.cs
@@ -44,30 +44,30 @@
         }
 
         /// <summary>
-        /// Returns a new <seealso cref="Filter"/> accepting only documents
-        ///  in this range.  This filter is not general-purpose;
-        ///  you should either use it with <seealso cref="DrillSideways"/> by
-        ///  adding it to <seealso cref="DrillDownQuery#add"/>, or pass it to
-        ///  <seealso cref="FilteredQuery"/> using its {@link
-        ///  FilteredQuery#QUERY_FIRST_FILTER_STRATEGY}.  If the
-        ///  <seealso cref="ValueSource"/> is static, e.g. an indexed numeric
-        ///  field, then it may be more efficient to use {@link
-        ///  NumericRangeFilter}.  The provided fastMatchFilter,
-        ///  if non-null, will first be consulted, and only if
-        ///  that is set for each document will the range then be
-        ///  checked. 
+        /// Returns a new <see cref="Filter"/> accepting only documents
+        /// in this range.  This filter is not general-purpose;
+        /// you should either use it with <see cref="DrillSideways"/> by
+        /// adding it to <see cref="DrillDownQuery.Add"/>, or pass it to
+        /// <see cref="Search.FilteredQuery"/> using its 
+        /// <see cref="Search.FilteredQuery.QUERY_FIRST_FILTER_STRATEGY"/>.
+        /// If the <see cref="ValueSource"/> is static, e.g. an indexed numeric
+        /// field, then it may be more efficient to use 
+        /// <see cref="Search.NumericRangeFilter"/>.  The provided <paramref name="fastMatchFilter"/>,
+        /// if non-null, will first be consulted, and only if
+        /// that is set for each document will the range then be
+        /// checked. 
         /// </summary>
         public abstract Filter GetFilter(Filter fastMatchFilter, ValueSource valueSource);
 
         /// <summary>
-        /// Returns a new <seealso cref="Filter"/> accepting only documents
+        /// Returns a new <see cref="Filter"/> accepting only documents
         ///  in this range.  This filter is not general-purpose;
-        ///  you should either use it with <seealso cref="DrillSideways"/> by
-        ///  adding it to <seealso cref="DrillDownQuery#add"/>, or pass it to
-        ///  <seealso cref="FilteredQuery"/> using its {@link
-        ///  FilteredQuery#QUERY_FIRST_FILTER_STRATEGY}.  If the
-        ///  <seealso cref="ValueSource"/> is static, e.g. an indexed numeric
-        ///  field, then it may be more efficient to use <seealso cref="NumericRangeFilter"/>. 
+        ///  you should either use it with <see cref="DrillSideways"/> by
+        ///  adding it to <see cref="DrillDownQuery.Add"/>, or pass it to
+        ///  <see cref="Search.FilteredQuery"/> using its 
+        ///  <see cref="Search.FilteredQuery.QUERY_FIRST_FILTER_STRATEGY"/>.  If the
+        ///  <see cref="ValueSource"/> is static, e.g. an indexed numeric
+        ///  field, then it may be more efficient to use <see cref="Search.NumericRangeFilter"/>. 
         /// </summary>
         public virtual Filter GetFilter(ValueSource valueSource)
         {
@@ -75,7 +75,8 @@
         }
 
         /// <summary>
-        /// Invoke this for a useless range. </summary>
+        /// Invoke this for a useless range.
+        /// </summary>
         protected internal virtual void FailNoMatch()
         {
             throw new System.ArgumentException("range \"" + Label + "\" matches nothing");

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Range/RangeFacetCounts.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Range/RangeFacetCounts.cs b/src/Lucene.Net.Facet/Range/RangeFacetCounts.cs
index 943f4e1..2647238 100644
--- a/src/Lucene.Net.Facet/Range/RangeFacetCounts.cs
+++ b/src/Lucene.Net.Facet/Range/RangeFacetCounts.cs
@@ -38,9 +38,9 @@ namespace Lucene.Net.Facet.Range
 
         /// <summary>
         /// Optional: if specified, we first test this Filter to
-        ///  see whether the document should be checked for
-        ///  matching ranges.  If this is null, all documents are
-        ///  checked. 
+        /// see whether the document should be checked for
+        /// matching ranges.  If this is null, all documents are
+        /// checked. 
         /// </summary>
         protected internal readonly Filter fastMatchFilter;
 
@@ -53,7 +53,7 @@ namespace Lucene.Net.Facet.Range
         protected internal int totCount;
 
         /// <summary>
-        /// Create {@code RangeFacetCounts} </summary>
+        /// Create <see cref="RangeFacetCounts"/> </summary>
         protected internal RangeFacetCounts(string field, Range[] ranges, Filter fastMatchFilter)
         {
             this.field = field;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/SortedSet/DefaultSortedSetDocValuesReaderState.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/SortedSet/DefaultSortedSetDocValuesReaderState.cs b/src/Lucene.Net.Facet/SortedSet/DefaultSortedSetDocValuesReaderState.cs
index 9ecca3f..efbcbd0 100644
--- a/src/Lucene.Net.Facet/SortedSet/DefaultSortedSetDocValuesReaderState.cs
+++ b/src/Lucene.Net.Facet/SortedSet/DefaultSortedSetDocValuesReaderState.cs
@@ -23,7 +23,7 @@ namespace Lucene.Net.Facet.SortedSet
 	 */
 
     /// <summary>
-    /// Default implementation of <seealso cref="SortedSetDocValuesFacetCounts"/>
+    /// Default implementation of <see cref="SortedSetDocValuesFacetCounts"/>
     /// </summary>
     public class DefaultSortedSetDocValuesReaderState : SortedSetDocValuesReaderState
     {
@@ -32,14 +32,14 @@ namespace Lucene.Net.Facet.SortedSet
         private readonly int valueCount;
 
         /// <summary>
-        /// <seealso cref="IndexReader"/> passed to the constructor. </summary>
+        /// <see cref="IndexReader"/> passed to the constructor. </summary>
         private readonly IndexReader origReader;
 
         private readonly IDictionary<string, OrdRange> prefixToOrdRange = new Dictionary<string, OrdRange>();
 
         /// <summary>
         /// Creates this, pulling doc values from the specified
-        ///  field. 
+        /// field. 
         /// </summary>
         public DefaultSortedSetDocValuesReaderState(IndexReader reader, string field = FacetsConfig.DEFAULT_INDEX_FIELD_NAME)
         {
@@ -97,7 +97,8 @@ namespace Lucene.Net.Facet.SortedSet
         }
 
         /// <summary>
-        /// Return top-level doc values. </summary>
+        /// Return top-level doc values.
+        /// </summary>
         public override SortedSetDocValues DocValues
         {
             get
@@ -107,7 +108,8 @@ namespace Lucene.Net.Facet.SortedSet
         }
 
         /// <summary>
-        /// Returns mapping from prefix to <seealso cref="SortedSetDocValuesReaderState.OrdRange"/>. </summary>
+        /// Returns mapping from prefix to <see cref="SortedSetDocValuesReaderState.OrdRange"/>.
+        /// </summary>
         public override IDictionary<string, OrdRange> PrefixToOrdRange
         {
             get
@@ -117,14 +119,16 @@ namespace Lucene.Net.Facet.SortedSet
         }
 
         /// <summary>
-        /// Returns the <seealso cref="SortedSetDocValuesReaderState.OrdRange"/> for this dimension. </summary>
+        /// Returns the <see cref="SortedSetDocValuesReaderState.OrdRange"/> for this dimension.
+        /// </summary>
         public override OrdRange GetOrdRange(string dim)
         {
             return prefixToOrdRange[dim];
         }
 
         /// <summary>
-        /// Indexed field we are reading. </summary>
+        /// Indexed field we are reading.
+        /// </summary>
         public override string Field
         {
             get
@@ -142,7 +146,8 @@ namespace Lucene.Net.Facet.SortedSet
         }
 
         /// <summary>
-        /// Number of unique labels. </summary>
+        /// Number of unique labels.
+        /// </summary>
         public override int Count
         {
             get

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetCounts.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetCounts.cs b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetCounts.cs
index e552d83..dc5dba3 100644
--- a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetCounts.cs
+++ b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetCounts.cs
@@ -32,18 +32,18 @@ namespace Lucene.Net.Facet.SortedSet
 
     /// <summary>
     /// Compute facets counts from previously
-    ///  indexed <seealso cref="SortedSetDocValuesFacetField"/>,
-    ///  without require a separate taxonomy index.  Faceting is
-    ///  a bit slower (~25%), and there is added cost on every
-    ///  <seealso cref="IndexReader"/> open to create a new {@link
-    ///  SortedSetDocValuesReaderState}.  Furthermore, this does
-    ///  not support hierarchical facets; only flat (dimension +
-    ///  label) facets, but it uses quite a bit less RAM to do
-    ///  so.
+    /// indexed <see cref="SortedSetDocValuesFacetField"/>,
+    /// without require a separate taxonomy index.  Faceting is
+    /// a bit slower (~25%), and there is added cost on every
+    /// <see cref="IndexReader"/> open to create a new 
+    /// <see cref="SortedSetDocValuesReaderState"/>.  Furthermore, this does
+    /// not support hierarchical facets; only flat (dimension +
+    /// label) facets, but it uses quite a bit less RAM to do
+    /// so.
     /// 
-    ///  <para><b>NOTE</b>: this class should be instantiated and
-    ///  then used from a single thread, because it holds a
-    ///  thread-private instance of <seealso cref="SortedSetDocValues"/>.
+    /// <para><b>NOTE</b>: this class should be instantiated and
+    /// then used from a single thread, because it holds a
+    /// thread-private instance of <see cref="SortedSetDocValues"/>.
     /// 
     /// </para>
     /// <para><b>NOTE:</b>: tie-break is by unicode sort order
@@ -60,7 +60,7 @@ namespace Lucene.Net.Facet.SortedSet
 
         /// <summary>
         /// Sparse faceting: returns any dimension that had any
-        ///  hits, topCount labels per dimension. 
+        /// hits, topCount labels per dimension. 
         /// </summary>
         public SortedSetDocValuesFacetCounts(SortedSetDocValuesReaderState state, FacetsCollector hits)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetField.cs b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetField.cs
index ba1f360..3714679 100644
--- a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetField.cs
+++ b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesFacetField.cs
@@ -21,13 +21,13 @@
     using FieldType = Lucene.Net.Documents.FieldType;
 
     /// <summary>
-    /// Add an instance of this to your Document for every facet
-    ///  label to be indexed via SortedSetDocValues. 
+    /// Add an instance of this to your <see cref="Documents.Document"/> for every facet
+    /// label to be indexed via <see cref="Index.SortedSetDocValues"/>. 
     /// </summary>
     public class SortedSetDocValuesFacetField : Field
     {
         /// <summary>
-        /// Indexed <seealso cref="FieldType"/>. </summary>
+        /// Indexed <see cref="FieldType"/>. </summary>
         public static readonly FieldType TYPE = new FieldType();
         static SortedSetDocValuesFacetField()
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesReaderState.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesReaderState.cs b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesReaderState.cs
index 636d434..1584e4a 100644
--- a/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesReaderState.cs
+++ b/src/Lucene.Net.Facet/SortedSet/SortedSetDocValuesReaderState.cs
@@ -23,29 +23,29 @@ namespace Lucene.Net.Facet.SortedSet
     using SortedSetDocValues = Lucene.Net.Index.SortedSetDocValues;
 
     /// <summary>
-    /// Wraps a <seealso cref="IndexReader"/> and resolves ords
-    ///  using existing <seealso cref="SortedSetDocValues"/> APIs without a
-    ///  separate taxonomy index.  This only supports flat facets
-    ///  (dimension + label), and it makes faceting a bit
-    ///  slower, adds some cost at reopen time, but avoids
-    ///  managing the separate taxonomy index.  It also requires
-    ///  less RAM than the taxonomy index, as it manages the flat
-    ///  (2-level) hierarchy more efficiently.  In addition, the
-    ///  tie-break during faceting is now meaningful (in label
-    ///  sorted order).
+    /// Wraps a <see cref="IndexReader"/> and resolves ords
+    /// using existing <see cref="SortedSetDocValues"/> APIs without a
+    /// separate taxonomy index.  This only supports flat facets
+    /// (dimension + label), and it makes faceting a bit
+    /// slower, adds some cost at reopen time, but avoids
+    /// managing the separate taxonomy index.  It also requires
+    /// less RAM than the taxonomy index, as it manages the flat
+    /// (2-level) hierarchy more efficiently.  In addition, the
+    /// tie-break during faceting is now meaningful (in label
+    /// sorted order).
     /// 
-    ///  <para><b>NOTE</b>: creating an instance of this class is
-    ///  somewhat costly, as it computes per-segment ordinal maps,
-    ///  so you should create it once and re-use that one instance
-    ///  for a given <seealso cref="IndexReader"/>. 
+    /// <para><b>NOTE</b>: creating an instance of this class is
+    /// somewhat costly, as it computes per-segment ordinal maps,
+    /// so you should create it once and re-use that one instance
+    /// for a given <see cref="IndexReader"/>. 
     /// </para>
     /// </summary>
     public abstract class SortedSetDocValuesReaderState
     {
         /// <summary>
         /// Holds start/end range of ords, which maps to one
-        ///  dimension (someday we may generalize it to map to
-        ///  hierarchies within one dimension). 
+        /// dimension (someday we may generalize it to map to
+        /// hierarchies within one dimension). 
         /// </summary>
         public sealed class OrdRange
         {
@@ -80,11 +80,11 @@ namespace Lucene.Net.Facet.SortedSet
         public abstract string Field { get; }
 
         /// <summary>
-        /// Returns the <seealso cref="OrdRange"/> for this dimension. </summary>
+        /// Returns the <see cref="OrdRange"/> for this dimension. </summary>
         public abstract OrdRange GetOrdRange(string dim);
 
         /// <summary>
-        /// Returns mapping from prefix to <seealso cref="OrdRange"/>. </summary>
+        /// Returns mapping from prefix to <see cref="OrdRange"/>. </summary>
         public abstract IDictionary<string, OrdRange> PrefixToOrdRange { get; }
 
         /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Taxonomy/AssociationFacetField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Taxonomy/AssociationFacetField.cs b/src/Lucene.Net.Facet/Taxonomy/AssociationFacetField.cs
index f2e70a7..c9fd7af 100644
--- a/src/Lucene.Net.Facet/Taxonomy/AssociationFacetField.cs
+++ b/src/Lucene.Net.Facet/Taxonomy/AssociationFacetField.cs
@@ -25,20 +25,20 @@ namespace Lucene.Net.Facet.Taxonomy
     using FieldType = Lucene.Net.Documents.FieldType;
 
     /// <summary>
-    /// Add an instance of this to your <seealso cref="Document"/> to add
-    ///  a facet label associated with an arbitrary byte[].
-    ///  This will require a custom <seealso cref="Facets"/>
-    ///  implementation at search time; see {@link
-    ///  IntAssociationFacetField} and {@link
-    ///  FloatAssociationFacetField} to use existing {@link
-    ///  Facets} implementations.
+    /// Add an instance of this to your <see cref="Document"/> to add
+    /// a facet label associated with an arbitrary <see cref="byte[]"/>.
+    /// This will require a custom <see cref="Facets"/>
+    /// implementation at search time; see <see cref="IntAssociationFacetField"/> 
+    /// and <see cref="FloatAssociationFacetField"/> to use existing 
+    /// <see cref="Facets"/> implementations.
     /// 
     ///  @lucene.experimental 
     /// </summary>
     public class AssociationFacetField : Field
     {
         /// <summary>
-        /// Indexed <seealso cref="FieldType"/>. </summary>
+        /// Indexed <see cref="FieldType"/>.
+        /// </summary>
         public static readonly FieldType TYPE = new FieldType();
         static AssociationFacetField()
         {
@@ -47,20 +47,23 @@ namespace Lucene.Net.Facet.Taxonomy
         }
 
         /// <summary>
-        /// Dimension for this field. </summary>
+        /// Dimension for this field.
+        /// </summary>
         public string Dim { get; private set; }
 
         /// <summary>
-        /// Facet path for this field. </summary>
+        /// Facet path for this field.
+        /// </summary>
         public string[] Path { get; private set; }
 
         /// <summary>
-        /// Associated value. </summary>
+        /// Associated value.
+        /// </summary>
         public BytesRef Assoc { get; private set; }
 
         /// <summary>
-        /// Creates this from {@code dim} and {@code path} and an
-        ///  association 
+        /// Creates this from <paramref name="dim"/> and <paramref name="path"/> and an
+        /// association 
         /// </summary>
         public AssociationFacetField(BytesRef assoc, string dim, params string[] path)
             : base("dummy", TYPE)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/44958102/src/Lucene.Net.Facet/Taxonomy/CachedOrdinalsReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Facet/Taxonomy/CachedOrdinalsReader.cs b/src/Lucene.Net.Facet/Taxonomy/CachedOrdinalsReader.cs
index 62ee95f..6cb16de 100644
--- a/src/Lucene.Net.Facet/Taxonomy/CachedOrdinalsReader.cs
+++ b/src/Lucene.Net.Facet/Taxonomy/CachedOrdinalsReader.cs
@@ -32,13 +32,13 @@ namespace Lucene.Net.Facet.Taxonomy
 
     /// <summary>
     /// A per-segment cache of documents' facet ordinals. Every
-    /// <seealso cref="CachedOrds"/> holds the ordinals in a raw {@code
-    /// int[]}, and therefore consumes as much RAM as the total
+    /// <see cref="CachedOrds"/> holds the ordinals in a raw <see cref="int[]"/>, 
+    /// and therefore consumes as much RAM as the total
     /// number of ordinals found in the segment, but saves the
     /// CPU cost of decoding ordinals during facet counting.
     /// 
     /// <para>
-    /// <b>NOTE:</b> every <seealso cref="CachedOrds"/> is limited to 2.1B
+    /// <b>NOTE:</b> every <see cref="CachedOrds"/> is limited to 2.1B
     /// total ordinals. If that is a limitation for you then
     /// consider limiting the segment size to fewer documents, or
     /// use an alternative cache which pages through the category
@@ -47,7 +47,7 @@ namespace Lucene.Net.Facet.Taxonomy
     /// </para>
     /// <para>
     /// <b>NOTE:</b> when using this cache, it is advised to use
-    /// a <seealso cref="DocValuesFormat"/> that does not cache the data in
+    /// a <see cref="DocValuesFormat"/> that does not cache the data in
     /// memory, at least for the category lists fields, or
     /// otherwise you'll be doing double-caching.
     /// 
@@ -122,20 +122,23 @@ namespace Lucene.Net.Facet.Taxonomy
         }
 
         /// <summary>
-        /// Holds the cached ordinals in two parallel {@code int[]} arrays. </summary>
+        /// Holds the cached ordinals in two parallel <see cref="int[]"/> arrays.
+        /// </summary>
         public sealed class CachedOrds : Accountable
         {
             /// <summary>
-            /// Index into <seealso cref="#ordinals"/> for each document. </summary>
+            /// Index into <see cref="Ordinals"/> for each document.
+            /// </summary>
             public int[] Offsets { get; private set; }
 
             /// <summary>
-            /// Holds ords for all docs. </summary>
+            /// Holds ords for all docs.
+            /// </summary>
             public int[] Ordinals { get; private set; }
 
             /// <summary>
-            /// Creates a new <seealso cref="CachedOrds"/> from the <seealso cref="BinaryDocValues"/>.
-            /// Assumes that the <seealso cref="BinaryDocValues"/> is not {@code null}.
+            /// Creates a new <see cref="CachedOrds"/> from the <see cref="BinaryDocValues"/>.
+            /// Assumes that the <see cref="BinaryDocValues"/> is not <c>null</c>.
             /// </summary>
             public CachedOrds(OrdinalsSegmentReader source, int maxDoc)
             {


Mime
View raw message