You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by sy...@apache.org on 2014/09/10 03:48:02 UTC

[1/7] git commit: Some progress

Repository: lucenenet
Updated Branches:
  refs/heads/master 80101605c -> fd0a0811f


Some progress


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

Branch: refs/heads/master
Commit: 78e4bb78492f90e387cb86ec89826ae2bb2295f9
Parents: 8010160
Author: Itamar Syn-Hershko <it...@code972.com>
Authored: Wed Sep 10 04:40:05 2014 +0300
Committer: Itamar Syn-Hershko <it...@code972.com>
Committed: Wed Sep 10 04:40:05 2014 +0300

----------------------------------------------------------------------
 src/Lucene.Net.Core/Util/OfflineSorter.cs | 1382 ++++++++++++------------
 1 file changed, 679 insertions(+), 703 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/78e4bb78/src/Lucene.Net.Core/Util/OfflineSorter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/OfflineSorter.cs b/src/Lucene.Net.Core/Util/OfflineSorter.cs
index c3242b9..aefb07c 100644
--- a/src/Lucene.Net.Core/Util/OfflineSorter.cs
+++ b/src/Lucene.Net.Core/Util/OfflineSorter.cs
@@ -1,703 +1,679 @@
-namespace Lucene.Net.Util
-{
-    /*
-     * Licensed to the Apache Software Foundation (ASF) under one or more
-     * contributor license agreements.  See the NOTICE file distributed with
-     * this work for additional information regarding copyright ownership.
-     * The ASF licenses this file to You under the Apache License, Version 2.0
-     * (the "License"); you may not use this file except in compliance with
-     * the License.  You may obtain a copy of the License at
-     *
-     *     http://www.apache.org/licenses/LICENSE-2.0
-     *
-     * Unless required by applicable law or agreed to in writing, software
-     * distributed under the License is distributed on an "AS IS" BASIS,
-     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     * See the License for the specific language governing permissions and
-     * limitations under the License.
-     */
-
-    /// <summary>
-    /// On-disk sorting of byte arrays. Each byte array (entry) is a composed of the following
-    /// fields:
-    /// <ul>
-    ///   <li>(two bytes) length of the following byte array,
-    ///   <li>exactly the above count of bytes for the sequence to be sorted.
-    /// </ul>
-    /// </summary>
-    /// <seealso cref= #sort(File, File)
-    /// @lucene.experimental
-    /// @lucene.internal </seealso>
-
-    //LUCENE PORT NOTE: Marked as experimental and does not port well so it was left out
-    /*public sealed class OfflineSorter
-    {
-        private bool InstanceFieldsInitialized = false;
-
-        private void InitializeInstanceFields()
-        {
-            Buffer = new BytesRefArray(BufferBytesUsed);
-        }
-
-        /// <summary>
-        /// Convenience constant for megabytes </summary>
-        public const long MB = 1024 * 1024;
-        /// <summary>
-        /// Convenience constant for gigabytes </summary>
-        public static readonly long GB = MB * 1024;
-
-        /// <summary>
-        /// Minimum recommended buffer size for sorting.
-        /// </summary>
-        public const long MIN_BUFFER_SIZE_MB = 32;
-
-        /// <summary>
-        /// Absolute minimum required buffer size for sorting.
-        /// </summary>
-        public static readonly long ABSOLUTE_MIN_SORT_BUFFER_SIZE = MB / 2;
-        private const string MIN_BUFFER_SIZE_MSG = "At least 0.5MB RAM buffer is needed";
-
-        /// <summary>
-        /// Maximum number of temporary files before doing an intermediate merge.
-        /// </summary>
-        public const int MAX_TEMPFILES = 128;
-
-        /// <summary>
-        /// A bit more descriptive unit for constructors.
-        /// </summary>
-        /// <seealso cref= #automatic() </seealso>
-        /// <seealso cref= #megabytes(long) </seealso>
-        public sealed class BufferSize
-        {
-            internal readonly int Bytes;
-
-            internal BufferSize(long bytes)
-            {
-                if (bytes > int.MaxValue)
-                {
-                    throw new System.ArgumentException("Buffer too large for Java (" + (int.MaxValue / MB) + "mb max): " + bytes);
-                }
-
-                if (bytes < ABSOLUTE_MIN_SORT_BUFFER_SIZE)
-                {
-                    throw new System.ArgumentException(MIN_BUFFER_SIZE_MSG + ": " + bytes);
-                }
-
-                this.Bytes = (int)bytes;
-            }
-
-            /// <summary>
-            /// Creates a <seealso cref="BufferSize"/> in MB. The given
-            /// values must be &gt; 0 and &lt; 2048.
-            /// </summary>
-            public static BufferSize Megabytes(long mb)
-            {
-                return new BufferSize(mb * MB);
-            }
-
-            /// <summary>
-            /// Approximately half of the currently available free heap, but no less
-            /// than <seealso cref="#ABSOLUTE_MIN_SORT_BUFFER_SIZE"/>. However if current heap allocation
-            /// is insufficient or if there is a large portion of unallocated heap-space available
-            /// for sorting consult with max allowed heap size.
-            /// </summary>
-            public static BufferSize Automatic()
-            {
-                Runtime rt = Runtime.Runtime;
-
-                // take sizes in "conservative" order
-                long max = rt.maxMemory(); // max allocated
-                long total = rt.totalMemory(); // currently allocated
-                long free = rt.freeMemory(); // unused portion of currently allocated
-                long totalAvailableBytes = max - total + free;
-
-                // by free mem (attempting to not grow the heap for this)
-                long sortBufferByteSize = free / 2;
-                long minBufferSizeBytes = MIN_BUFFER_SIZE_MB * MB;
-                if (sortBufferByteSize < minBufferSizeBytes || totalAvailableBytes > 10 * minBufferSizeBytes) // lets see if we need/should to grow the heap
-                {
-                    if (totalAvailableBytes / 2 > minBufferSizeBytes) // there is enough mem for a reasonable buffer
-                    {
-                        sortBufferByteSize = totalAvailableBytes / 2; // grow the heap
-                    }
-                    else
-                    {
-                        //heap seems smallish lets be conservative fall back to the free/2
-                        sortBufferByteSize = Math.Max(ABSOLUTE_MIN_SORT_BUFFER_SIZE, sortBufferByteSize);
-                    }
-                }
-                return new BufferSize(Math.Min((long)int.MaxValue, sortBufferByteSize));
-            }
-        }
-
-        /// <summary>
-        /// Sort info (debugging mostly).
-        /// </summary>
-        public class SortInfo
-        {
-            internal bool InstanceFieldsInitialized = false;
-
-            internal virtual void InitializeInstanceFields()
-            {
-                BufferSize = OuterInstance.RamBufferSize.Bytes;
-            }
-
-            private readonly OfflineSorter OuterInstance;
-
-            /// <summary>
-            /// number of temporary files created when merging partitions </summary>
-            public int TempMergeFiles;
-            /// <summary>
-            /// number of partition merges </summary>
-            public int MergeRounds;
-            /// <summary>
-            /// number of lines of data read </summary>
-            public int Lines;
-            /// <summary>
-            /// time spent merging sorted partitions (in milliseconds) </summary>
-            public long MergeTime;
-            /// <summary>
-            /// time spent sorting data (in milliseconds) </summary>
-            public long SortTime;
-            /// <summary>
-            /// total time spent (in milliseconds) </summary>
-            public long TotalTime;
-            /// <summary>
-            /// time spent in i/o read (in milliseconds) </summary>
-            public long ReadTime;
-            /// <summary>
-            /// read buffer size (in bytes) </summary>
-            public long BufferSize;
-
-            /// <summary>
-            /// create a new SortInfo (with empty statistics) for debugging </summary>
-            public SortInfo(OfflineSorter outerInstance)
-            {
-                this.OuterInstance = outerInstance;
-
-                if (!InstanceFieldsInitialized)
-                {
-                    InitializeInstanceFields();
-                    InstanceFieldsInitialized = true;
-                }
-            }
-
-            public override string ToString()
-            {
-                return string.Format(Locale.ROOT, "time=%.2f sec. total (%.2f reading, %.2f sorting, %.2f merging), lines=%d, temp files=%d, merges=%d, soft ram limit=%.2f MB", TotalTime / 1000.0d, ReadTime / 1000.0d, SortTime / 1000.0d, MergeTime / 1000.0d, Lines, TempMergeFiles, MergeRounds, (double)BufferSize / MB);
-            }
-        }
-
-        private readonly BufferSize RamBufferSize;
-        private readonly DirectoryInfo TempDirectory;
-
-        private readonly Counter BufferBytesUsed = Counter.NewCounter();
-        private BytesRefArray Buffer;
-        private SortInfo sortInfo;
-        private int MaxTempFiles;
-        private readonly IComparer<BytesRef> comparator;
-
-        /// <summary>
-        /// Default comparator: sorts in binary (codepoint) order </summary>
-        public static readonly IComparer<BytesRef> DEFAULT_COMPARATOR = BytesRef.UTF8SortedAsUnicodeComparator;
-
-        /// <summary>
-        /// Defaults constructor.
-        /// </summary>
-        /// <seealso cref= #defaultTempDir() </seealso>
-        /// <seealso cref= BufferSize#automatic() </seealso>
-        public OfflineSorter()
-            : this(DEFAULT_COMPARATOR, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
-        {
-            if (!InstanceFieldsInitialized)
-            {
-                InitializeInstanceFields();
-                InstanceFieldsInitialized = true;
-            }
-        }
-
-        /// <summary>
-        /// Defaults constructor with a custom comparator.
-        /// </summary>
-        /// <seealso cref= #defaultTempDir() </seealso>
-        /// <seealso cref= BufferSize#automatic() </seealso>
-        public OfflineSorter(IComparer<BytesRef> comparator)
-            : this(comparator, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
-        {
-            if (!InstanceFieldsInitialized)
-            {
-                InitializeInstanceFields();
-                InstanceFieldsInitialized = true;
-            }
-        }
-
-        /// <summary>
-        /// All-details constructor.
-        /// </summary>
-        public OfflineSorter(IComparer<BytesRef> comparator, BufferSize ramBufferSize, DirectoryInfo tempDirectory, int maxTempfiles)
-        {
-            if (!InstanceFieldsInitialized)
-            {
-                InitializeInstanceFields();
-                InstanceFieldsInitialized = true;
-            }
-            if (ramBufferSize.Bytes < ABSOLUTE_MIN_SORT_BUFFER_SIZE)
-            {
-                throw new System.ArgumentException(MIN_BUFFER_SIZE_MSG + ": " + ramBufferSize.Bytes);
-            }
-
-            if (maxTempfiles < 2)
-            {
-                throw new System.ArgumentException("maxTempFiles must be >= 2");
-            }
-
-            this.RamBufferSize = ramBufferSize;
-            this.TempDirectory = tempDirectory;
-            this.MaxTempFiles = maxTempfiles;
-            this.comparator = comparator;
-        }
-
-        /// <summary>
-        /// Sort input to output, explicit hint for the buffer size. The amount of allocated
-        /// memory may deviate from the hint (may be smaller or larger).
-        /// </summary>
-        public SortInfo Sort(FileInfo input, FileInfo output)
-        {
-            sortInfo = new SortInfo(this);
-            sortInfo.TotalTime = DateTime.Now.Millisecond;
-
-            output.Delete();
-
-            List<FileInfo> merges = new List<FileInfo>();
-            bool success2 = false;
-            try
-            {
-                ByteSequencesReader @is = new ByteSequencesReader(input);
-                bool success = false;
-                try
-                {
-                    int lines = 0;
-                    while ((lines = ReadPartition(@is)) > 0)
-                    {
-                        merges.Add(SortPartition(lines));
-                        sortInfo.TempMergeFiles++;
-                        sortInfo.Lines += lines;
-
-                        // Handle intermediate merges.
-                        if (merges.Count == MaxTempFiles)
-                        {
-                            FileInfo intermediate = FileInfo.createTempFile("sort", "intermediate", TempDirectory);
-                            try
-                            {
-                                MergePartitions(merges, intermediate);
-                            }
-                            finally
-                            {
-                                foreach (FileInfo file in merges)
-                                {
-                                    file.Delete();
-                                }
-                                merges.Clear();
-                                merges.Add(intermediate);
-                            }
-                            sortInfo.TempMergeFiles++;
-                        }
-                    }
-                    success = true;
-                }
-                finally
-                {
-                    if (success)
-                    {
-                        IOUtils.Close(@is);
-                    }
-                    else
-                    {
-                        IOUtils.CloseWhileHandlingException(@is);
-                    }
-                }
-
-                // One partition, try to rename or copy if unsuccessful.
-                if (merges.Count == 1)
-                {
-                    FileInfo single = merges[0];
-                    // If simple rename doesn't work this means the output is
-                    // on a different volume or something. Copy the input then.
-                    if (!single.RenameTo(output))
-                    {
-                        Copy(single, output);
-                    }
-                }
-                else
-                {
-                    // otherwise merge the partitions with a priority queue.
-                    MergePartitions(merges, output);
-                }
-                success2 = true;
-            }
-            finally
-            {
-                foreach (FileInfo file in merges)
-                {
-                    file.Delete();
-                }
-                if (!success2)
-                {
-                    output.Delete();
-                }
-            }
-
-            sortInfo.TotalTime = (DateTime.Now.Millisecond - sortInfo.TotalTime);
-            return sortInfo;
-        }
-
-        /// <summary>
-        /// Returns the default temporary directory. By default, java.io.tmpdir. If not accessible
-        /// or not available, an IOException is thrown
-        /// </summary>
-        public static DirectoryInfo DefaultTempDir()
-        {
-            string tempDirPath = System.getProperty("java.io.tmpdir");
-            if (tempDirPath == null)
-            {
-                throw new System.IO.IOException("Java has no temporary folder property (java.io.tmpdir)?");
-            }
-
-            DirectoryInfo tempDirectory = new DirectoryInfo(tempDirPath);
-            if (!tempDirectory.Exists || !tempDirectory.CanWrite())
-            {
-                throw new System.IO.IOException("Java's temporary folder not present or writeable?: " + tempDirectory.AbsolutePath);
-            }
-            return tempDirectory;
-        }
-
-        /// <summary>
-        /// Copies one file to another.
-        /// </summary>
-        private static void Copy(FileInfo file, FileInfo output)
-        {
-            // 64kb copy buffer (empirical pick).
-            sbyte[] buffer = new sbyte[16 * 1024];
-            InputStream @is = null;
-            OutputStream os = null;
-            try
-            {
-                @is = new FileInputStream(file);
-                os = new FileOutputStream(output);
-                int length;
-                while ((length = @is.read(buffer)) > 0)
-                {
-                    os.write(buffer, 0, length);
-                }
-            }
-            finally
-            {
-                IOUtils.close(@is, os);
-            }
-        }
-
-        /// <summary>
-        /// Sort a single partition in-memory. </summary>
-        protected internal FileInfo SortPartition(int len)
-        {
-            BytesRefArray data = this.Buffer;
-            FileInfo tempFile = FileInfo.createTempFile("sort", "partition", TempDirectory);
-
-            long start = DateTime.Now.Millisecond;
-            sortInfo.SortTime += (DateTime.Now.Millisecond - start);
-
-            ByteSequencesWriter @out = new ByteSequencesWriter(tempFile);
-            BytesRef spare;
-            try
-            {
-                BytesRefIterator iter = Buffer.Iterator(comparator);
-                while ((spare = iter.Next()) != null)
-                {
-                    Debug.Assert(spare.Length <= short.MaxValue);
-                    @out.Write(spare);
-                }
-
-                @out.Dispose();
-
-                // Clean up the buffer for the next partition.
-                data.Clear();
-                return tempFile;
-            }
-            finally
-            {
-                IOUtils.Close(@out);
-            }
-        }
-
-        /// <summary>
-        /// Merge a list of sorted temporary files (partitions) into an output file </summary>
-        internal void MergePartitions(IList<FileInfo> merges, FileInfo outputFile)
-        {
-            long start = DateTime.Now.Millisecond;
-
-            ByteSequencesWriter @out = new ByteSequencesWriter(outputFile);
-
-            PriorityQueue<FileAndTop> queue = new PriorityQueueAnonymousInnerClassHelper(this, merges.Count);
-
-            ByteSequencesReader[] streams = new ByteSequencesReader[merges.Count];
-            try
-            {
-                // Open streams and read the top for each file
-                for (int i = 0; i < merges.Count; i++)
-                {
-                    streams[i] = new ByteSequencesReader(merges[i]);
-                    sbyte[] line = streams[i].Read();
-                    if (line != null)
-                    {
-                        queue.InsertWithOverflow(new FileAndTop(i, line));
-                    }
-                }
-
-                // Unix utility sort() uses ordered array of files to pick the next line from, updating
-                // it as it reads new lines. The PQ used here is a more elegant solution and has
-                // a nicer theoretical complexity bound :) The entire sorting process is I/O bound anyway
-                // so it shouldn't make much of a difference (didn't check).
-                FileAndTop top;
-                while ((top = queue.Top()) != null)
-                {
-                    @out.Write(top.Current);
-                    if (!streams[top.Fd].Read(top.Current))
-                    {
-                        queue.Pop();
-                    }
-                    else
-                    {
-                        queue.UpdateTop();
-                    }
-                }
-
-                SortInfo.MergeTime += System.currentTimeMillis() - start;
-                SortInfo.MergeRounds++;
-            }
-            finally
-            {
-                // The logic below is: if an exception occurs in closing out, it has a priority over exceptions
-                // happening in closing streams.
-                try
-                {
-                    IOUtils.Close(streams);
-                }
-                finally
-                {
-                    IOUtils.Close(@out);
-                }
-            }
-        }
-
-        private class PriorityQueueAnonymousInnerClassHelper : PriorityQueue<FileAndTop>
-        {
-            private readonly OfflineSorter OuterInstance;
-
-            public PriorityQueueAnonymousInnerClassHelper(OfflineSorter outerInstance, int size)
-                : base(size)
-            {
-                this.OuterInstance = outerInstance;
-            }
-
-            protected internal override bool LessThan(FileAndTop a, FileAndTop b)
-            {
-                return OuterInstance.comparator.Compare(a.Current, b.Current) < 0;
-            }
-        }
-
-        /// <summary>
-        /// Read in a single partition of data </summary>
-        internal int ReadPartition(ByteSequencesReader reader)
-        {
-            long start = DateTime.Now.Millisecond;
-            BytesRef scratch = new BytesRef();
-            while ((scratch.Bytes = reader.Read()) != null)
-            {
-                scratch.Length = scratch.Bytes.Length;
-                Buffer.Append(scratch);
-                // Account for the created objects.
-                // (buffer slots do not account to buffer size.)
-                if (RamBufferSize.Bytes < BufferBytesUsed.Get())
-                {
-                    break;
-                }
-            }
-            sortInfo.ReadTime += (DateTime.Now.Millisecond - start);
-            return Buffer.Size();
-        }
-
-        internal class FileAndTop
-        {
-            internal readonly int Fd;
-            internal readonly BytesRef Current;
-
-            internal FileAndTop(int fd, sbyte[] firstLine)
-            {
-                this.Fd = fd;
-                this.Current = new BytesRef(firstLine);
-            }
-        }
-
-        /// <summary>
-        /// Utility class to emit length-prefixed byte[] entries to an output stream for sorting.
-        /// Complementary to <seealso cref="ByteSequencesReader"/>.
-        /// </summary>
-        public class ByteSequencesWriter : IDisposable
-        {
-            internal readonly DataOutput Os;
-
-            /// <summary>
-            /// Constructs a ByteSequencesWriter to the provided File </summary>
-            public ByteSequencesWriter(FileInfo file)
-                : this(new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file))))
-            {
-            }
-
-            /// <summary>
-            /// Constructs a ByteSequencesWriter to the provided DataOutput </summary>
-            public ByteSequencesWriter(DataOutput os)
-            {
-                this.Os = os;
-            }
-
-            /// <summary>
-            /// Writes a BytesRef. </summary>
-            /// <seealso cref= #write(byte[], int, int) </seealso>
-            public virtual void Write(BytesRef @ref)
-            {
-                Debug.Assert(@ref != null);
-                Write(@ref.Bytes, @ref.Offset, @ref.Length);
-            }
-
-            /// <summary>
-            /// Writes a byte array. </summary>
-            /// <seealso cref= #write(byte[], int, int) </seealso>
-            public virtual void Write(sbyte[] bytes)
-            {
-                Write(bytes, 0, bytes.Length);
-            }
-
-            /// <summary>
-            /// Writes a byte array.
-            /// <p>
-            /// The length is written as a <code>short</code>, followed
-            /// by the bytes.
-            /// </summary>
-            public virtual void Write(sbyte[] bytes, int off, int len)
-            {
-                Debug.Assert(bytes != null);
-                Debug.Assert(off >= 0 && off + len <= bytes.Length);
-                Debug.Assert(len >= 0);
-                Os.writeShort(len);
-                Os.write(bytes, off, len);
-            }
-
-            /// <summary>
-            /// Closes the provided <seealso cref="DataOutput"/> if it is <seealso cref="IDisposable"/>.
-            /// </summary>
-            public override void Dispose()
-            {
-                if (Os is IDisposable)
-                {
-                    ((IDisposable)Os).Dispose();
-                }
-            }
-        }
-
-        /// <summary>
-        /// Utility class to read length-prefixed byte[] entries from an input.
-        /// Complementary to <seealso cref="ByteSequencesWriter"/>.
-        /// </summary>
-        public class ByteSequencesReader : IDisposable
-        {
-            internal readonly DataInput @is;
-
-            /// <summary>
-            /// Constructs a ByteSequencesReader from the provided File </summary>
-            public ByteSequencesReader(FileInfo file)
-                : this(new DataInputStream(new BufferedInputStream(new FileInputStream(file))))
-            {
-            }
-
-            /// <summary>
-            /// Constructs a ByteSequencesReader from the provided DataInput </summary>
-            public ByteSequencesReader(DataInput @is)
-            {
-                this.@is = @is;
-            }
-
-            /// <summary>
-            /// Reads the next entry into the provided <seealso cref="BytesRef"/>. The internal
-            /// storage is resized if needed.
-            /// </summary>
-            /// <returns> Returns <code>false</code> if EOF occurred when trying to read
-            /// the header of the next sequence. Returns <code>true</code> otherwise. </returns>
-            /// <exception cref="EOFException"> if the file ends before the full sequence is read. </exception>
-            public virtual bool Read(BytesRef @ref)
-            {
-                short length;
-                try
-                {
-                    length = @is.readShort();
-                }
-                catch (EOFException)
-                {
-                    return false;
-                }
-
-                @ref.Grow(length);
-                @ref.Offset = 0;
-                @ref.Length = length;
-                @is.readFully(@ref.Bytes, 0, length);
-                return true;
-            }
-
-            /// <summary>
-            /// Reads the next entry and returns it if successful.
-            /// </summary>
-            /// <seealso cref= #read(BytesRef)
-            /// </seealso>
-            /// <returns> Returns <code>null</code> if EOF occurred before the next entry
-            /// could be read. </returns>
-            /// <exception cref="EOFException"> if the file ends before the full sequence is read. </exception>
-            public virtual sbyte[] Read()
-            {
-                short length;
-                try
-                {
-                    length = @is.readShort();
-                }
-                catch (EOFException e)
-                {
-                    return null;
-                }
-
-                Debug.Assert(length >= 0, "Sanity: sequence length < 0: " + length);
-                sbyte[] result = new sbyte[length];
-                @is.readFully(result);
-                return result;
-            }
-
-            /// <summary>
-            /// Closes the provided <seealso cref="DataInput"/> if it is <seealso cref="IDisposable"/>.
-            /// </summary>
-            public void Dispose()
-            {
-                if (@is is IDisposable)
-                {
-                    ((IDisposable)@is).Dispose();
-                }
-            }
-        }
-
-        /// <summary>
-        /// Returns the comparator in use to sort entries </summary>
-        public IComparer<BytesRef> Comparator
-        {
-            get
-            {
-                return comparator;
-            }
-        }
-    }*/
-}
\ No newline at end of file
+//using System;
+//using System.Collections.Generic;
+//using System.Diagnostics;
+//using System.IO;
+//
+//namespace Lucene.Net.Util
+//{
+//    /*
+//     * Licensed to the Apache Software Foundation (ASF) under one or more
+//     * contributor license agreements.  See the NOTICE file distributed with
+//     * this work for additional information regarding copyright ownership.
+//     * The ASF licenses this file to You under the Apache License, Version 2.0
+//     * (the "License"); you may not use this file except in compliance with
+//     * the License.  You may obtain a copy of the License at
+//     *
+//     *     http://www.apache.org/licenses/LICENSE-2.0
+//     *
+//     * Unless required by applicable law or agreed to in writing, software
+//     * distributed under the License is distributed on an "AS IS" BASIS,
+//     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//     * See the License for the specific language governing permissions and
+//     * limitations under the License.
+//     */
+//
+//    /// <summary>
+//    /// On-disk sorting of byte arrays. Each byte array (entry) is a composed of the following
+//    /// fields:
+//    /// <ul>
+//    ///   <li>(two bytes) length of the following byte array,
+//    ///   <li>exactly the above count of bytes for the sequence to be sorted.
+//    /// </ul>
+//    /// </summary>
+//    public sealed class OfflineSorter
+//    {
+//        private bool InstanceFieldsInitialized = false;
+//
+//        private void InitializeInstanceFields()
+//        {
+//            Buffer = new BytesRefArray(BufferBytesUsed);
+//        }
+//
+//        /// <summary>
+//        /// Convenience constant for megabytes </summary>
+//        public const long MB = 1024 * 1024;
+//        /// <summary>
+//        /// Convenience constant for gigabytes </summary>
+//        public static readonly long GB = MB * 1024;
+//
+//        /// <summary>
+//        /// Minimum recommended buffer size for sorting.
+//        /// </summary>
+//        public const long MIN_BUFFER_SIZE_MB = 32;
+//
+//        /// <summary>
+//        /// Absolute minimum required buffer size for sorting.
+//        /// </summary>
+//        public static readonly long ABSOLUTE_MIN_SORT_BUFFER_SIZE = MB / 2;
+//        private const string MIN_BUFFER_SIZE_MSG = "At least 0.5MB RAM buffer is needed";
+//
+//        /// <summary>
+//        /// Maximum number of temporary files before doing an intermediate merge.
+//        /// </summary>
+//        public const int MAX_TEMPFILES = 128;
+//
+//        /// <summary>
+//        /// A bit more descriptive unit for constructors.
+//        /// </summary>
+//        /// <seealso cref= #automatic() </seealso>
+//        /// <seealso cref= #megabytes(long) </seealso>
+//        public sealed class BufferSize
+//        {
+//            internal readonly int Bytes;
+//
+//            internal BufferSize(long bytes)
+//            {
+//                if (bytes > int.MaxValue)
+//                {
+//                    throw new System.ArgumentException("Buffer too large for Java (" + (int.MaxValue / MB) + "mb max): " + bytes);
+//                }
+//
+//                if (bytes < ABSOLUTE_MIN_SORT_BUFFER_SIZE)
+//                {
+//                    throw new System.ArgumentException(MIN_BUFFER_SIZE_MSG + ": " + bytes);
+//                }
+//
+//                this.Bytes = (int)bytes;
+//            }
+//
+//            /// <summary>
+//            /// Creates a <seealso cref="BufferSize"/> in MB. The given
+//            /// values must be &gt; 0 and &lt; 2048.
+//            /// </summary>
+//            public static BufferSize Megabytes(long mb)
+//            {
+//                return new BufferSize(mb * MB);
+//            }
+//
+//            /// <summary>
+//            /// Approximately half of the currently available free heap, but no less
+//            /// than <seealso cref="#ABSOLUTE_MIN_SORT_BUFFER_SIZE"/>. However if current heap allocation
+//            /// is insufficient or if there is a large portion of unallocated heap-space available
+//            /// for sorting consult with max allowed heap size.
+//            /// </summary>
+//            public static BufferSize Automatic()
+//            {
+//                var proc = Process.GetCurrentProcess();
+//
+//                // take sizes in "conservative" order
+//                long max = proc.PeakVirtualMemorySize64; // max allocated; java has it as Runtime.maxMemory();
+//                long total = proc.VirtualMemorySize64; // currently allocated; java has it as Runtime.totalMemory();
+//                long free = rt.freeMemory(); // unused portion of currently allocated
+//                long totalAvailableBytes = max - total + free;
+//
+//                // by free mem (attempting to not grow the heap for this)
+//                long sortBufferByteSize = free / 2;
+//                const long minBufferSizeBytes = MIN_BUFFER_SIZE_MB * MB;
+//                if (sortBufferByteSize < minBufferSizeBytes || totalAvailableBytes > 10 * minBufferSizeBytes) // lets see if we need/should to grow the heap
+//                {
+//                    if (totalAvailableBytes / 2 > minBufferSizeBytes) // there is enough mem for a reasonable buffer
+//                    {
+//                        sortBufferByteSize = totalAvailableBytes / 2; // grow the heap
+//                    }
+//                    else
+//                    {
+//                        //heap seems smallish lets be conservative fall back to the free/2
+//                        sortBufferByteSize = Math.Max(ABSOLUTE_MIN_SORT_BUFFER_SIZE, sortBufferByteSize);
+//                    }
+//                }
+//                return new BufferSize(Math.Min((long)int.MaxValue, sortBufferByteSize));
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Sort info (debugging mostly).
+//        /// </summary>
+//        public class SortInfo
+//        {
+//            internal bool InstanceFieldsInitialized = false;
+//
+//            internal virtual void InitializeInstanceFields()
+//            {
+//                BufferSize = OuterInstance.RamBufferSize.Bytes;
+//            }
+//
+//            private readonly OfflineSorter OuterInstance;
+//
+//            /// <summary>
+//            /// number of temporary files created when merging partitions </summary>
+//            public int TempMergeFiles;
+//            /// <summary>
+//            /// number of partition merges </summary>
+//            public int MergeRounds;
+//            /// <summary>
+//            /// number of lines of data read </summary>
+//            public int Lines;
+//            /// <summary>
+//            /// time spent merging sorted partitions (in milliseconds) </summary>
+//            public long MergeTime;
+//            /// <summary>
+//            /// time spent sorting data (in milliseconds) </summary>
+//            public long SortTime;
+//            /// <summary>
+//            /// total time spent (in milliseconds) </summary>
+//            public long TotalTime;
+//            /// <summary>
+//            /// time spent in i/o read (in milliseconds) </summary>
+//            public long ReadTime;
+//            /// <summary>
+//            /// read buffer size (in bytes) </summary>
+//            public long BufferSize;
+//
+//            /// <summary>
+//            /// create a new SortInfo (with empty statistics) for debugging </summary>
+//            public SortInfo(OfflineSorter outerInstance)
+//            {
+//                this.OuterInstance = outerInstance;
+//
+//                if (!InstanceFieldsInitialized)
+//                {
+//                    InitializeInstanceFields();
+//                    InstanceFieldsInitialized = true;
+//                }
+//            }
+//
+//            public override string ToString()
+//            {
+//                return string.Format("time=%.2f sec. total (%.2f reading, %.2f sorting, %.2f merging), lines=%d, temp files=%d, merges=%d, soft ram limit=%.2f MB", TotalTime / 1000.0d, ReadTime / 1000.0d, SortTime / 1000.0d, MergeTime / 1000.0d, Lines, TempMergeFiles, MergeRounds, (double)BufferSize / MB);
+//            }
+//        }
+//
+//        private readonly BufferSize RamBufferSize;
+//
+//        private readonly Counter BufferBytesUsed = Counter.NewCounter();
+//        private BytesRefArray Buffer;
+//        private SortInfo sortInfo;
+//        private readonly int MaxTempFiles;
+//        private readonly IComparer<BytesRef> comparator;
+//
+//        /// <summary>
+//        /// Default comparator: sorts in binary (codepoint) order </summary>
+//        public static readonly IComparer<BytesRef> DEFAULT_COMPARATOR = BytesRef.UTF8SortedAsUnicodeComparator.Instance;
+//
+//        /// <summary>
+//        /// Defaults constructor.
+//        /// </summary>
+//        /// <seealso cref= #defaultTempDir() </seealso>
+//        /// <seealso cref= BufferSize#automatic() </seealso>
+//        public OfflineSorter()
+//            : this(DEFAULT_COMPARATOR, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
+//        {
+//            if (!InstanceFieldsInitialized)
+//            {
+//                InitializeInstanceFields();
+//                InstanceFieldsInitialized = true;
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Defaults constructor with a custom comparator.
+//        /// </summary>
+//        /// <seealso cref= #defaultTempDir() </seealso>
+//        /// <seealso cref= BufferSize#automatic() </seealso>
+//        public OfflineSorter(IComparer<BytesRef> comparator)
+//            : this(comparator, BufferSize.Automatic(), DefaultTempDir(), MAX_TEMPFILES)
+//        {
+//            if (!InstanceFieldsInitialized)
+//            {
+//                InitializeInstanceFields();
+//                InstanceFieldsInitialized = true;
+//            }
+//        }
+//
+//        /// <summary>
+//        /// All-details constructor.
+//        /// </summary>
+//        public OfflineSorter(IComparer<BytesRef> comparator, BufferSize ramBufferSize, /*DirectoryInfo tempDirectory,*/ int maxTempfiles)
+//        {
+//            if (!InstanceFieldsInitialized)
+//            {
+//                InitializeInstanceFields();
+//                InstanceFieldsInitialized = true;
+//            }
+//            if (ramBufferSize.Bytes < ABSOLUTE_MIN_SORT_BUFFER_SIZE)
+//            {
+//                throw new System.ArgumentException(MIN_BUFFER_SIZE_MSG + ": " + ramBufferSize.Bytes);
+//            }
+//
+//            if (maxTempfiles < 2)
+//            {
+//                throw new System.ArgumentException("maxTempFiles must be >= 2");
+//            }
+//
+//            this.RamBufferSize = ramBufferSize;
+//            this.MaxTempFiles = maxTempfiles;
+//            this.comparator = comparator;
+//        }
+//
+//        /// <summary>
+//        /// Sort input to output, explicit hint for the buffer size. The amount of allocated
+//        /// memory may deviate from the hint (may be smaller or larger).
+//        /// </summary>
+//        public SortInfo Sort(FileInfo input, FileInfo output)
+//        {
+//            sortInfo = new SortInfo(this) {TotalTime = DateTime.Now.Millisecond};
+//
+//            output.Delete();
+//
+//            var merges = new List<FileInfo>();
+//            bool success2 = false;
+//            try
+//            {
+//                var inputStream = new ByteSequencesReader(input);
+//                bool success = false;
+//                try
+//                {
+//                    int lines = 0;
+//                    while ((lines = ReadPartition(inputStream)) > 0)
+//                    {
+//                        merges.Add(SortPartition(lines));
+//                        sortInfo.TempMergeFiles++;
+//                        sortInfo.Lines += lines;
+//
+//                        // Handle intermediate merges.
+//                        if (merges.Count == MaxTempFiles)
+//                        {
+//                            var intermediate = new FileInfo(Path.GetTempFileName());
+//                            try
+//                            {
+//                                MergePartitions(merges, intermediate);
+//                            }
+//                            finally
+//                            {
+//                                foreach (var file in merges)
+//                                {
+//                                    file.Delete();
+//                                }
+//                                merges.Clear();
+//                                merges.Add(intermediate);
+//                            }
+//                            sortInfo.TempMergeFiles++;
+//                        }
+//                    }
+//                    success = true;
+//                }
+//                finally
+//                {
+//                    if (success)
+//                    {
+//                        IOUtils.Close(inputStream);
+//                    }
+//                    else
+//                    {
+//                        IOUtils.CloseWhileHandlingException(inputStream);
+//                    }
+//                }
+//
+//                // One partition, try to rename or copy if unsuccessful.
+//                if (merges.Count == 1)
+//                {
+//                    FileInfo single = merges[0];
+//                    Copy(single, output);
+//                    try
+//                    {
+//                        File.Delete(single.FullName);
+//                    }
+//                    catch (Exception)
+//                    {
+//                        // ignored
+//                    }
+//                }
+//                else
+//                {
+//                    // otherwise merge the partitions with a priority queue.
+//                    MergePartitions(merges, output);
+//                }
+//                success2 = true;
+//            }
+//            finally
+//            {
+//                foreach (FileInfo file in merges)
+//                {
+//                    file.Delete();
+//                }
+//                if (!success2)
+//                {
+//                    output.Delete();
+//                }
+//            }
+//
+//            sortInfo.TotalTime = (DateTime.Now.Millisecond - sortInfo.TotalTime);
+//            return sortInfo;
+//        }
+//
+//        /// <summary>
+//        /// Returns the default temporary directory. By default, the System's temp folder. If not accessible
+//        /// or not available, an IOException is thrown
+//        /// </summary>
+//        public static DirectoryInfo DefaultTempDir()
+//        {
+//            return new DirectoryInfo(Path.GetTempPath());
+//        }
+//
+//        /// <summary>
+//        /// Copies one file to another.
+//        /// </summary>
+//        private static void Copy(FileInfo file, FileInfo output)
+//        {
+//            File.Copy(file.FullName, output.FullName);
+//        }
+//
+//        /// <summary>
+//        /// Sort a single partition in-memory. </summary>
+//        internal FileInfo SortPartition(int len)
+//        {
+//            var data = this.Buffer;
+//            var tempFile = new FileInfo(Path.GetTempFileName());
+//            //var tempFile1 = File.Create(new ());
+//            //FileInfo tempFile = FileInfo.createTempFile("sort", "partition", TempDirectory);
+//
+//            long start = DateTime.Now.Millisecond;
+//            sortInfo.SortTime += (DateTime.Now.Millisecond - start);
+//
+//            var @out = new ByteSequencesWriter(tempFile);
+//            BytesRef spare;
+//            try
+//            {
+//                BytesRefIterator iter = Buffer.Iterator(comparator);
+//                while ((spare = iter.Next()) != null)
+//                {
+//                    Debug.Assert(spare.Length <= short.MaxValue);
+//                    @out.Write(spare);
+//                }
+//
+//                @out.Dispose();
+//
+//                // Clean up the buffer for the next partition.
+//                data.Clear();
+//                return tempFile;
+//            }
+//            finally
+//            {
+//                IOUtils.Close(@out);
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Merge a list of sorted temporary files (partitions) into an output file </summary>
+//        internal void MergePartitions(IList<FileInfo> merges, FileInfo outputFile)
+//        {
+//            long start = DateTime.Now.Millisecond;
+//
+//            var @out = new ByteSequencesWriter(outputFile);
+//
+//            PriorityQueue<FileAndTop> queue = new PriorityQueueAnonymousInnerClassHelper(this, merges.Count);
+//
+//            var streams = new ByteSequencesReader[merges.Count];
+//            try
+//            {
+//                // Open streams and read the top for each file
+//                for (int i = 0; i < merges.Count; i++)
+//                {
+//                    streams[i] = new ByteSequencesReader(merges[i]);
+//                    sbyte[] line = streams[i].Read();
+//                    if (line != null)
+//                    {
+//                        queue.InsertWithOverflow(new FileAndTop(i, line));
+//                    }
+//                }
+//
+//                // Unix utility sort() uses ordered array of files to pick the next line from, updating
+//                // it as it reads new lines. The PQ used here is a more elegant solution and has
+//                // a nicer theoretical complexity bound :) The entire sorting process is I/O bound anyway
+//                // so it shouldn't make much of a difference (didn't check).
+//                FileAndTop top;
+//                while ((top = queue.Top()) != null)
+//                {
+//                    @out.Write(top.Current);
+//                    if (!streams[top.Fd].Read(top.Current))
+//                    {
+//                        queue.Pop();
+//                    }
+//                    else
+//                    {
+//                        queue.UpdateTop();
+//                    }
+//                }
+//
+//                SortInfo.MergeTime += DateTime.UtcNow.Ticks - start;
+//                SortInfo.MergeRounds++;
+//            }
+//            finally
+//            {
+//                // The logic below is: if an exception occurs in closing out, it has a priority over exceptions
+//                // happening in closing streams.
+//                try
+//                {
+//                    IOUtils.Close(streams);
+//                }
+//                finally
+//                {
+//                    IOUtils.Close(@out);
+//                }
+//            }
+//        }
+//
+//        private class PriorityQueueAnonymousInnerClassHelper : PriorityQueue<FileAndTop>
+//        {
+//            private readonly OfflineSorter OuterInstance;
+//
+//            public PriorityQueueAnonymousInnerClassHelper(OfflineSorter outerInstance, int size)
+//                : base(size)
+//            {
+//                this.OuterInstance = outerInstance;
+//            }
+//
+//            public override bool LessThan(FileAndTop a, FileAndTop b)
+//            {
+//                return OuterInstance.comparator.Compare(a.Current, b.Current) < 0;
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Read in a single partition of data </summary>
+//        internal int ReadPartition(ByteSequencesReader reader)
+//        {
+//            long start = DateTime.Now.Millisecond;
+//            var scratch = new BytesRef();
+//            while ((scratch.Bytes = reader.Read()) != null)
+//            {
+//                scratch.Length = scratch.Bytes.Length;
+//                Buffer.Append(scratch);
+//                // Account for the created objects.
+//                // (buffer slots do not account to buffer size.)
+//                if (RamBufferSize.Bytes < BufferBytesUsed.Get())
+//                {
+//                    break;
+//                }
+//            }
+//            sortInfo.ReadTime += (DateTime.Now.Millisecond - start);
+//            return Buffer.Size();
+//        }
+//
+//        internal class FileAndTop
+//        {
+//            internal readonly int Fd;
+//            internal readonly BytesRef Current;
+//
+//            internal FileAndTop(int fd, sbyte[] firstLine)
+//            {
+//                this.Fd = fd;
+//                this.Current = new BytesRef(firstLine);
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Utility class to emit length-prefixed byte[] entries to an output stream for sorting.
+//        /// Complementary to <seealso cref="ByteSequencesReader"/>.
+//        /// </summary>
+//        public class ByteSequencesWriter : IDisposable
+//        {
+//            internal readonly DataOutput Os;
+//
+//            /// <summary>
+//            /// Constructs a ByteSequencesWriter to the provided File </summary>
+//            public ByteSequencesWriter(FileInfo file)
+//                : this(new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file))))
+//            {
+//            }
+//
+//            /// <summary>
+//            /// Constructs a ByteSequencesWriter to the provided DataOutput </summary>
+//            public ByteSequencesWriter(DataOutput os)
+//            {
+//                this.Os = os;
+//            }
+//
+//            /// <summary>
+//            /// Writes a BytesRef. </summary>
+//            /// <seealso cref= #write(byte[], int, int) </seealso>
+//            public virtual void Write(BytesRef @ref)
+//            {
+//                Debug.Assert(@ref != null);
+//                Write(@ref.Bytes, @ref.Offset, @ref.Length);
+//            }
+//
+//            /// <summary>
+//            /// Writes a byte array. </summary>
+//            /// <seealso cref= #write(byte[], int, int) </seealso>
+//            public virtual void Write(sbyte[] bytes)
+//            {
+//                Write(bytes, 0, bytes.Length);
+//            }
+//
+//            /// <summary>
+//            /// Writes a byte array.
+//            /// <p>
+//            /// The length is written as a <code>short</code>, followed
+//            /// by the bytes.
+//            /// </summary>
+//            public virtual void Write(sbyte[] bytes, int off, int len)
+//            {
+//                Debug.Assert(bytes != null);
+//                Debug.Assert(off >= 0 && off + len <= bytes.Length);
+//                Debug.Assert(len >= 0);
+//                Os.WriteShort(len);
+//                Os.Write(bytes, off, len);
+//            }
+//
+//            /// <summary>
+//            /// Closes the provided <seealso cref="DataOutput"/> if it is <seealso cref="IDisposable"/>.
+//            /// </summary>
+//            public void Dispose()
+//            {
+//                var os = Os as IDisposable;
+//                if (os != null)
+//                {
+//                    os.Dispose();
+//                }
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Utility class to read length-prefixed byte[] entries from an input.
+//        /// Complementary to <seealso cref="ByteSequencesWriter"/>.
+//        /// </summary>
+//        public class ByteSequencesReader : IDisposable
+//        {
+//            internal readonly DataInput inputStream;
+//
+//            /// <summary>
+//            /// Constructs a ByteSequencesReader from the provided File </summary>
+//            public ByteSequencesReader(FileInfo file)
+//                : this(new DataInputStream(new BufferedInputStream(new FileInputStream(file))))
+//            {
+//            }
+//
+//            /// <summary>
+//            /// Constructs a ByteSequencesReader from the provided DataInput </summary>
+//            public ByteSequencesReader(DataInput inputStream)
+//            {
+//                this.inputStream = inputStream;
+//            }
+//
+//            /// <summary>
+//            /// Reads the next entry into the provided <seealso cref="BytesRef"/>. The internal
+//            /// storage is resized if needed.
+//            /// </summary>
+//            /// <returns> Returns <code>false</code> if EOF occurred when trying to read
+//            /// the header of the next sequence. Returns <code>true</code> otherwise. </returns>
+//            /// <exception cref="EOFException"> if the file ends before the full sequence is read. </exception>
+//            public virtual bool Read(BytesRef @ref)
+//            {
+//                short length;
+//                try
+//                {
+//                    length = inputStream.ReadShort();
+//                }
+//                catch (EOFException)
+//                {
+//                    return false;
+//                }
+//
+//                @ref.Grow(length);
+//                @ref.Offset = 0;
+//                @ref.Length = length;
+//                inputStream.ReadFully(@ref.Bytes, 0, length);
+//                return true;
+//            }
+//
+//            /// <summary>
+//            /// Reads the next entry and returns it if successful.
+//            /// </summary>
+//            /// <seealso cref= #read(BytesRef)
+//            /// </seealso>
+//            /// <returns> Returns <code>null</code> if EOF occurred before the next entry
+//            /// could be read. </returns>
+//            /// <exception cref="EOFException"> if the file ends before the full sequence is read. </exception>
+//            public virtual sbyte[] Read()
+//            {
+//                short length;
+//                try
+//                {
+//                    length = inputStream.ReadShort();
+//                }
+//                catch (EOFException e)
+//                {
+//                    return null;
+//                }
+//
+//                Debug.Assert(length >= 0, "Sanity: sequence length < 0: " + length);
+//                sbyte[] result = new sbyte[length];
+//                inputStream.ReadFully(result);
+//                return result;
+//            }
+//
+//            /// <summary>
+//            /// Closes the provided <seealso cref="DataInput"/> if it is <seealso cref="IDisposable"/>.
+//            /// </summary>
+//            public void Dispose()
+//            {
+//                var @is = inputStream as IDisposable;
+//                if (@is != null)
+//                {
+//                    @is.Dispose();
+//                }
+//            }
+//        }
+//
+//        /// <summary>
+//        /// Returns the comparator in use to sort entries </summary>
+//        public IComparer<BytesRef> Comparator
+//        {
+//            get
+//            {
+//                return comparator;
+//            }
+//        }
+//    }
+//}
\ No newline at end of file


[7/7] git commit: FST API .NETification

Posted by sy...@apache.org.
FST API .NETification


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

Branch: refs/heads/master
Commit: fd0a0811f5b007b47e9b7e0cf14529349f8be5ca
Parents: 273b9fd
Author: Itamar Syn-Hershko <it...@code972.com>
Authored: Wed Sep 10 04:46:58 2014 +0300
Committer: Itamar Syn-Hershko <it...@code972.com>
Committed: Wed Sep 10 04:46:58 2014 +0300

----------------------------------------------------------------------
 src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs |  4 ++--
 .../Codecs/Lucene42/Lucene42DocValuesProducer.cs   |  6 +++---
 src/Lucene.Net.Core/Util/Fst/FST.cs                | 17 +++++++----------
 src/Lucene.Net.Core/Util/Fst/FSTEnum.cs            |  8 ++++----
 src/Lucene.Net.Core/Util/Fst/Util.cs               | 12 ++++++------
 src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs |  4 ++--
 6 files changed, 24 insertions(+), 27 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs b/src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs
index 644b97c..a2055dd 100644
--- a/src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs
+++ b/src/Lucene.Net.Core/Codecs/BlockTreeTermsReader.cs
@@ -1061,7 +1061,7 @@ namespace Lucene.Net.Codecs
                     }
                     else
                     {
-                        FstReader = outerInstance.Index.GetBytesReader;
+                        FstReader = outerInstance.Index.BytesReader;
                     }
 
                     // TODO: if the automaton is "smallish" we really
@@ -1562,7 +1562,7 @@ namespace Lucene.Net.Codecs
                     }
                     else
                     {
-                        FstReader = OuterInstance.Index.GetBytesReader;
+                        FstReader = OuterInstance.Index.BytesReader;
                     }
 
                     // Init w/ root block; don't use index since it may

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.Core/Codecs/Lucene42/Lucene42DocValuesProducer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Codecs/Lucene42/Lucene42DocValuesProducer.cs b/src/Lucene.Net.Core/Codecs/Lucene42/Lucene42DocValuesProducer.cs
index c511c4e..566f66a 100644
--- a/src/Lucene.Net.Core/Codecs/Lucene42/Lucene42DocValuesProducer.cs
+++ b/src/Lucene.Net.Core/Codecs/Lucene42/Lucene42DocValuesProducer.cs
@@ -448,7 +448,7 @@ namespace Lucene.Net.Codecs.Lucene42
             FST<long> fst = instance;
 
             // per-thread resources
-            FST<long>.BytesReader @in = fst.GetBytesReader;
+            FST<long>.BytesReader @in = fst.BytesReader;
             FST<long>.Arc<long> firstArc = new FST<long>.Arc<long>();
             FST<long>.Arc<long> scratchArc = new FST<long>.Arc<long>();
             IntsRef scratchInts = new IntsRef();
@@ -567,7 +567,7 @@ namespace Lucene.Net.Codecs.Lucene42
             FST<long> fst = instance;
 
             // per-thread resources
-            FST<long>.BytesReader @in = fst.GetBytesReader;
+            FST<long>.BytesReader @in = fst.BytesReader;
             FST<long>.Arc<long> firstArc = new FST<long>.Arc<long>();
             FST<long>.Arc<long> scratchArc = new FST<long>.Arc<long>();
             IntsRef scratchInts = new IntsRef();
@@ -750,7 +750,7 @@ namespace Lucene.Net.Codecs.Lucene42
             {
                 this.Fst = fst;
                 @in = new BytesRefFSTEnum<long>(fst);
-                BytesReader = fst.GetBytesReader;
+                BytesReader = fst.BytesReader;
             }
 
             public override BytesRef Next()

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.Core/Util/Fst/FST.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/Fst/FST.cs b/src/Lucene.Net.Core/Util/Fst/FST.cs
index 69fcfad..86608ed 100644
--- a/src/Lucene.Net.Core/Util/Fst/FST.cs
+++ b/src/Lucene.Net.Core/Util/Fst/FST.cs
@@ -35,9 +35,6 @@ namespace Lucene.Net.Util.Fst
     using PackedInts = Lucene.Net.Util.Packed.PackedInts;
     using RAMOutputStream = Lucene.Net.Store.RAMOutputStream;
 
-    //import java.io.Writer;
-    //import java.io.OutputStreamWriter;
-
     // TODO: break this into WritableFST and ReadOnlyFST.. then
     // we can have subclasses of ReadOnlyFST to handle the
     // different byte[] level encodings (packed or
@@ -167,7 +164,7 @@ namespace Lucene.Net.Util.Fst
 
         /// <summary>
         /// If arc has this label then that arc is final/accepted </summary>
-        public const int END_LABEL = -1;
+        public static readonly int END_LABEL = -1;
 
         private readonly bool AllowArrayArcs;
 
@@ -396,7 +393,7 @@ namespace Lucene.Net.Util.Fst
         {
             Arc<T> arc = new Arc<T>();
             GetFirstArc(arc);
-            BytesReader @in = GetBytesReader;
+            BytesReader @in = BytesReader;
             if (TargetHasArcs(arc))
             {
                 ReadFirstRealTargetArc(arc.Target, arc, @in);
@@ -588,7 +585,7 @@ namespace Lucene.Net.Util.Fst
         /// <summary>
         /// Reads an automaton from a file.
         /// </summary>
-        public static FST<T> read<T>(FileInfo file, Outputs<T> outputs)
+        public static FST<T> Read<T>(FileInfo file, Outputs<T> outputs)
         {
             var bs = new BufferedStream(file.OpenRead());
             bool success = false;
@@ -698,7 +695,7 @@ namespace Lucene.Net.Util.Fst
             for (int arcIdx = 0; arcIdx < nodeIn.NumArcs; arcIdx++)
             {
                 Builder<T>.Arc<T> arc = nodeIn.Arcs[arcIdx];
-                Builder<T>.CompiledNode target = (Builder<T>.CompiledNode)arc.Target;
+                var target = (Builder<T>.CompiledNode)arc.Target;
                 int flags = 0;
                 //System.out.println("  arc " + arcIdx + " label=" + arc.Label + " -> target=" + target.Node);
 
@@ -1508,10 +1505,10 @@ namespace Lucene.Net.Util.Fst
         }
 
         /// <summary>
-        /// Returns a <seealso cref="BytesReader"/> for this FST, positioned at
+        /// Returns a <seealso cref="FST.BytesReader"/> for this FST, positioned at
         ///  position 0.
         /// </summary>
-        public FST.BytesReader GetBytesReader
+        public FST.BytesReader BytesReader
         {
             get
             {
@@ -1720,7 +1717,7 @@ namespace Lucene.Net.Util.Fst
 
             Arc<T> arc = new Arc<T>();
 
-            BytesReader r = GetBytesReader;
+            BytesReader r = BytesReader;
 
             int topN = Math.Min(maxDerefNodes, InCounts.Size());
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.Core/Util/Fst/FSTEnum.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/Fst/FSTEnum.cs b/src/Lucene.Net.Core/Util/Fst/FSTEnum.cs
index 2b97b51..93469ce 100644
--- a/src/Lucene.Net.Core/Util/Fst/FSTEnum.cs
+++ b/src/Lucene.Net.Core/Util/Fst/FSTEnum.cs
@@ -50,7 +50,7 @@ namespace Lucene.Net.Util.Fst
         protected internal FSTEnum(FST<T> fst)
         {
             this.Fst = fst;
-            FstReader = fst.GetBytesReader;
+            FstReader = fst.BytesReader;
             NO_OUTPUT = fst.Outputs.NoOutput;
             fst.GetFirstArc(GetArc(0));
             Output[0] = NO_OUTPUT;
@@ -164,7 +164,7 @@ namespace Lucene.Net.Util.Fst
                     // Arcs are fixed array -- use binary search to find
                     // the target.
 
-                    FST<T>.BytesReader @in = Fst.GetBytesReader;
+                    FST<T>.BytesReader @in = Fst.BytesReader;
                     int low = arc.ArcIdx;
                     int high = arc.NumArcs - 1;
                     int mid = 0;
@@ -334,7 +334,7 @@ namespace Lucene.Net.Util.Fst
                     // Arcs are fixed array -- use binary search to find
                     // the target.
 
-                    FST<T>.BytesReader @in = Fst.GetBytesReader;
+                    FST<T>.BytesReader @in = Fst.BytesReader;
                     int low = arc.ArcIdx;
                     int high = arc.NumArcs - 1;
                     int mid = 0;
@@ -517,7 +517,7 @@ namespace Lucene.Net.Util.Fst
             FST<T>.Arc<T> arc = GetArc(Upto - 1);
             int targetLabel = TargetLabel;
 
-            FST<T>.BytesReader fstReader = Fst.GetBytesReader;
+            FST<T>.BytesReader fstReader = Fst.BytesReader;
 
             while (true)
             {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.Core/Util/Fst/Util.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/Fst/Util.cs b/src/Lucene.Net.Core/Util/Fst/Util.cs
index 779220d..adc6417 100644
--- a/src/Lucene.Net.Core/Util/Fst/Util.cs
+++ b/src/Lucene.Net.Core/Util/Fst/Util.cs
@@ -49,7 +49,7 @@ namespace Lucene.Net.Util.Fst
             // TODO: would be nice not to alloc this on every lookup
             var arc = fst.GetFirstArc(new FST<T>.Arc<T>());
 
-            var fstReader = fst.GetBytesReader;
+            var fstReader = fst.BytesReader;
 
             // Accumulate output as we go
             T output = fst.Outputs.NoOutput;
@@ -82,7 +82,7 @@ namespace Lucene.Net.Util.Fst
         {
             Debug.Assert(fst.inputType == FST<long>.INPUT_TYPE.BYTE1);
 
-            var fstReader = fst.GetBytesReader;
+            var fstReader = fst.BytesReader;
 
             // TODO: would be nice not to alloc this on every lookup
             var arc = fst.GetFirstArc(new FST<T>.Arc<T>());
@@ -124,7 +124,7 @@ namespace Lucene.Net.Util.Fst
         /// </summary>
         public static IntsRef GetByOutput(FST<long> fst, long targetOutput)
         {
-            var @in = fst.GetBytesReader;
+            var @in = fst.BytesReader;
 
             // TODO: would be nice not to alloc this on every lookup
             FST<long>.Arc<long> arc = fst.GetFirstArc(new FST<long>.Arc<long>());
@@ -376,7 +376,7 @@ namespace Lucene.Net.Util.Fst
             public TopNSearcher(FST<T> fst, int topN, int maxQueueDepth, IComparer<T> comparator)
             {
                 this.Fst = fst;
-                this.BytesReader = fst.GetBytesReader;
+                this.BytesReader = fst.BytesReader;
                 this.TopN = topN;
                 this.MaxQueueDepth = maxQueueDepth;
                 this.Comparator = comparator;
@@ -479,7 +479,7 @@ namespace Lucene.Net.Util.Fst
 
                 //System.out.println("search topN=" + topN);
 
-                var fstReader = Fst.GetBytesReader;
+                var fstReader = Fst.BytesReader;
                 T NO_OUTPUT = Fst.Outputs.NoOutput;
 
                 // TODO: we could enable FST to sorting arcs by weight
@@ -760,7 +760,7 @@ namespace Lucene.Net.Util.Fst
             EmitDotState(@out, "initial", "point", "white", "");
 
             T NO_OUTPUT = fst.Outputs.NoOutput;
-            var r = fst.GetBytesReader;
+            var r = fst.BytesReader;
 
             // final FST.Arc<T> scratchArc = new FST.Arc<>();
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/fd0a0811/src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs b/src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs
index 94efec0..3800ec9 100644
--- a/src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs
+++ b/src/Lucene.Net.TestFramework/Util/fst/FSTTester.cs
@@ -220,7 +220,7 @@ namespace Lucene.Net.Util.Fst
             FST<T>.Arc<T> arc = fst.GetFirstArc(new FST.Arc<T>());
             T NO_OUTPUT = fst.Outputs.NoOutput;
             T output = NO_OUTPUT;
-            FST.BytesReader fstReader = fst.GetBytesReader;
+            FST.BytesReader fstReader = fst.BytesReader;
 
             for (int i = 0; i <= term.Length; i++)
             {
@@ -267,7 +267,7 @@ namespace Lucene.Net.Util.Fst
             @in.Offset = 0;
             T NO_OUTPUT = fst.Outputs.NoOutput;
             T output = NO_OUTPUT;
-            FST.BytesReader fstReader = fst.GetBytesReader;
+            FST.BytesReader fstReader = fst.BytesReader;
 
             while (true)
             {


[6/7] git commit: Namespace rename Lucene.Net.Document -> Documents

Posted by sy...@apache.org.
Namespace rename Lucene.Net.Document -> Documents

This to avoid conflict between class name and namespace name, like done in previous versions as well


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

Branch: refs/heads/master
Commit: 273b9fdb1523d6a042f30ecb6760e46ccf685925
Parents: 78e4bb7
Author: Itamar Syn-Hershko <it...@code972.com>
Authored: Wed Sep 10 04:46:30 2014 +0300
Committer: Itamar Syn-Hershko <it...@code972.com>
Committed: Wed Sep 10 04:46:30 2014 +0300

----------------------------------------------------------------------
 .../CompressingStoredFieldsWriter.cs            |  2 +-
 .../Lucene40/Lucene40StoredFieldsWriter.cs      |  2 +-
 .../Codecs/StoredFieldsWriter.cs                |  2 +-
 .../Document/BinaryDocValuesField.cs            | 10 +++---
 .../Document/ByteDocValuesField.cs              |  3 +-
 .../Document/CompressionTools.cs                | 13 +++----
 src/Lucene.Net.Core/Document/DateTools.cs       | 10 +++---
 .../Document/DerefBytesDocValuesField.cs        |  8 ++---
 src/Lucene.Net.Core/Document/Document.cs        | 31 +++++++---------
 .../Document/DocumentStoredFieldVisitor.cs      | 12 +++----
 .../Document/DoubleDocValuesField.cs            |  9 +++--
 src/Lucene.Net.Core/Document/DoubleField.cs     | 17 +++++----
 src/Lucene.Net.Core/Document/Field.cs           | 37 +++++++++-----------
 src/Lucene.Net.Core/Document/FieldType.cs       | 18 +++++-----
 .../Document/FloatDocValuesField.cs             |  8 +++--
 src/Lucene.Net.Core/Document/FloatField.cs      | 17 +++++----
 .../Document/IntDocValuesField.cs               |  4 ++-
 src/Lucene.Net.Core/Document/IntField.cs        | 16 ++++-----
 .../Document/LongDocValuesField.cs              |  7 ++--
 src/Lucene.Net.Core/Document/LongField.cs       | 13 +++----
 .../Document/NumericDocValuesField.cs           |  7 ++--
 .../Document/PackedLongDocValuesField.cs        |  7 ++--
 .../Document/ShortDocValuesField.cs             |  7 ++--
 .../Document/SortedBytesDocValuesField.cs       |  8 ++---
 .../Document/SortedDocValuesField.cs            | 11 +++---
 .../Document/SortedSetDocValuesField.cs         | 10 +++---
 src/Lucene.Net.Core/Document/StoredField.cs     |  8 +++--
 .../Document/StraightBytesDocValuesField.cs     |  7 ++--
 src/Lucene.Net.Core/Document/StringField.cs     |  2 +-
 src/Lucene.Net.Core/Document/TextField.cs       |  9 +++--
 .../Index/BinaryDocValuesFieldUpdates.cs        |  3 +-
 src/Lucene.Net.Core/Index/CheckIndex.cs         |  2 +-
 src/Lucene.Net.Core/Index/DocValuesUpdate.cs    |  4 ++-
 src/Lucene.Net.Core/Index/IndexReader.cs        |  5 +--
 src/Lucene.Net.Core/Index/IndexableFieldType.cs |  3 +-
 .../Index/NumericDocValuesFieldUpdates.cs       |  3 +-
 src/Lucene.Net.Core/Index/ReadersAndUpdates.cs  |  5 +--
 src/Lucene.Net.Core/Search/FieldCache.cs        | 11 +++---
 src/Lucene.Net.Core/Search/IndexSearcher.cs     |  2 +-
 src/Lucene.Net.Core/Search/NumericRangeQuery.cs |  3 +-
 .../Search/Similarities/TFIDFSimilarity.cs      |  4 ++-
 src/Lucene.Net.Core/Util/NumericUtils.cs        |  8 +++--
 .../Analysis/BaseTokenStreamTestCase.cs         |  9 ++---
 .../Analysis/CollationTestBase.cs               | 11 +++---
 .../BaseCompressingDocValuesFormatTestCase.cs   |  5 +--
 .../Index/BaseDocValuesFormatTestCase.cs        | 21 +++++------
 .../Index/BaseIndexFileFormatTestCase.cs        |  2 +-
 .../Index/BaseMergePolicyTestCase.cs            |  2 +-
 .../Index/BasePostingsFormatTestCase.cs         |  7 ++--
 .../Index/BaseStoredFieldsFormatTestCase.cs     | 21 +++++------
 .../Index/BaseTermVectorsFormatTestCase.cs      | 11 +++---
 src/Lucene.Net.TestFramework/Index/DocHelper.cs | 13 +++----
 .../ThreadedIndexingAndSearchingTestCase.cs     |  5 +--
 .../Search/QueryUtils.cs                        |  2 +-
 .../Search/SearchEquivalenceTestBase.cs         |  9 ++---
 .../Util/LineFileDocs.cs                        | 13 +++----
 .../Util/LuceneTestCase.cs                      | 13 +++----
 src/Lucene.Net.TestFramework/Util/TestUtil.cs   | 23 ++++++------
 .../core/Analysis/TestCachingTokenFilter.cs     |  5 +--
 .../core/Analysis/TestMockAnalyzer.cs           |  7 ++--
 .../TestCompressingStoredFieldsFormat.cs        | 11 +++---
 .../TestCompressingTermVectorsFormat.cs         | 10 +++---
 .../core/Codecs/Lucene3x/TestSurrogates.cs      |  5 +--
 .../Codecs/Lucene3x/TestTermInfosReaderIndex.cs |  5 +--
 .../Lucene40/TestLucene40PostingsReader.cs      | 11 +++---
 .../Codecs/Lucene41/TestBlockPostingsFormat2.cs |  9 ++---
 .../Codecs/Lucene41/TestBlockPostingsFormat3.cs |  9 ++---
 .../Perfield/TestPerFieldDocValuesFormat.cs     |  9 ++---
 .../Perfield/TestPerFieldPostingsFormat2.cs     |  9 ++---
 .../core/Document/TestBinaryDocument.cs         |  9 ++---
 .../core/Document/TestDateTools.cs              |  1 +
 .../core/Document/TestDocument.cs               | 23 ++++++------
 src/Lucene.Net.Tests/core/Document/TestField.cs |  1 +
 .../core/Index/Test2BBinaryDocValues.cs         |  5 +--
 src/Lucene.Net.Tests/core/Index/Test2BDocs.cs   |  2 +-
 .../core/Index/Test2BNumericDocValues.cs        |  5 +--
 .../core/Index/Test2BPositions.cs               |  9 ++---
 .../core/Index/Test2BPostings.cs                |  9 ++---
 .../core/Index/Test2BPostingsBytes.cs           |  9 ++---
 .../core/Index/Test2BSortedDocValues.cs         |  5 +--
 src/Lucene.Net.Tests/core/Index/Test2BTerms.cs  |  5 +--
 .../core/Index/Test4GBStoredFields.cs           |  7 ++--
 .../core/Index/TestAddIndexes.cs                | 11 +++---
 .../Index/TestAllFilesHaveChecksumFooter.cs     |  7 ++--
 .../core/Index/TestAllFilesHaveCodecHeader.cs   |  7 ++--
 .../core/Index/TestAtomicUpdate.cs              |  7 ++--
 .../core/Index/TestBagOfPositions.cs            |  7 ++--
 .../core/Index/TestBagOfPostings.cs             |  5 +--
 .../core/Index/TestBinaryDocValuesUpdates.cs    | 15 ++++----
 .../core/Index/TestBinaryTerms.cs               | 10 +++---
 .../core/Index/TestCheckIndex.cs                |  9 ++---
 .../core/Index/TestCodecHoldsOpenFiles.cs       |  5 +--
 src/Lucene.Net.Tests/core/Index/TestCodecs.cs   | 11 +++---
 .../core/Index/TestCompoundFile.cs              |  5 +--
 .../core/Index/TestConcurrentMergeScheduler.cs  |  9 ++---
 .../core/Index/TestConsistentFieldNumbers.cs    | 13 +++----
 src/Lucene.Net.Tests/core/Index/TestCrash.cs    |  5 +--
 .../core/Index/TestCrashCausesCorruptIndex.cs   |  5 +--
 .../core/Index/TestCustomNorms.cs               |  7 ++--
 .../core/Index/TestDeletionPolicy.cs            |  5 +--
 .../core/Index/TestDirectoryReader.cs           | 13 +++----
 .../core/Index/TestDirectoryReaderReopen.cs     |  9 ++---
 src/Lucene.Net.Tests/core/Index/TestDoc.cs      |  5 +--
 src/Lucene.Net.Tests/core/Index/TestDocCount.cs |  5 +--
 .../Index/TestDocInverterPerFieldErrorInfo.cs   |  7 ++--
 .../core/Index/TestDocTermOrds.cs               |  9 ++---
 .../core/Index/TestDocValuesIndexing.cs         | 17 ++++-----
 .../core/Index/TestDocValuesWithThreads.cs      |  9 ++---
 .../core/Index/TestDocsAndPositions.cs          |  9 ++---
 .../core/Index/TestDocumentWriter.cs            | 11 +++---
 .../core/Index/TestDuelingCodecs.cs             |  7 ++--
 .../core/Index/TestExceedMaxTermLength.cs       |  7 ++--
 .../core/Index/TestFieldInfos.cs                |  2 +-
 .../core/Index/TestFieldsReader.cs              |  7 ++--
 .../core/Index/TestFilterAtomicReader.cs        |  5 +--
 src/Lucene.Net.Tests/core/Index/TestFlex.cs     |  8 +++--
 .../core/Index/TestForTooMuchCloning.cs         |  7 ++--
 .../core/Index/TestIndexFileDeleter.cs          |  5 +--
 .../core/Index/TestIndexWriter.cs               | 21 +++++------
 .../core/Index/TestIndexWriterCommit.cs         |  5 +--
 .../core/Index/TestIndexWriterConfig.cs         |  5 +--
 .../core/Index/TestIndexWriterDelete.cs         | 11 +++---
 .../core/Index/TestIndexWriterExceptions.cs     | 19 +++++-----
 .../core/Index/TestIndexWriterForceMerge.cs     |  5 +--
 .../core/Index/TestIndexWriterMergePolicy.cs    |  6 ++--
 .../core/Index/TestIndexWriterMerging.cs        |  9 ++---
 .../core/Index/TestIndexWriterNRTIsCurrent.cs   |  7 ++--
 .../core/Index/TestIndexWriterOnDiskFull.cs     | 11 +++---
 .../core/Index/TestIndexWriterReader.cs         |  7 ++--
 .../core/Index/TestIndexWriterUnicode.cs        |  5 +--
 .../core/Index/TestIndexWriterWithThreads.cs    | 11 +++---
 .../core/Index/TestIndexableField.cs            |  7 ++--
 .../core/Index/TestIsCurrent.cs                 |  6 ++--
 .../core/Index/TestLazyProxSkipping.cs          |  6 ++--
 .../core/Index/TestLongPostings.cs              |  9 ++---
 .../core/Index/TestMaxTermFrequency.cs          |  5 +--
 .../core/Index/TestMixedCodecs.cs               |  5 +--
 .../core/Index/TestMixedDocValuesUpdates.cs     | 11 +++---
 .../core/Index/TestMultiDocValues.cs            | 13 +++----
 .../core/Index/TestMultiFields.cs               |  9 ++---
 .../core/Index/TestMultiLevelSkipList.cs        |  5 +--
 .../core/Index/TestNRTReaderWithThreads.cs      |  2 +-
 .../core/Index/TestNeverDelete.cs               |  5 +--
 .../core/Index/TestNoDeletionPolicy.cs          |  5 +--
 src/Lucene.Net.Tests/core/Index/TestNorms.cs    |  7 ++--
 .../core/Index/TestNumericDocValuesUpdates.cs   | 15 ++++----
 .../core/Index/TestOmitNorms.cs                 | 10 +++---
 .../core/Index/TestOmitPositions.cs             | 10 +++---
 src/Lucene.Net.Tests/core/Index/TestOmitTf.cs   |  9 ++---
 .../core/Index/TestParallelAtomicReader.cs      |  5 +--
 .../core/Index/TestParallelCompositeReader.cs   |  5 +--
 .../core/Index/TestParallelReaderEmptyIndex.cs  |  9 ++---
 .../core/Index/TestParallelTermEnum.cs          |  5 +--
 src/Lucene.Net.Tests/core/Index/TestPayloads.cs |  7 ++--
 .../core/Index/TestPayloadsOnVectors.cs         |  9 ++---
 .../TestPersistentSnapshotDeletionPolicy.cs     |  2 +-
 .../core/Index/TestPostingsOffsets.cs           | 13 +++----
 .../core/Index/TestReaderClosed.cs              |  6 ++--
 src/Lucene.Net.Tests/core/Index/TestRollback.cs |  5 +--
 .../core/Index/TestRollingUpdates.cs            |  7 ++--
 .../core/Index/TestSameTokenSamePosition.cs     |  5 +--
 .../core/Index/TestSegmentMerger.cs             |  2 +-
 .../core/Index/TestSegmentReader.cs             |  2 +-
 .../core/Index/TestSegmentTermDocs.cs           |  6 ++--
 .../core/Index/TestSegmentTermEnum.cs           |  6 ++--
 .../core/Index/TestSizeBoundedForceMerge.cs     |  8 +++--
 .../core/Index/TestSnapshotDeletionPolicy.cs    |  7 ++--
 .../core/Index/TestStressAdvance.cs             |  5 +--
 .../core/Index/TestStressIndexing.cs            |  5 +--
 .../core/Index/TestStressIndexing2.cs           |  9 ++---
 .../core/Index/TestStressNRT.cs                 | 11 +++---
 .../core/Index/TestSumDocFreq.cs                |  5 +--
 .../core/Index/TestTermVectorsReader.cs         |  9 ++---
 .../core/Index/TestTermVectorsWriter.cs         | 12 ++++---
 .../core/Index/TestTermdocPerf.cs               |  5 +--
 .../core/Index/TestTermsEnum.cs                 |  7 ++--
 .../core/Index/TestTermsEnum2.cs                |  5 +--
 .../core/Index/TestThreadedForceMerge.cs        |  7 ++--
 .../core/Index/TestTieredMergePolicy.cs         |  5 +--
 .../core/Index/TestTransactionRollback.cs       |  5 +--
 .../core/Index/TestTransactions.cs              |  9 ++---
 .../core/Index/TestTryDelete.cs                 |  7 ++--
 .../core/Search/BaseTestRangeFilter.cs          |  5 +--
 .../core/Search/FuzzyTermOnShortTermsTest.cs    |  6 ++--
 .../core/Search/Payloads/PayloadHelper.cs       |  7 ++--
 .../Search/Payloads/TestPayloadNearQuery.cs     |  5 +--
 .../Search/Payloads/TestPayloadTermQuery.cs     |  5 +--
 .../core/Search/Similarities/TestSimilarity2.cs |  9 ++---
 .../Search/Similarities/TestSimilarityBase.cs   |  9 ++---
 .../core/Search/Spans/TestBasics.cs             |  5 +--
 .../Search/Spans/TestFieldMaskingSpanQuery.cs   |  5 +--
 .../core/Search/Spans/TestNearSpansOrdered.cs   |  6 ++--
 .../core/Search/Spans/TestPayloadSpans.cs       |  7 ++--
 .../core/Search/Spans/TestSpanFirstQuery.cs     |  6 ++--
 .../Spans/TestSpanMultiTermQueryWrapper.cs      |  6 ++--
 .../core/Search/Spans/TestSpans.cs              |  5 +--
 .../core/Search/Spans/TestSpansAdvanced.cs      |  5 +--
 .../core/Search/TestAutomatonQuery.cs           |  5 +--
 .../core/Search/TestAutomatonQueryUnicode.cs    |  6 ++--
 .../core/Search/TestBoolean2.cs                 |  5 +--
 .../core/Search/TestBooleanMinShouldMatch.cs    |  5 +--
 .../core/Search/TestBooleanOr.cs                |  6 ++--
 .../core/Search/TestBooleanQuery.cs             |  7 ++--
 .../Search/TestBooleanQueryVisitSubscorers.cs   |  7 ++--
 .../core/Search/TestBooleanScorer.cs            |  7 ++--
 .../core/Search/TestCachingWrapperFilter.cs     |  7 ++--
 .../core/Search/TestConjunctions.cs             | 10 +++---
 .../core/Search/TestConstantScoreQuery.cs       |  5 +--
 .../core/Search/TestCustomSearcherSort.cs       |  7 ++--
 .../core/Search/TestDateFilter.cs               |  7 ++--
 .../core/Search/TestDateSort.cs                 |  8 +++--
 .../core/Search/TestDisjunctionMaxQuery.cs      |  9 ++---
 .../core/Search/TestDocBoost.cs                 |  7 ++--
 .../core/Search/TestDocIdSet.cs                 |  5 +--
 .../core/Search/TestDocTermOrdsRangeFilter.cs   |  7 ++--
 .../core/Search/TestDocTermOrdsRewriteMethod.cs |  7 ++--
 .../core/Search/TestDocValuesScoring.cs         |  8 +++--
 .../core/Search/TestEarlyTermination.cs         |  2 +-
 .../core/Search/TestElevationComparator.cs      |  5 +--
 .../core/Search/TestExplanations.cs             |  5 +--
 .../core/Search/TestFieldCacheRangeFilter.cs    |  5 +--
 .../core/Search/TestFieldCacheTermsFilter.cs    |  5 +--
 .../core/Search/TestFieldValueFilter.cs         |  6 ++--
 .../core/Search/TestFilteredQuery.cs            |  5 +--
 .../core/Search/TestFilteredSearch.cs           |  6 ++--
 .../core/Search/TestFuzzyQuery.cs               |  5 +--
 .../core/Search/TestIndexSearcher.cs            |  5 +--
 .../core/Search/TestLiveFieldValues.cs          |  9 ++---
 .../core/Search/TestMatchAllDocsQuery.cs        |  6 ++--
 .../core/Search/TestMinShouldMatch2.cs          |  9 ++---
 .../core/Search/TestMultiPhraseQuery.cs         |  7 ++--
 .../core/Search/TestMultiTermConstantScore.cs   |  9 ++---
 .../core/Search/TestMultiTermQueryRewrites.cs   |  5 +--
 .../core/Search/TestMultiThreadTermVectors.cs   |  5 +--
 .../Search/TestMultiValuedNumericRangeQuery.cs  |  7 ++--
 src/Lucene.Net.Tests/core/Search/TestNot.cs     |  6 ++--
 .../core/Search/TestNumericRangeQuery32.cs      | 11 +++---
 .../core/Search/TestNumericRangeQuery64.cs      | 11 +++---
 .../core/Search/TestPhrasePrefixQuery.cs        |  5 +--
 .../core/Search/TestPhraseQuery.cs              | 29 +++++++--------
 .../core/Search/TestPositionIncrement.cs        |  7 ++--
 .../core/Search/TestPrefixFilter.cs             |  6 ++--
 .../core/Search/TestPrefixInBooleanQuery.cs     |  6 ++--
 .../core/Search/TestPrefixQuery.cs              |  6 ++--
 .../core/Search/TestPrefixRandom.cs             |  6 ++--
 .../core/Search/TestQueryRescorer.cs            |  7 ++--
 .../core/Search/TestQueryWrapperFilter.cs       |  5 +--
 .../core/Search/TestRegexpQuery.cs              |  6 ++--
 .../core/Search/TestRegexpRandom.cs             |  9 ++---
 .../core/Search/TestRegexpRandom2.cs            |  5 +--
 .../core/Search/TestSameScoresWithThreads.cs    |  2 +-
 .../core/Search/TestScorerPerf.cs               |  5 +--
 .../core/Search/TestSearchAfter.cs              | 23 ++++++------
 .../core/Search/TestSearchWithThreads.cs        |  5 +--
 .../core/Search/TestSearcherManager.cs          |  2 +-
 .../core/Search/TestSimilarity.cs               |  6 ++--
 .../core/Search/TestSimilarityProvider.cs       |  6 ++--
 .../core/Search/TestSloppyPhraseQuery.cs        |  9 ++---
 src/Lucene.Net.Tests/core/Search/TestSort.cs    |  7 ++--
 .../core/Search/TestSortDocValues.cs            | 16 +++++----
 .../core/Search/TestSortRandom.cs               | 11 +++---
 .../core/Search/TestSortRescorer.cs             |  7 ++--
 .../core/Search/TestSubScorerFreqs.cs           |  7 ++--
 .../core/Search/TestTermRangeQuery.cs           |  5 +--
 .../core/Search/TestTermScorer.cs               |  5 +--
 .../core/Search/TestTermVectors.cs              | 10 +++---
 .../core/Search/TestTopDocsCollector.cs         |  2 +-
 .../core/Search/TestTopDocsMerge.cs             |  9 ++---
 .../core/Search/TestTopFieldCollector.cs        |  2 +-
 .../core/Search/TestTopScoreDocCollector.cs     |  2 +-
 .../core/Search/TestTotalHitCountCollector.cs   |  8 +++--
 .../core/Search/TestWildcard.cs                 |  5 +--
 .../core/Search/TestWildcardRandom.cs           |  5 +--
 .../core/Store/TestBufferedIndexInput.cs        |  5 +--
 .../core/Store/TestLockFactory.cs               |  5 +--
 .../core/Store/TestMultiMMap.cs                 |  5 +--
 .../core/Store/TestNRTCachingDirectory.cs       |  2 +-
 .../core/Store/TestRAMDirectory.cs              |  5 +--
 .../core/Store/TestWindowsMMap.cs               |  5 +--
 .../core/TestMergeSchedulerExternal.cs          |  5 +--
 .../core/Util/TestFieldCacheSanityChecker.cs    |  5 +--
 281 files changed, 1202 insertions(+), 927 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Codecs/Compressing/CompressingStoredFieldsWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Codecs/Compressing/CompressingStoredFieldsWriter.cs b/src/Lucene.Net.Core/Codecs/Compressing/CompressingStoredFieldsWriter.cs
index bb91237..28ba659 100644
--- a/src/Lucene.Net.Core/Codecs/Compressing/CompressingStoredFieldsWriter.cs
+++ b/src/Lucene.Net.Core/Codecs/Compressing/CompressingStoredFieldsWriter.cs
@@ -9,7 +9,7 @@ using System.Diagnostics;
 
 namespace Lucene.Net.Codecs.Compressing
 {
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Codecs/Lucene40/Lucene40StoredFieldsWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Codecs/Lucene40/Lucene40StoredFieldsWriter.cs b/src/Lucene.Net.Core/Codecs/Lucene40/Lucene40StoredFieldsWriter.cs
index a985f81..d54dae7 100644
--- a/src/Lucene.Net.Core/Codecs/Lucene40/Lucene40StoredFieldsWriter.cs
+++ b/src/Lucene.Net.Core/Codecs/Lucene40/Lucene40StoredFieldsWriter.cs
@@ -25,7 +25,7 @@ namespace Lucene.Net.Codecs.Lucene40
     /// the License.
     /// </summary>
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FieldInfo = Lucene.Net.Index.FieldInfo;
     using FieldInfos = Lucene.Net.Index.FieldInfos;
     using IndexableField = Lucene.Net.Index.IndexableField;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Codecs/StoredFieldsWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Codecs/StoredFieldsWriter.cs b/src/Lucene.Net.Core/Codecs/StoredFieldsWriter.cs
index 50232fa..d1a3ff4 100644
--- a/src/Lucene.Net.Core/Codecs/StoredFieldsWriter.cs
+++ b/src/Lucene.Net.Core/Codecs/StoredFieldsWriter.cs
@@ -21,7 +21,7 @@ namespace Lucene.Net.Codecs
     /// the License.
     /// </summary>
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FieldInfo = Lucene.Net.Index.FieldInfo;
     using FieldInfos = Lucene.Net.Index.FieldInfos;
     using IndexableField = Lucene.Net.Index.IndexableField;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/BinaryDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/BinaryDocValuesField.cs b/src/Lucene.Net.Core/Document/BinaryDocValuesField.cs
index b9694af..0001003 100644
--- a/src/Lucene.Net.Core/Document/BinaryDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/BinaryDocValuesField.cs
@@ -1,7 +1,9 @@
-namespace Lucene.Net.Document
-{
-    using BytesRef = Lucene.Net.Util.BytesRef;
 
+using Lucene.Net.Index;
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -19,8 +21,6 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    using FieldInfo = Lucene.Net.Index.FieldInfo;
-
     /// <summary>
     /// Field that stores a per-document <seealso cref="BytesRef"/> value.
     /// <p>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/ByteDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/ByteDocValuesField.cs b/src/Lucene.Net.Core/Document/ByteDocValuesField.cs
index b34c066..316c555 100644
--- a/src/Lucene.Net.Core/Document/ByteDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/ByteDocValuesField.cs
@@ -1,6 +1,7 @@
 using System;
 
-namespace Lucene.Net.Document
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/CompressionTools.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/CompressionTools.cs b/src/Lucene.Net.Core/Document/CompressionTools.cs
index 77451ba..567c522 100644
--- a/src/Lucene.Net.Core/Document/CompressionTools.cs
+++ b/src/Lucene.Net.Core/Document/CompressionTools.cs
@@ -1,8 +1,9 @@
-namespace Lucene.Net.Document
-{
-    using Lucene.Net.Support;
-    using System;
+using System;
+using Lucene.Net.Support;
+using Lucene.Net.Util;
 
+namespace Lucene.Net.Documents
+{
     /*
                  * Licensed to the Apache Software Foundation (ASF) under one or more
                  * contributor license agreements.  See the NOTICE file distributed with
@@ -20,10 +21,6 @@ namespace Lucene.Net.Document
                  * limitations under the License.
                  */
 
-    using BytesRef = Lucene.Net.Util.BytesRef;
-    using CharsRef = Lucene.Net.Util.CharsRef;
-    using UnicodeUtil = Lucene.Net.Util.UnicodeUtil;
-
     /// <summary>
     /// Simple utility class providing static methods to
     ///  compress and decompress binary data for stored fields.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/DateTools.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/DateTools.cs b/src/Lucene.Net.Core/Document/DateTools.cs
index f83854f..d4334d9 100644
--- a/src/Lucene.Net.Core/Document/DateTools.cs
+++ b/src/Lucene.Net.Core/Document/DateTools.cs
@@ -1,4 +1,9 @@
-namespace Lucene.Net.Document
+using System;
+using System.Globalization;
+using Lucene.Net.Search;
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -16,9 +21,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using System;
-
     // for javadocs
     // for javadocs
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/DerefBytesDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/DerefBytesDocValuesField.cs b/src/Lucene.Net.Core/Document/DerefBytesDocValuesField.cs
index bffc9fb..2b91e3d 100644
--- a/src/Lucene.Net.Core/Document/DerefBytesDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/DerefBytesDocValuesField.cs
@@ -1,4 +1,7 @@
-namespace Lucene.Net.Document
+
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -16,9 +19,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using BytesRef = Lucene.Net.Util.BytesRef;
-
     /// <summary>
     /// <p>
     /// Field that stores

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/Document.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/Document.cs b/src/Lucene.Net.Core/Document/Document.cs
index ce7c148..9546cc1 100644
--- a/src/Lucene.Net.Core/Document/Document.cs
+++ b/src/Lucene.Net.Core/Document/Document.cs
@@ -1,13 +1,12 @@
-namespace Lucene.Net.Document
-{
-    using System.Collections;
-    using System.Collections.Generic;
-    using System.Text;
-
-    // for javadoc
-    // for javadoc
-    using BytesRef = Lucene.Net.Util.BytesRef;
+using System.Collections;
+using System.Collections.Generic;
+using System.Text;
+using Lucene.Net.Index;
+using Lucene.Net.Search;
+using Lucene.Net.Util;
 
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -25,9 +24,6 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    // for javadoc
-    using IndexableField = Lucene.Net.Index.IndexableField;
-
     /// <summary>
     /// Documents are the unit of indexing and search.
     ///
@@ -39,9 +35,8 @@ namespace Lucene.Net.Document
     ///
     /// <p>Note that fields which are <i>not</i> <seealso cref="Lucene.Net.Index.IndexableFieldType#stored() stored"/> are
     /// <i>not</i> available in documents retrieved from the index, e.g. with {@link
-    /// ScoreDoc#doc} or <seealso cref="IndexReader#document(int)"/>.
+    /// ScoreDoc#doc} or <seealso cref="IndexReader#document(int)"/>.</p>
     /// </summary>
-
     public sealed class Document : IEnumerable<IndexableField>
     {
         private readonly List<IndexableField> Fields_Renamed = new List<IndexableField>();
@@ -133,7 +128,7 @@ namespace Lucene.Net.Document
         /// <returns> a <code>BytesRef[]</code> of binary field values </returns>
         public BytesRef[] GetBinaryValues(string name)
         {
-            List<BytesRef> result = new List<BytesRef>();
+            var result = new List<BytesRef>();
 
             foreach (IndexableField field in Fields_Renamed)
             {
@@ -201,7 +196,7 @@ namespace Lucene.Net.Document
         /// <returns> a <code>IndexableField[]</code> array </returns>
         public IndexableField[] GetFields(string name)
         {
-            List<IndexableField> result = new List<IndexableField>();
+            var result = new List<IndexableField>();
             foreach (IndexableField field in Fields_Renamed)
             {
                 if (field.Name().Equals(name))
@@ -241,7 +236,7 @@ namespace Lucene.Net.Document
         /// <returns> a <code>String[]</code> of field values </returns>
         public string[] GetValues(string name)
         {
-            List<string> result = new List<string>();
+            var result = new List<string>();
             foreach (IndexableField field in Fields_Renamed)
             {
                 if (field.Name().Equals(name) && field.StringValue != null)
@@ -283,7 +278,7 @@ namespace Lucene.Net.Document
         /// Prints the fields of a document for human consumption. </summary>
         public override string ToString()
         {
-            StringBuilder buffer = new StringBuilder();
+            var buffer = new StringBuilder();
             buffer.Append("Document<");
             for (int i = 0; i < Fields_Renamed.Count; i++)
             {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/DocumentStoredFieldVisitor.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/DocumentStoredFieldVisitor.cs b/src/Lucene.Net.Core/Document/DocumentStoredFieldVisitor.cs
index 4db94e3..e316d20 100644
--- a/src/Lucene.Net.Core/Document/DocumentStoredFieldVisitor.cs
+++ b/src/Lucene.Net.Core/Document/DocumentStoredFieldVisitor.cs
@@ -1,6 +1,8 @@
 using System.Collections.Generic;
 
-namespace Lucene.Net.Document
+using Lucene.Net.Index;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -18,10 +20,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using FieldInfo = Lucene.Net.Index.FieldInfo;
-    using StoredFieldVisitor = Lucene.Net.Index.StoredFieldVisitor;
-
     /// <summary>
     /// A <seealso cref="StoredFieldVisitor"/> that creates a {@link
     ///  Document} containing all stored fields, or only specific
@@ -35,7 +33,7 @@ namespace Lucene.Net.Document
 
     public class DocumentStoredFieldVisitor : StoredFieldVisitor
     {
-        private readonly Document Doc = new Document();
+        private readonly Documents.Document Doc = new Documents.Document();
         private readonly ISet<string> FieldsToAdd;
 
         /// <summary>
@@ -110,7 +108,7 @@ namespace Lucene.Net.Document
         ///         the stored information in the field instances is valid,
         ///         data such as boosts, indexing options, term vector options,
         ///         etc is not set. </returns>
-        public virtual Document Document
+        public virtual Documents.Document Document
         {
             get
             {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/DoubleDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/DoubleDocValuesField.cs b/src/Lucene.Net.Core/Document/DoubleDocValuesField.cs
index edde691..a74f852 100644
--- a/src/Lucene.Net.Core/Document/DoubleDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/DoubleDocValuesField.cs
@@ -1,4 +1,8 @@
-namespace Lucene.Net.Document
+using System;
+
+using Lucene.Net.Search;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -19,8 +23,7 @@ namespace Lucene.Net.Document
 
     // javadocs
     // javadocs
-    using System;
-
+    
     /// <summary>
     /// Syntactic sugar for encoding doubles as NumericDocValues
     /// via <seealso cref="Double#doubleToRawLongBits(double)"/>.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/DoubleField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/DoubleField.cs b/src/Lucene.Net.Core/Document/DoubleField.cs
index 166c972..45c07ae 100644
--- a/src/Lucene.Net.Core/Document/DoubleField.cs
+++ b/src/Lucene.Net.Core/Document/DoubleField.cs
@@ -1,4 +1,9 @@
-namespace Lucene.Net.Document
+using System;
+
+using Lucene.Net.Index;
+using Lucene.Net.Search;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -20,9 +25,7 @@ namespace Lucene.Net.Document
     // javadocs
     // javadocs
     // javadocs
-    using Lucene.Net.Index;
-    using System;
-
+    
     /// <summary>
     /// <p>
     /// Field that indexes <code>double</code> values
@@ -131,14 +134,14 @@ namespace Lucene.Net.Document
             TYPE_NOT_STORED.Tokenized = true;
             TYPE_NOT_STORED.OmitNorms = true;
             TYPE_NOT_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_NOT_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.DOUBLE;
+            TYPE_NOT_STORED.NumericTypeValue = Documents.FieldType.NumericType.DOUBLE;
             TYPE_NOT_STORED.Freeze();
 
             TYPE_STORED.Indexed = true;
             TYPE_STORED.Tokenized = true;
             TYPE_STORED.OmitNorms = true;
             TYPE_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.DOUBLE;
+            TYPE_STORED.NumericTypeValue = Documents.FieldType.NumericType.DOUBLE;
             TYPE_STORED.Stored = true;
             TYPE_STORED.Freeze();
         }
@@ -169,7 +172,7 @@ namespace Lucene.Net.Document
         public DoubleField(string name, double value, FieldType type)
             : base(name, type)
         {
-            if (type.NumericTypeValue != Lucene.Net.Document.FieldType.NumericType.DOUBLE)
+            if (type.NumericTypeValue != Documents.FieldType.NumericType.DOUBLE)
             {
                 throw new System.ArgumentException("type.numericType() must be DOUBLE but got " + type.NumericTypeValue);
             }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/Field.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/Field.cs b/src/Lucene.Net.Core/Document/Field.cs
index fdd10d5..1c656bf 100644
--- a/src/Lucene.Net.Core/Document/Field.cs
+++ b/src/Lucene.Net.Core/Document/Field.cs
@@ -1,11 +1,16 @@
-namespace Lucene.Net.Document
-{
-    using Lucene.Net.Analysis.Tokenattributes;
-    using Lucene.Net.Support; // javadocs
-    using System;
-    using System.IO;
-    using System.Text;
+using System;
+using System.IO;
+using System.Text;
+using Lucene.Net.Analysis;
+using Lucene.Net.Analysis.Tokenattributes;
+
+using Lucene.Net.Index;
+using Lucene.Net.Support;
+using Lucene.Net.Util;
 
+namespace Lucene.Net.Documents
+{
+    // javadocs
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -23,15 +28,7 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    using Analyzer = Lucene.Net.Analysis.Analyzer;
-    using BytesRef = Lucene.Net.Util.BytesRef;
-
     // javadocs
-    using IndexableField = Lucene.Net.Index.IndexableField;
-    using IndexableFieldType = Lucene.Net.Index.IndexableFieldType;
-    using NumericTokenStream = Lucene.Net.Analysis.NumericTokenStream;
-    using NumericType = Lucene.Net.Document.FieldType.NumericType;
-    using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     /// <summary>
     /// Expert: directly create a field for a document.  Most
@@ -608,7 +605,7 @@ namespace Lucene.Net.Document
                 return null;
             }
             Number n = new Number();
-            NumericType? numericType = ((FieldType)FieldType()).NumericTypeValue;
+            FieldType.NumericType? numericType = ((FieldType)FieldType()).NumericTypeValue;
             if (numericType != null)
             {
                 if (!(InternalTokenStream is NumericTokenStream))
@@ -622,19 +619,19 @@ namespace Lucene.Net.Document
                 object val = FieldsData;
                 switch (numericType)
                 {
-                    case NumericType.INT:
+                    case Documents.FieldType.NumericType.INT:
                         nts.SetIntValue(Convert.ToInt32(val));
                         break;
 
-                    case NumericType.LONG:
+                    case Documents.FieldType.NumericType.LONG:
                         nts.SetLongValue(Convert.ToInt64(val));
                         break;
 
-                    case NumericType.FLOAT:
+                    case Documents.FieldType.NumericType.FLOAT:
                         nts.SetFloatValue(Convert.ToSingle(val));
                         break;
 
-                    case NumericType.DOUBLE:
+                    case Documents.FieldType.NumericType.DOUBLE:
                         nts.SetDoubleValue(Convert.ToDouble(val));
                         break;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/FieldType.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/FieldType.cs b/src/Lucene.Net.Core/Document/FieldType.cs
index d43af2a..2eaa5f4 100644
--- a/src/Lucene.Net.Core/Document/FieldType.cs
+++ b/src/Lucene.Net.Core/Document/FieldType.cs
@@ -1,9 +1,10 @@
-namespace Lucene.Net.Document
-{
-    using Lucene.Net.Index;
-    using System;
-    using System.Text;
+using System;
+using System.Text;
+using Lucene.Net.Index;
+using Lucene.Net.Util;
 
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -22,11 +23,8 @@ namespace Lucene.Net.Document
          */
 
     // javadocs
-    using DocValuesType_e = Lucene.Net.Index.FieldInfo.DocValuesType_e;
-    using IndexableFieldType = Lucene.Net.Index.IndexableFieldType;
 
     // javadocs
-    using NumericUtils = Lucene.Net.Util.NumericUtils;
 
     /// <summary>
     /// Describes the properties of a field.
@@ -68,7 +66,7 @@ namespace Lucene.Net.Document
         private NumericType? numericType;
         private bool Frozen;
         private int NumericPrecisionStep_Renamed = NumericUtils.PRECISION_STEP_DEFAULT;
-        private DocValuesType_e? docValueType;
+        private FieldInfo.DocValuesType_e? docValueType;
 
         /// <summary>
         /// Create a new mutable FieldType with all of the properties from <code>ref</code>
@@ -407,7 +405,7 @@ namespace Lucene.Net.Document
         /// <exception cref="IllegalStateException"> if this FieldType is frozen against
         ///         future modifications. </exception>
         /// <seealso cref= #docValueType() </seealso>
-        public DocValuesType_e? DocValueType
+        public FieldInfo.DocValuesType_e? DocValueType
         {
             get
             {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/FloatDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/FloatDocValuesField.cs b/src/Lucene.Net.Core/Document/FloatDocValuesField.cs
index 1dde8a6..704fb35 100644
--- a/src/Lucene.Net.Core/Document/FloatDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/FloatDocValuesField.cs
@@ -1,4 +1,8 @@
-namespace Lucene.Net.Document
+using System;
+
+using Lucene.Net.Search;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -37,7 +41,7 @@ namespace Lucene.Net.Document
         /// Creates a new DocValues field with the specified 32-bit float value </summary>
         /// <param name="name"> field name </param>
         /// <param name="value"> 32-bit float value </param>
-        /// <exception cref="IllegalArgumentException"> if the field name is null </exception>
+        /// <exception cref="ArgumentException"> if the field name is null </exception>
         public FloatDocValuesField(string name, float value)
             : base(name, Support.Single.FloatToIntBits(value))
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/FloatField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/FloatField.cs b/src/Lucene.Net.Core/Document/FloatField.cs
index 8a74398..809e780 100644
--- a/src/Lucene.Net.Core/Document/FloatField.cs
+++ b/src/Lucene.Net.Core/Document/FloatField.cs
@@ -1,4 +1,9 @@
-namespace Lucene.Net.Document
+using System;
+
+using Lucene.Net.Index;
+using Lucene.Net.Search;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -20,9 +25,7 @@ namespace Lucene.Net.Document
     // javadocs
     // javadocs
     // javadocs
-    using Lucene.Net.Index;
-    using System;
-
+    
     /// <summary>
     /// <p>
     /// Field that indexes <code>float</code> values
@@ -125,13 +128,13 @@ namespace Lucene.Net.Document
             TYPE_NOT_STORED.Tokenized = true;
             TYPE_NOT_STORED.OmitNorms = true;
             TYPE_NOT_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_NOT_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.FLOAT;
+            TYPE_NOT_STORED.NumericTypeValue = Documents.FieldType.NumericType.FLOAT;
             TYPE_NOT_STORED.Freeze();
             TYPE_STORED.Indexed = true;
             TYPE_STORED.Tokenized = true;
             TYPE_STORED.OmitNorms = true;
             TYPE_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.FLOAT;
+            TYPE_STORED.NumericTypeValue = Documents.FieldType.NumericType.FLOAT;
             TYPE_STORED.Stored = true;
             TYPE_STORED.Freeze();
         }
@@ -168,7 +171,7 @@ namespace Lucene.Net.Document
         public FloatField(string name, float value, FieldType type)
             : base(name, type)
         {
-            if (type.NumericTypeValue != Lucene.Net.Document.FieldType.NumericType.FLOAT)
+            if (type.NumericTypeValue != Documents.FieldType.NumericType.FLOAT)
             {
                 throw new System.ArgumentException("type.numericType() must be FLOAT but got " + type.NumericTypeValue);
             }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/IntDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/IntDocValuesField.cs b/src/Lucene.Net.Core/Document/IntDocValuesField.cs
index cbc3143..dee8692 100644
--- a/src/Lucene.Net.Core/Document/IntDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/IntDocValuesField.cs
@@ -1,4 +1,6 @@
-namespace Lucene.Net.Document
+
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/IntField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/IntField.cs b/src/Lucene.Net.Core/Document/IntField.cs
index 84e739f..c3b1996 100644
--- a/src/Lucene.Net.Core/Document/IntField.cs
+++ b/src/Lucene.Net.Core/Document/IntField.cs
@@ -1,11 +1,11 @@
+using System;
+
 using Lucene.Net.Index;
+using Lucene.Net.Search;
 
-namespace Lucene.Net.Document
+namespace Lucene.Net.Documents
 {
-    // javadocs
-    // javadocs
-    using System;
-
+ 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -127,13 +127,13 @@ namespace Lucene.Net.Document
             TYPE_NOT_STORED.Tokenized = true;
             TYPE_NOT_STORED.OmitNorms = true;
             TYPE_NOT_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_NOT_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.INT;
+            TYPE_NOT_STORED.NumericTypeValue = Documents.FieldType.NumericType.INT;
             TYPE_NOT_STORED.Freeze();
             TYPE_STORED.Indexed = true;
             TYPE_STORED.Tokenized = true;
             TYPE_STORED.OmitNorms = true;
             TYPE_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.INT;
+            TYPE_STORED.NumericTypeValue = Documents.FieldType.NumericType.INT;
             TYPE_STORED.Stored = true;
             TYPE_STORED.Freeze();
         }
@@ -170,7 +170,7 @@ namespace Lucene.Net.Document
         public IntField(string name, int value, FieldType type)
             : base(name, type)
         {
-            if (type.NumericTypeValue != Lucene.Net.Document.FieldType.NumericType.INT)
+            if (type.NumericTypeValue != Documents.FieldType.NumericType.INT)
             {
                 throw new System.ArgumentException("type.numericType() must be INT but got " + type.NumericTypeValue);
             }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/LongDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/LongDocValuesField.cs b/src/Lucene.Net.Core/Document/LongDocValuesField.cs
index 7d4a988..d40ac74 100644
--- a/src/Lucene.Net.Core/Document/LongDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/LongDocValuesField.cs
@@ -1,4 +1,7 @@
-namespace Lucene.Net.Document
+using System;
+
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -38,7 +41,7 @@ namespace Lucene.Net.Document
         /// Creates a new DocValues field with the specified 64-bit long value </summary>
         /// <param name="name"> field name </param>
         /// <param name="value"> 64-bit long value </param>
-        /// <exception cref="IllegalArgumentException"> if the field name is null </exception>
+        /// <exception cref="ArgumentException"> if the field name is null </exception>
         public LongDocValuesField(string name, long value)
             : base(name, value)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/LongField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/LongField.cs b/src/Lucene.Net.Core/Document/LongField.cs
index 320a286..74d63df 100644
--- a/src/Lucene.Net.Core/Document/LongField.cs
+++ b/src/Lucene.Net.Core/Document/LongField.cs
@@ -1,7 +1,7 @@
 using System;
 using Lucene.Net.Index;
 
-namespace Lucene.Net.Document
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -20,11 +20,6 @@ namespace Lucene.Net.Document
      * limitations under the License.
      */
 
-    // javadocs
-    
-    // javadocs
-    // javadocs
-
     /// <summary>
     /// <p>
     /// Field that indexes <code>long</code> values
@@ -137,13 +132,13 @@ namespace Lucene.Net.Document
             TYPE_NOT_STORED.Tokenized = true;
             TYPE_NOT_STORED.OmitNorms = true;
             TYPE_NOT_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_NOT_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.LONG;
+            TYPE_NOT_STORED.NumericTypeValue = Documents.FieldType.NumericType.LONG;
             TYPE_NOT_STORED.Freeze();
             TYPE_STORED.Indexed = true;
             TYPE_STORED.Tokenized = true;
             TYPE_STORED.OmitNorms = true;
             TYPE_STORED.IndexOptionsValue = FieldInfo.IndexOptions.DOCS_ONLY;
-            TYPE_STORED.NumericTypeValue = Lucene.Net.Document.FieldType.NumericType.LONG;
+            TYPE_STORED.NumericTypeValue = Documents.FieldType.NumericType.LONG;
             TYPE_STORED.Stored = true;
             TYPE_STORED.Freeze();
         }
@@ -180,7 +175,7 @@ namespace Lucene.Net.Document
         public LongField(string name, long value, FieldType type)
             : base(name, type)
         {
-            if (type.NumericTypeValue != Lucene.Net.Document.FieldType.NumericType.LONG)
+            if (type.NumericTypeValue != Documents.FieldType.NumericType.LONG)
             {
                 throw new System.ArgumentException("type.numericType() must be LONG but got " + type.NumericTypeValue);
             }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/NumericDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/NumericDocValuesField.cs b/src/Lucene.Net.Core/Document/NumericDocValuesField.cs
index 41fede7..ac3da29 100644
--- a/src/Lucene.Net.Core/Document/NumericDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/NumericDocValuesField.cs
@@ -1,6 +1,8 @@
 using System;
 
-namespace Lucene.Net.Document
+using Lucene.Net.Index;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -18,9 +20,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using FieldInfo = Lucene.Net.Index.FieldInfo;
-
     /// <summary>
     /// <p>
     /// Field that stores a per-document <code>long</code> value for scoring,

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/PackedLongDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/PackedLongDocValuesField.cs b/src/Lucene.Net.Core/Document/PackedLongDocValuesField.cs
index 55b1f20..ea2e11b 100644
--- a/src/Lucene.Net.Core/Document/PackedLongDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/PackedLongDocValuesField.cs
@@ -1,4 +1,7 @@
-namespace Lucene.Net.Document
+using System;
+
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -39,7 +42,7 @@ namespace Lucene.Net.Document
         /// Creates a new DocValues field with the specified long value </summary>
         /// <param name="name"> field name </param>
         /// <param name="value"> 64-bit long value </param>
-        /// <exception cref="IllegalArgumentException"> if the field name is null </exception>
+        /// <exception cref="ArgumentException"> if the field name is null </exception>
         public PackedLongDocValuesField(string name, long value)
             : base(name, value)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/ShortDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/ShortDocValuesField.cs b/src/Lucene.Net.Core/Document/ShortDocValuesField.cs
index 122dd06..0826785 100644
--- a/src/Lucene.Net.Core/Document/ShortDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/ShortDocValuesField.cs
@@ -1,4 +1,7 @@
-namespace Lucene.Net.Document
+using System;
+
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -39,7 +42,7 @@ namespace Lucene.Net.Document
         /// Creates a new DocValues field with the specified 16-bit short value </summary>
         /// <param name="name"> field name </param>
         /// <param name="value"> 16-bit short value </param>
-        /// <exception cref="IllegalArgumentException"> if the field name is null </exception>
+        /// <exception cref="ArgumentException"> if the field name is null </exception>
         public ShortDocValuesField(string name, short value)
             : base(name, value)
         {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/SortedBytesDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/SortedBytesDocValuesField.cs b/src/Lucene.Net.Core/Document/SortedBytesDocValuesField.cs
index c9b4650..a0eb556 100644
--- a/src/Lucene.Net.Core/Document/SortedBytesDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/SortedBytesDocValuesField.cs
@@ -1,4 +1,7 @@
-namespace Lucene.Net.Document
+
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -16,9 +19,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using BytesRef = Lucene.Net.Util.BytesRef;
-
     /// <summary>
     /// <p>
     /// Field that stores

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/SortedDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/SortedDocValuesField.cs b/src/Lucene.Net.Core/Document/SortedDocValuesField.cs
index ed66dbb..04afea2 100644
--- a/src/Lucene.Net.Core/Document/SortedDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/SortedDocValuesField.cs
@@ -1,7 +1,9 @@
-namespace Lucene.Net.Document
-{
-    using BytesRef = Lucene.Net.Util.BytesRef;
 
+using Lucene.Net.Index;
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -19,8 +21,6 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    using FieldInfo = Lucene.Net.Index.FieldInfo;
-
     /// <summary>
     /// <p>
     /// Field that stores
@@ -37,7 +37,6 @@ namespace Lucene.Net.Document
     ///
     ///
     /// </summary>
-
     public class SortedDocValuesField : Field
     {
         /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/SortedSetDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/SortedSetDocValuesField.cs b/src/Lucene.Net.Core/Document/SortedSetDocValuesField.cs
index 0ec44be..bff3aa7 100644
--- a/src/Lucene.Net.Core/Document/SortedSetDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/SortedSetDocValuesField.cs
@@ -1,7 +1,9 @@
-namespace Lucene.Net.Document
-{
-    using BytesRef = Lucene.Net.Util.BytesRef;
 
+using Lucene.Net.Index;
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -19,8 +21,6 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    using FieldInfo = Lucene.Net.Index.FieldInfo;
-
     /// <summary>
     /// <p>
     /// Field that stores

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/StoredField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/StoredField.cs b/src/Lucene.Net.Core/Document/StoredField.cs
index 0289458..860a56a 100644
--- a/src/Lucene.Net.Core/Document/StoredField.cs
+++ b/src/Lucene.Net.Core/Document/StoredField.cs
@@ -1,9 +1,11 @@
-namespace Lucene.Net.Document
+using Lucene.Net.Index;
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
 {
     // javadocs
     // javadocs
-    using BytesRef = Lucene.Net.Util.BytesRef;
-
+    
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
      * contributor license agreements.  See the NOTICE file distributed with

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/StraightBytesDocValuesField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/StraightBytesDocValuesField.cs b/src/Lucene.Net.Core/Document/StraightBytesDocValuesField.cs
index 417899c..fea1f2a 100644
--- a/src/Lucene.Net.Core/Document/StraightBytesDocValuesField.cs
+++ b/src/Lucene.Net.Core/Document/StraightBytesDocValuesField.cs
@@ -1,4 +1,6 @@
-namespace Lucene.Net.Document
+using Lucene.Net.Util;
+
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -16,9 +18,6 @@ namespace Lucene.Net.Document
      * See the License for the specific language governing permissions and
      * limitations under the License.
      */
-
-    using BytesRef = Lucene.Net.Util.BytesRef;
-
     /// <summary>
     /// <p>
     /// Field that stores

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/StringField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/StringField.cs b/src/Lucene.Net.Core/Document/StringField.cs
index 07f7d72..86abc2f 100644
--- a/src/Lucene.Net.Core/Document/StringField.cs
+++ b/src/Lucene.Net.Core/Document/StringField.cs
@@ -1,6 +1,6 @@
 using Lucene.Net.Index;
 
-namespace Lucene.Net.Document
+namespace Lucene.Net.Documents
 {
     /*
      * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Document/TextField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Document/TextField.cs b/src/Lucene.Net.Core/Document/TextField.cs
index 9bd9f78..cdb6482 100644
--- a/src/Lucene.Net.Core/Document/TextField.cs
+++ b/src/Lucene.Net.Core/Document/TextField.cs
@@ -1,7 +1,8 @@
-namespace Lucene.Net.Document
-{
-    using System.IO;
+using System.IO;
+using Lucene.Net.Analysis;
 
+namespace Lucene.Net.Documents
+{
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
          * contributor license agreements.  See the NOTICE file distributed with
@@ -19,8 +20,6 @@ namespace Lucene.Net.Document
          * limitations under the License.
          */
 
-    using TokenStream = Lucene.Net.Analysis.TokenStream;
-
     /// <summary>
     /// A field that is indexed and tokenized, without term
     ///  vectors.  For example this would be used on a 'body'

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/BinaryDocValuesFieldUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/BinaryDocValuesFieldUpdates.cs b/src/Lucene.Net.Core/Index/BinaryDocValuesFieldUpdates.cs
index 0db32d2..46ef31b 100644
--- a/src/Lucene.Net.Core/Index/BinaryDocValuesFieldUpdates.cs
+++ b/src/Lucene.Net.Core/Index/BinaryDocValuesFieldUpdates.cs
@@ -1,8 +1,9 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using BinaryDocValuesUpdate = Lucene.Net.Index.DocValuesUpdate.BinaryDocValuesUpdate;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/CheckIndex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/CheckIndex.cs b/src/Lucene.Net.Core/Index/CheckIndex.cs
index 8447bac..b8dc100 100644
--- a/src/Lucene.Net.Core/Index/CheckIndex.cs
+++ b/src/Lucene.Net.Core/Index/CheckIndex.cs
@@ -31,7 +31,7 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesStatus = Lucene.Net.Index.CheckIndex.Status.DocValuesStatus;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexInput = Lucene.Net.Store.IndexInput;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/DocValuesUpdate.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/DocValuesUpdate.cs b/src/Lucene.Net.Core/Index/DocValuesUpdate.cs
index 7f27e42..8ce9307 100644
--- a/src/Lucene.Net.Core/Index/DocValuesUpdate.cs
+++ b/src/Lucene.Net.Core/Index/DocValuesUpdate.cs
@@ -1,7 +1,9 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using RamUsageEstimator = Lucene.Net.Util.RamUsageEstimator;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/IndexReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/IndexReader.cs b/src/Lucene.Net.Core/Index/IndexReader.cs
index d1c95b5..8229a6d 100644
--- a/src/Lucene.Net.Core/Index/IndexReader.cs
+++ b/src/Lucene.Net.Core/Index/IndexReader.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.IO;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -26,8 +27,8 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using DocumentStoredFieldVisitor = Lucene.Net.Document.DocumentStoredFieldVisitor;
+    using Document = Documents.Document;
+    using DocumentStoredFieldVisitor = DocumentStoredFieldVisitor;
     using IOUtils = Lucene.Net.Util.IOUtils;
 
     // javadocs

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/IndexableFieldType.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/IndexableFieldType.cs b/src/Lucene.Net.Core/Index/IndexableFieldType.cs
index e9ed61f..b30e5d1 100644
--- a/src/Lucene.Net.Core/Index/IndexableFieldType.cs
+++ b/src/Lucene.Net.Core/Index/IndexableFieldType.cs
@@ -1,4 +1,5 @@
-using Lucene.Net.Document;
+
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/NumericDocValuesFieldUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/NumericDocValuesFieldUpdates.cs b/src/Lucene.Net.Core/Index/NumericDocValuesFieldUpdates.cs
index 143b4aa..684f62a 100644
--- a/src/Lucene.Net.Core/Index/NumericDocValuesFieldUpdates.cs
+++ b/src/Lucene.Net.Core/Index/NumericDocValuesFieldUpdates.cs
@@ -1,12 +1,13 @@
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using InPlaceMergeSorter = Lucene.Net.Util.InPlaceMergeSorter;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using NumericDocValuesUpdate = Lucene.Net.Index.DocValuesUpdate.NumericDocValuesUpdate;
     using PackedInts = Lucene.Net.Util.Packed.PackedInts;
     using PagedGrowableWriter = Lucene.Net.Util.Packed.PagedGrowableWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Index/ReadersAndUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Index/ReadersAndUpdates.cs b/src/Lucene.Net.Core/Index/ReadersAndUpdates.cs
index 2e01b57..d1026af 100644
--- a/src/Lucene.Net.Core/Index/ReadersAndUpdates.cs
+++ b/src/Lucene.Net.Core/Index/ReadersAndUpdates.cs
@@ -3,11 +3,12 @@ using System.Collections.Generic;
 using System.Diagnostics;
 using System.Globalization;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Support;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
 
@@ -36,7 +37,7 @@ namespace Lucene.Net.Index
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LiveDocsFormat = Lucene.Net.Codecs.LiveDocsFormat;
     using MutableBits = Lucene.Net.Util.MutableBits;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using TrackingDirectoryWrapper = Lucene.Net.Store.TrackingDirectoryWrapper;
 
     // Used by IndexWriter to hold open SegmentReaders (for

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Search/FieldCache.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/FieldCache.cs b/src/Lucene.Net.Core/Search/FieldCache.cs
index d4c35ee..fa9a75b 100644
--- a/src/Lucene.Net.Core/Search/FieldCache.cs
+++ b/src/Lucene.Net.Core/Search/FieldCache.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -28,11 +29,11 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using DoubleField = Lucene.Net.Document.DoubleField;
-    using FloatField = Lucene.Net.Document.FloatField;
-    using IntField = Lucene.Net.Document.IntField;
-    using LongField = Lucene.Net.Document.LongField;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using DoubleField = DoubleField;
+    using FloatField = FloatField;
+    using IntField = IntField;
+    using LongField = LongField;
+    using NumericDocValuesField = NumericDocValuesField;
     using NumericUtils = Lucene.Net.Util.NumericUtils;
     using RamUsageEstimator = Lucene.Net.Util.RamUsageEstimator;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Search/IndexSearcher.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/IndexSearcher.cs b/src/Lucene.Net.Core/Search/IndexSearcher.cs
index ee5ba74..2740a8a 100644
--- a/src/Lucene.Net.Core/Search/IndexSearcher.cs
+++ b/src/Lucene.Net.Core/Search/IndexSearcher.cs
@@ -27,7 +27,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     // javadocs
     using IndexReader = Lucene.Net.Index.IndexReader;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Search/NumericRangeQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/NumericRangeQuery.cs b/src/Lucene.Net.Core/Search/NumericRangeQuery.cs
index b035e4f..0e3db46 100644
--- a/src/Lucene.Net.Core/Search/NumericRangeQuery.cs
+++ b/src/Lucene.Net.Core/Search/NumericRangeQuery.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -31,7 +32,7 @@ namespace Lucene.Net.Search
     // for javadocs
     // for javadocs
     // for javadocs
-    using NumericType = Lucene.Net.Document.FieldType.NumericType;
+    using NumericType = FieldType.NumericType;
     using NumericUtils = Lucene.Net.Util.NumericUtils;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Search/Similarities/TFIDFSimilarity.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/Similarities/TFIDFSimilarity.cs b/src/Lucene.Net.Core/Search/Similarities/TFIDFSimilarity.cs
index 8b80af9..782e80f 100644
--- a/src/Lucene.Net.Core/Search/Similarities/TFIDFSimilarity.cs
+++ b/src/Lucene.Net.Core/Search/Similarities/TFIDFSimilarity.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search.Similarities
 {
     /*
@@ -450,7 +452,7 @@ namespace Lucene.Net.Search.Similarities
     ///
     ///      <ul>
     ///        <li><b>Field boost</b> - set by calling
-    ///        <seealso cref="Lucene.Net.Document.Field#setBoost(float) field.setBoost()"/>
+    ///        <seealso cref="Field#setBoost(float) field.setBoost()"/>
     ///        before adding the field to a document.
     ///        </li>
     ///        <li><b>lengthNorm</b> - computed

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Core/Util/NumericUtils.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Util/NumericUtils.cs b/src/Lucene.Net.Core/Util/NumericUtils.cs
index e09d942..41ce83a 100644
--- a/src/Lucene.Net.Core/Util/NumericUtils.cs
+++ b/src/Lucene.Net.Core/Util/NumericUtils.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Util
 {
     using Lucene.Net.Search;
@@ -6,9 +8,9 @@ namespace Lucene.Net.Util
     using FilteredTermsEnum = Lucene.Net.Index.FilteredTermsEnum;
 
     // javadocs
-    using FloatField = Lucene.Net.Document.FloatField; // javadocs
-    using IntField = Lucene.Net.Document.IntField; // javadocs
-    using LongField = Lucene.Net.Document.LongField; // javadocs
+    using FloatField = FloatField; // javadocs
+    using IntField = IntField; // javadocs
+    using LongField = LongField; // javadocs
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Analysis/BaseTokenStreamTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Analysis/BaseTokenStreamTestCase.cs b/src/Lucene.Net.TestFramework/Analysis/BaseTokenStreamTestCase.cs
index 7134361..f2f1bde 100644
--- a/src/Lucene.Net.TestFramework/Analysis/BaseTokenStreamTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Analysis/BaseTokenStreamTestCase.cs
@@ -1,5 +1,6 @@
 using System.Linq;
 using Apache.NMS.Util;
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using NUnit.Framework;
 using System;
@@ -34,16 +35,16 @@ namespace Lucene.Net.Analysis
     using System.IO;
     using Attribute = Lucene.Net.Util.Attribute;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IAttribute = Lucene.Net.Util.IAttribute;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;   
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// base class for all Lucene unit tests that use TokenStreams.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Analysis/CollationTestBase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Analysis/CollationTestBase.cs b/src/Lucene.Net.TestFramework/Analysis/CollationTestBase.cs
index adf6f86..1b6e12a 100644
--- a/src/Lucene.Net.TestFramework/Analysis/CollationTestBase.cs
+++ b/src/Lucene.Net.TestFramework/Analysis/CollationTestBase.cs
@@ -2,6 +2,7 @@ using Lucene.Net.Analysis.Tokenattributes;
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Analysis
 {
@@ -29,9 +30,9 @@ namespace Lucene.Net.Analysis
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexableBinaryStringTools = Lucene.Net.Util.IndexableBinaryStringTools;
     using IndexableField = Lucene.Net.Index.IndexableField;
     using IndexReader = Lucene.Net.Index.IndexReader;
@@ -44,13 +45,13 @@ namespace Lucene.Net.Analysis
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
     using Sort = Lucene.Net.Search.Sort;
     using SortField = Lucene.Net.Search.SortField;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TermRangeFilter = Lucene.Net.Search.TermRangeFilter;
     using TermRangeQuery = Lucene.Net.Search.TermRangeQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// base test class for testing Unicode collation.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseCompressingDocValuesFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseCompressingDocValuesFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseCompressingDocValuesFormatTestCase.cs
index 7a24fcc..d88ecb4 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseCompressingDocValuesFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseCompressingDocValuesFormatTestCase.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using System.Collections.Generic;
 
@@ -5,7 +6,7 @@ namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -25,7 +26,7 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using PackedInts = Lucene.Net.Util.Packed.PackedInts;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseDocValuesFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseDocValuesFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseDocValuesFormatTestCase.cs
index 0d1a25c..3c6c02d 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseDocValuesFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseDocValuesFormatTestCase.cs
@@ -1,4 +1,5 @@
 using Apache.NMS.Util;
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using System;
 using System.Collections.Generic;
@@ -27,31 +28,31 @@ namespace Lucene.Net.Index
          */
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BooleanClause = Lucene.Net.Search.BooleanClause;
     using BooleanQuery = Lucene.Net.Search.BooleanQuery;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using BytesRefHash = Lucene.Net.Util.BytesRefHash;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using FloatDocValuesField = Lucene.Net.Document.FloatDocValuesField;
+    using FloatDocValuesField = FloatDocValuesField;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using Lucene42DocValuesFormat = Lucene.Net.Codecs.Lucene42.Lucene42DocValuesFormat;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using Query = Lucene.Net.Search.Query;
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
     using SeekStatus = Lucene.Net.Index.TermsEnum.SeekStatus;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using StoredField = StoredField;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TopDocs = Lucene.Net.Search.TopDocs;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseIndexFileFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseIndexFileFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseIndexFileFormatTestCase.cs
index 3fed5ce..693540e 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseIndexFileFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseIndexFileFormatTestCase.cs
@@ -6,7 +6,7 @@ namespace Lucene.Net.Index
 {
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseMergePolicyTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseMergePolicyTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseMergePolicyTestCase.cs
index babf98b..23b1448 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseMergePolicyTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseMergePolicyTestCase.cs
@@ -6,7 +6,7 @@ using NUnit.Framework;
 namespace Lucene.Net.Index
 {
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BasePostingsFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BasePostingsFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BasePostingsFormatTestCase.cs
index 46ae2ee..347fa9c 100644
--- a/src/Lucene.Net.TestFramework/Index/BasePostingsFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BasePostingsFormatTestCase.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using Lucene.Net.Support;
 using System;
@@ -32,12 +33,12 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using Constants = Lucene.Net.Util.Constants;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesType = Lucene.Net.Index.FieldInfo.DocValuesType_e;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldsConsumer = Lucene.Net.Codecs.FieldsConsumer;
     using FieldsProducer = Lucene.Net.Codecs.FieldsProducer;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using FlushInfo = Lucene.Net.Store.FlushInfo;
     using IOContext = Lucene.Net.Store.IOContext;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
index d6246db..1e0d93a 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseStoredFieldsFormatTestCase.cs
@@ -1,5 +1,6 @@
 using Apache.NMS.Util;
 using Lucene.Net.Codecs;
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using Lucene.Net.Support;
 using Lucene.Net.Util;
@@ -15,15 +16,15 @@ namespace Lucene.Net.Index
     using Directory = Lucene.Net.Store.Directory;
 
     //using SimpleTextCodec = Lucene.Net.Codecs.simpletext.SimpleTextCodec;
-    using Document = Lucene.Net.Document.Document;
-    using DoubleField = Lucene.Net.Document.DoubleField;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using DoubleField = DoubleField;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
-    using FloatField = Lucene.Net.Document.FloatField;
+    using FieldType = FieldType;
+    using FloatField = FloatField;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
-    using IntField = Lucene.Net.Document.IntField;
-    using LongField = Lucene.Net.Document.LongField;
+    using IntField = IntField;
+    using LongField = LongField;
     using Lucene46Codec = Lucene.Net.Codecs.Lucene46.Lucene46Codec;
     using MMapDirectory = Lucene.Net.Store.MMapDirectory;
 
@@ -48,11 +49,11 @@ namespace Lucene.Net.Index
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using NumericRangeQuery = Lucene.Net.Search.NumericRangeQuery;
     using Query = Lucene.Net.Search.Query;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
+    using StoredField = StoredField;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TopDocs = Lucene.Net.Search.TopDocs;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/BaseTermVectorsFormatTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/BaseTermVectorsFormatTestCase.cs b/src/Lucene.Net.TestFramework/Index/BaseTermVectorsFormatTestCase.cs
index 6b326b5..312e16c 100644
--- a/src/Lucene.Net.TestFramework/Index/BaseTermVectorsFormatTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/BaseTermVectorsFormatTestCase.cs
@@ -5,6 +5,7 @@ using System.Collections.Generic;
 using System.Linq;
 using System.Threading;
 using Lucene.Net.Codecs;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -16,19 +17,19 @@ namespace Lucene.Net.Index
     using CharTermAttribute = Lucene.Net.Analysis.Tokenattributes.CharTermAttribute;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using OffsetAttribute = Lucene.Net.Analysis.Tokenattributes.OffsetAttribute;
     using PayloadAttribute = Lucene.Net.Analysis.Tokenattributes.PayloadAttribute;
     using PositionIncrementAttribute = Lucene.Net.Analysis.Tokenattributes.PositionIncrementAttribute;
     using SeekStatus = Lucene.Net.Index.TermsEnum.SeekStatus;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/DocHelper.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/DocHelper.cs b/src/Lucene.Net.TestFramework/Index/DocHelper.cs
index 91a56fa..d80d755 100644
--- a/src/Lucene.Net.TestFramework/Index/DocHelper.cs
+++ b/src/Lucene.Net.TestFramework/Index/DocHelper.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using Lucene.Net.Util;
 using System;
@@ -25,16 +26,16 @@ namespace Lucene.Net.Index
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
-    using TextField = Lucene.Net.Document.TextField;
+    using StoredField = StoredField;
+    using StringField = StringField;
+    using TextField = TextField;
 
     public class DocHelper
     {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs b/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
index 723c92e..824ca0e 100644
--- a/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Index/ThreadedIndexingAndSearchingTestCase.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
 using System.Threading.Tasks;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -14,9 +15,9 @@ namespace Lucene.Net.Index
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FailOnNonBulkMergesInfoStream = Lucene.Net.Util.FailOnNonBulkMergesInfoStream;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Search/QueryUtils.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Search/QueryUtils.cs b/src/Lucene.Net.TestFramework/Search/QueryUtils.cs
index 20436ea..d6cc5c5 100644
--- a/src/Lucene.Net.TestFramework/Search/QueryUtils.cs
+++ b/src/Lucene.Net.TestFramework/Search/QueryUtils.cs
@@ -13,7 +13,7 @@ namespace Lucene.Net.Search
     using Bits = Lucene.Net.Util.Bits;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;


[2/7] Namespace rename Lucene.Net.Document -> Documents

Posted by sy...@apache.org.
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPrefixQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPrefixQuery.cs b/src/Lucene.Net.Tests/core/Search/TestPrefixQuery.cs
index dc2433d..b1e4c16 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPrefixQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPrefixQuery.cs
@@ -1,8 +1,10 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -21,7 +23,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MultiFields = Lucene.Net.Index.MultiFields;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPrefixRandom.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPrefixRandom.cs b/src/Lucene.Net.Tests/core/Search/TestPrefixRandom.cs
index 30b378c..9a264b7 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPrefixRandom.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPrefixRandom.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -5,8 +7,8 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FilteredTermsEnum = Lucene.Net.Index.FilteredTermsEnum;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestQueryRescorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestQueryRescorer.cs b/src/Lucene.Net.Tests/core/Search/TestQueryRescorer.cs
index d03b0ef..2f47533 100644
--- a/src/Lucene.Net.Tests/core/Search/TestQueryRescorer.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestQueryRescorer.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -30,11 +31,11 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using Occur = Lucene.Net.Search.BooleanClause.Occur;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using SpanNearQuery = Lucene.Net.Search.Spans.SpanNearQuery;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestQueryWrapperFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestQueryWrapperFilter.cs b/src/Lucene.Net.Tests/core/Search/TestQueryWrapperFilter.cs
index 06ee5f6..adbdff4 100644
--- a/src/Lucene.Net.Tests/core/Search/TestQueryWrapperFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestQueryWrapperFilter.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -22,9 +23,9 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using Occur = Lucene.Net.Search.BooleanClause.Occur;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestRegexpQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestRegexpQuery.cs b/src/Lucene.Net.Tests/core/Search/TestRegexpQuery.cs
index 9999b9e..d4811c0 100644
--- a/src/Lucene.Net.Tests/core/Search/TestRegexpQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestRegexpQuery.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Support;
@@ -25,8 +27,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestRegexpRandom.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestRegexpRandom.cs b/src/Lucene.Net.Tests/core/Search/TestRegexpRandom.cs
index 02bd23e..218cf69 100644
--- a/src/Lucene.Net.Tests/core/Search/TestRegexpRandom.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestRegexpRandom.cs
@@ -1,13 +1,14 @@
 using System.Globalization;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -32,7 +33,7 @@ namespace Lucene.Net.Search
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Create an index with terms from 000-999.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestRegexpRandom2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestRegexpRandom2.cs b/src/Lucene.Net.Tests/core/Search/TestRegexpRandom2.cs
index fc31d45..61df4e5 100644
--- a/src/Lucene.Net.Tests/core/Search/TestRegexpRandom2.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestRegexpRandom2.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -13,8 +14,8 @@ namespace Lucene.Net.Search
     using CharsRef = Lucene.Net.Util.CharsRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FilteredTermsEnum = Lucene.Net.Index.FilteredTermsEnum;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSameScoresWithThreads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSameScoresWithThreads.cs b/src/Lucene.Net.Tests/core/Search/TestSameScoresWithThreads.cs
index e60e3b5..cc737b0 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSameScoresWithThreads.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSameScoresWithThreads.cs
@@ -8,7 +8,7 @@ namespace Lucene.Net.Search
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestScorerPerf.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestScorerPerf.cs b/src/Lucene.Net.Tests/core/Search/TestScorerPerf.cs
index 35a1486..22eb933 100644
--- a/src/Lucene.Net.Tests/core/Search/TestScorerPerf.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestScorerPerf.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections;
@@ -10,8 +11,8 @@ namespace Lucene.Net.Search
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
     using DocIdBitSet = Lucene.Net.Util.DocIdBitSet;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSearchAfter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSearchAfter.cs b/src/Lucene.Net.Tests/core/Search/TestSearchAfter.cs
index 39048c6..40412e0 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSearchAfter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSearchAfter.cs
@@ -1,12 +1,13 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Randomized.Generators;
     using Lucene.Net.Support;
     using NUnit.Framework;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using BytesRef = Lucene.Net.Util.BytesRef;
 
     /*
@@ -28,20 +29,20 @@ namespace Lucene.Net.Search
 
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using DoubleField = Lucene.Net.Document.DoubleField;
+    using Document = Documents.Document;
+    using DoubleField = DoubleField;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
-    using FloatDocValuesField = Lucene.Net.Document.FloatDocValuesField;
-    using FloatField = Lucene.Net.Document.FloatField;
+    using Field = Field;
+    using FloatDocValuesField = FloatDocValuesField;
+    using FloatField = FloatField;
     using IndexReader = Lucene.Net.Index.IndexReader;
-    using IntField = Lucene.Net.Document.IntField;
-    using LongField = Lucene.Net.Document.LongField;
+    using IntField = IntField;
+    using LongField = LongField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using StoredField = Lucene.Net.Document.StoredField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using StoredField = StoredField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSearchWithThreads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSearchWithThreads.cs b/src/Lucene.Net.Tests/core/Search/TestSearchWithThreads.cs
index 1c9937b..f5c34c4 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSearchWithThreads.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSearchWithThreads.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -25,8 +26,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSearcherManager.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSearcherManager.cs b/src/Lucene.Net.Tests/core/Search/TestSearcherManager.cs
index dd40e0b..db23ef7 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSearcherManager.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSearcherManager.cs
@@ -13,7 +13,7 @@ namespace Lucene.Net.Search
     using ConcurrentMergeScheduler = Lucene.Net.Index.ConcurrentMergeScheduler;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSimilarity.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSimilarity.cs b/src/Lucene.Net.Tests/core/Search/TestSimilarity.cs
index c726b6b..f3b2729 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSimilarity.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSimilarity.cs
@@ -1,10 +1,12 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -23,7 +25,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSimilarityProvider.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSimilarityProvider.cs b/src/Lucene.Net.Tests/core/Search/TestSimilarityProvider.cs
index a849859..0a3d4fa 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSimilarityProvider.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSimilarityProvider.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -5,8 +7,8 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSloppyPhraseQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSloppyPhraseQuery.cs b/src/Lucene.Net.Tests/core/Search/TestSloppyPhraseQuery.cs
index 67a1a78..f566da9 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSloppyPhraseQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSloppyPhraseQuery.cs
@@ -1,13 +1,14 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
 
     /*
@@ -32,7 +33,7 @@ namespace Lucene.Net.Search
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestSloppyPhraseQuery : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSort.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSort.cs b/src/Lucene.Net.Tests/core/Search/TestSort.cs
index 0a95406..b0f7f2f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSort.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSort.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -10,8 +11,8 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -38,7 +39,7 @@ namespace Lucene.Net.Search
     using MultiReader = Lucene.Net.Index.MultiReader;
     using Occur = Lucene.Net.Search.BooleanClause.Occur;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSortDocValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSortDocValues.cs b/src/Lucene.Net.Tests/core/Search/TestSortDocValues.cs
index d1d9436..0201569 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSortDocValues.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSortDocValues.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -19,18 +21,18 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using DoubleDocValuesField = Lucene.Net.Document.DoubleDocValuesField;
-    using Field = Lucene.Net.Document.Field;
-    using FloatDocValuesField = Lucene.Net.Document.FloatDocValuesField;
+    using Document = Documents.Document;
+    using DoubleDocValuesField = DoubleDocValuesField;
+    using Field = Field;
+    using FloatDocValuesField = FloatDocValuesField;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
 
     /// <summary>
     /// Tests basic sorting on docvalues fields.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSortRandom.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSortRandom.cs b/src/Lucene.Net.Tests/core/Search/TestSortRandom.cs
index 025e54c..54f3a77 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSortRandom.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSortRandom.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -30,16 +31,16 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using Occur = Lucene.Net.Search.BooleanClause.Occur;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using StoredField = Lucene.Net.Document.StoredField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using StoredField = StoredField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSortRescorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSortRescorer.cs b/src/Lucene.Net.Tests/core/Search/TestSortRescorer.cs
index 430fd6c..a7a5673 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSortRescorer.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSortRescorer.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -27,11 +28,11 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestSubScorerFreqs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestSubScorerFreqs.cs b/src/Lucene.Net.Tests/core/Search/TestSubScorerFreqs.cs
index d4cc38f..fedd22a 100644
--- a/src/Lucene.Net.Tests/core/Search/TestSubScorerFreqs.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestSubScorerFreqs.cs
@@ -1,8 +1,9 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Index;
     using Lucene.Net.Store;
     using Lucene.Net.Support;
@@ -45,11 +46,11 @@ namespace Lucene.Net.Search
             int num = AtLeast(31);
             for (int i = 0; i < num; i++)
             {
-                Document doc = new Document();
+                Documents.Document doc = new Documents.Document();
                 doc.Add(NewTextField("f", "a b c d b c d c d d", Field.Store.NO));
                 w.AddDocument(doc);
 
-                doc = new Document();
+                doc = new Documents.Document();
                 doc.Add(NewTextField("f", "a b c d", Field.Store.NO));
                 w.AddDocument(doc);
             }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTermRangeQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTermRangeQuery.cs b/src/Lucene.Net.Tests/core/Search/TestTermRangeQuery.cs
index a9b6838..186942b 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTermRangeQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTermRangeQuery.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -25,8 +26,8 @@ namespace Lucene.Net.Search
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTermScorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTermScorer.cs b/src/Lucene.Net.Tests/core/Search/TestTermScorer.cs
index f73ac4c..1c3aafb 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTermScorer.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTermScorer.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Search
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTermVectors.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTermVectors.cs b/src/Lucene.Net.Tests/core/Search/TestTermVectors.cs
index 1f507e4..f3db406 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTermVectors.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTermVectors.cs
@@ -1,14 +1,16 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
     using DocsAndPositionsEnum = Lucene.Net.Index.DocsAndPositionsEnum;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using Fields = Lucene.Net.Index.Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IOUtils = Lucene.Net.Util.IOUtils;
@@ -38,7 +40,7 @@ namespace Lucene.Net.Search
     using Term = Lucene.Net.Index.Term;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     public class TestTermVectors : LuceneTestCase
     {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTopDocsCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTopDocsCollector.cs b/src/Lucene.Net.Tests/core/Search/TestTopDocsCollector.cs
index fda200a..d5097ec 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTopDocsCollector.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTopDocsCollector.cs
@@ -21,7 +21,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTopDocsMerge.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTopDocsMerge.cs b/src/Lucene.Net.Tests/core/Search/TestTopDocsMerge.cs
index 21fa64a..7a88def 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTopDocsMerge.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTopDocsMerge.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -27,12 +28,12 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FloatField = Lucene.Net.Document.FloatField;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FloatField = FloatField;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexReaderContext = Lucene.Net.Index.IndexReaderContext;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using ReaderUtil = Lucene.Net.Index.ReaderUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTopFieldCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTopFieldCollector.cs b/src/Lucene.Net.Tests/core/Search/TestTopFieldCollector.cs
index 6284f52..4ec8488 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTopFieldCollector.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTopFieldCollector.cs
@@ -20,7 +20,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using Entry = Lucene.Net.Search.FieldValueHitQueue.Entry;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTopScoreDocCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTopScoreDocCollector.cs b/src/Lucene.Net.Tests/core/Search/TestTopScoreDocCollector.cs
index cc050a7..6733998 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTopScoreDocCollector.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTopScoreDocCollector.cs
@@ -20,7 +20,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using Occur = Lucene.Net.Search.BooleanClause.Occur;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestTotalHitCountCollector.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestTotalHitCountCollector.cs b/src/Lucene.Net.Tests/core/Search/TestTotalHitCountCollector.cs
index 8018d29..b353cc9 100644
--- a/src/Lucene.Net.Tests/core/Search/TestTotalHitCountCollector.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestTotalHitCountCollector.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -20,12 +22,12 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
 
     [TestFixture]
     public class TestTotalHitCountCollector : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestWildcard.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestWildcard.cs b/src/Lucene.Net.Tests/core/Search/TestWildcard.cs
index b58b55c..76bee54 100644
--- a/src/Lucene.Net.Tests/core/Search/TestWildcard.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestWildcard.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -24,7 +25,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestWildcardRandom.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestWildcardRandom.cs b/src/Lucene.Net.Tests/core/Search/TestWildcardRandom.cs
index ea62f78..4b3e376 100644
--- a/src/Lucene.Net.Tests/core/Search/TestWildcardRandom.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestWildcardRandom.cs
@@ -1,13 +1,14 @@
 using System;
 using System.Globalization;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestBufferedIndexInput.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestBufferedIndexInput.cs b/src/Lucene.Net.Tests/core/Store/TestBufferedIndexInput.cs
index d741680..bc7fd92 100644
--- a/src/Lucene.Net.Tests/core/Store/TestBufferedIndexInput.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestBufferedIndexInput.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using NUnit.Framework;
 using System;
@@ -8,8 +9,8 @@ namespace Lucene.Net.Store
 {
     using ArrayUtil = Lucene.Net.Util.ArrayUtil;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestLockFactory.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestLockFactory.cs b/src/Lucene.Net.Tests/core/Store/TestLockFactory.cs
index d75b410..5d86835 100644
--- a/src/Lucene.Net.Tests/core/Store/TestLockFactory.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestLockFactory.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using NUnit.Framework;
 using System;
@@ -8,8 +9,8 @@ using System.Threading;
 namespace Lucene.Net.Store
 {
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestMultiMMap.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestMultiMMap.cs b/src/Lucene.Net.Tests/core/Store/TestMultiMMap.cs
index 1ed3bef..8d0f3b6 100644
--- a/src/Lucene.Net.Tests/core/Store/TestMultiMMap.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestMultiMMap.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 using System.IO;
@@ -5,8 +6,8 @@ using System.IO;
 namespace Lucene.Net.Store
 {
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInputSlicer = Lucene.Net.Store.Directory.IndexInputSlicer;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestNRTCachingDirectory.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestNRTCachingDirectory.cs b/src/Lucene.Net.Tests/core/Store/TestNRTCachingDirectory.cs
index e0382e9..d818e89 100644
--- a/src/Lucene.Net.Tests/core/Store/TestNRTCachingDirectory.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestNRTCachingDirectory.cs
@@ -26,7 +26,7 @@ namespace Lucene.Net.Store
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestRAMDirectory.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestRAMDirectory.cs b/src/Lucene.Net.Tests/core/Store/TestRAMDirectory.cs
index c8ea39b..909b869 100644
--- a/src/Lucene.Net.Tests/core/Store/TestRAMDirectory.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestRAMDirectory.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using NUnit.Framework;
 using System;
@@ -6,7 +7,7 @@ using System.IO;
 namespace Lucene.Net.Store
 {
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
 
     /*
@@ -26,7 +27,7 @@ namespace Lucene.Net.Store
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Store/TestWindowsMMap.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Store/TestWindowsMMap.cs b/src/Lucene.Net.Tests/core/Store/TestWindowsMMap.cs
index 4e21662..649d269 100644
--- a/src/Lucene.Net.Tests/core/Store/TestWindowsMMap.cs
+++ b/src/Lucene.Net.Tests/core/Store/TestWindowsMMap.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System.IO;
 using System.Text;
@@ -5,7 +6,7 @@ using System.Text;
 namespace Lucene.Net.Store
 {
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -24,7 +25,7 @@ namespace Lucene.Net.Store
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/TestMergeSchedulerExternal.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/TestMergeSchedulerExternal.cs b/src/Lucene.Net.Tests/core/TestMergeSchedulerExternal.cs
index 99c8e95..59a7ffd 100644
--- a/src/Lucene.Net.Tests/core/TestMergeSchedulerExternal.cs
+++ b/src/Lucene.Net.Tests/core/TestMergeSchedulerExternal.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Diagnostics;
 using System.IO;
+using Lucene.Net.Documents;
 using NUnit.Framework;
 
 namespace Lucene.Net.Tests
@@ -23,8 +24,8 @@ namespace Lucene.Net.Tests
      * limitations under the License.
      */
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using ConcurrentMergeScheduler = Lucene.Net.Index.ConcurrentMergeScheduler;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Util/TestFieldCacheSanityChecker.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Util/TestFieldCacheSanityChecker.cs b/src/Lucene.Net.Tests/core/Util/TestFieldCacheSanityChecker.cs
index 5425a54..7610611 100644
--- a/src/Lucene.Net.Tests/core/Util/TestFieldCacheSanityChecker.cs
+++ b/src/Lucene.Net.Tests/core/Util/TestFieldCacheSanityChecker.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -6,8 +7,8 @@ namespace Lucene.Net.Util
     using AtomicReader = Lucene.Net.Index.AtomicReader;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache = Lucene.Net.Search.FieldCache;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
     using IndexWriter = Lucene.Net.Index.IndexWriter;


[5/7] Namespace rename Lucene.Net.Document -> Documents

Posted by sy...@apache.org.
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Search/SearchEquivalenceTestBase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Search/SearchEquivalenceTestBase.cs b/src/Lucene.Net.TestFramework/Search/SearchEquivalenceTestBase.cs
index dd9e0a9..6836113 100644
--- a/src/Lucene.Net.TestFramework/Search/SearchEquivalenceTestBase.cs
+++ b/src/Lucene.Net.TestFramework/Search/SearchEquivalenceTestBase.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -28,17 +29,17 @@ namespace Lucene.Net.Search
     using BasicAutomata = Lucene.Net.Util.Automaton.BasicAutomata;
     using CharacterRunAutomaton = Lucene.Net.Util.Automaton.CharacterRunAutomaton;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Simple base class for checking search equivalence.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Util/LineFileDocs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Util/LineFileDocs.cs b/src/Lucene.Net.TestFramework/Util/LineFileDocs.cs
index b84aff5..374aa7d 100644
--- a/src/Lucene.Net.TestFramework/Util/LineFileDocs.cs
+++ b/src/Lucene.Net.TestFramework/Util/LineFileDocs.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.IO;
@@ -26,12 +27,12 @@ namespace Lucene.Net.Util
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using StringField = Lucene.Net.Document.StringField;
-    using TextField = Lucene.Net.Document.TextField;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
+    using SortedDocValuesField = SortedDocValuesField;
+    using StringField = StringField;
+    using TextField = TextField;
 
     /// <summary>
     /// Minimal port of benchmark's LneDocSource +

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
index 7e441e7..9ec49ac 100644
--- a/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
+++ b/src/Lucene.Net.TestFramework/Util/LuceneTestCase.cs
@@ -1,4 +1,4 @@
-/*
+/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
@@ -16,6 +16,7 @@
 */
 
 using System.Runtime.CompilerServices;
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using Lucene.Net.Randomized;
 using Lucene.Net.Randomized.Generators;
@@ -53,15 +54,15 @@ namespace Lucene.Net.Util
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
     using DocsAndPositionsEnum = Lucene.Net.Index.DocsAndPositionsEnum;
     using DocsEnum = Lucene.Net.Index.DocsEnum;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FCInvisibleMultiReader = Lucene.Net.Search.QueryUtils.FCInvisibleMultiReader;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
     using FieldFilterAtomicReader = Lucene.Net.Index.FieldFilterAtomicReader;
     using FieldInfo = Lucene.Net.Index.FieldInfo;
     using FieldInfos = Lucene.Net.Index.FieldInfos;
     using Fields = Lucene.Net.Index.Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using FlushInfo = Lucene.Net.Store.FlushInfo;
     using FSDirectory = Lucene.Net.Store.FSDirectory;
     using IndexableField = Lucene.Net.Index.IndexableField;
@@ -94,10 +95,10 @@ namespace Lucene.Net.Util
     using SlowCompositeReaderWrapper = Lucene.Net.Index.SlowCompositeReaderWrapper;
     using SortedDocValues = Lucene.Net.Index.SortedDocValues;
     using SortedSetDocValues = Lucene.Net.Index.SortedSetDocValues;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TieredMergePolicy = Lucene.Net.Index.TieredMergePolicy;
 
     /*using After = org.junit.After;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.TestFramework/Util/TestUtil.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.TestFramework/Util/TestUtil.cs b/src/Lucene.Net.TestFramework/Util/TestUtil.cs
index 09c1de1..28614c7 100644
--- a/src/Lucene.Net.TestFramework/Util/TestUtil.cs
+++ b/src/Lucene.Net.TestFramework/Util/TestUtil.cs
@@ -1,5 +1,6 @@
 using System.Numerics;
 using ICSharpCode.SharpZipLib.Zip;
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using System;
 using System.Collections.Generic;
@@ -17,7 +18,7 @@ namespace Lucene.Net.Util
     using System.IO;
     using AtomicReader = Lucene.Net.Index.AtomicReader;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -43,32 +44,32 @@ namespace Lucene.Net.Util
     using Directory = Lucene.Net.Store.Directory;
     using DocsAndPositionsEnum = Lucene.Net.Index.DocsAndPositionsEnum;
     using DocsEnum = Lucene.Net.Index.DocsEnum;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesFormat = Lucene.Net.Codecs.DocValuesFormat;
     using DocValuesType_e = Lucene.Net.Index.FieldInfo.DocValuesType_e;
-    using DoubleField = Lucene.Net.Document.DoubleField;
-    using Field = Lucene.Net.Document.Field;
+    using DoubleField = DoubleField;
+    using Field = Field;
     using FieldDoc = Lucene.Net.Search.FieldDoc;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using FilteredQuery = Lucene.Net.Search.FilteredQuery;
-    using FloatField = Lucene.Net.Document.FloatField;
+    using FloatField = FloatField;
     using IndexableField = Lucene.Net.Index.IndexableField;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LogMergePolicy = Lucene.Net.Index.LogMergePolicy;
-    using LongField = Lucene.Net.Document.LongField;
+    using LongField = LongField;
     using Lucene46Codec = Lucene.Net.Codecs.Lucene46.Lucene46Codec;
     using MergePolicy = Lucene.Net.Index.MergePolicy;
     using MergeScheduler = Lucene.Net.Index.MergeScheduler;
     using MultiFields = Lucene.Net.Index.MultiFields;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using NumericType = Lucene.Net.Document.FieldType.NumericType;
+    using NumericDocValuesField = NumericDocValuesField;
+    using NumericType = FieldType.NumericType;
     using PerFieldDocValuesFormat = Lucene.Net.Codecs.Perfield.PerFieldDocValuesFormat;
     using PerFieldPostingsFormat = Lucene.Net.Codecs.Perfield.PerFieldPostingsFormat;
     using PostingsFormat = Lucene.Net.Codecs.PostingsFormat;
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
     using TieredMergePolicy = Lucene.Net.Index.TieredMergePolicy;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Analysis/TestCachingTokenFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Analysis/TestCachingTokenFilter.cs b/src/Lucene.Net.Tests/core/Analysis/TestCachingTokenFilter.cs
index ae6bf67..67dc09a 100644
--- a/src/Lucene.Net.Tests/core/Analysis/TestCachingTokenFilter.cs
+++ b/src/Lucene.Net.Tests/core/Analysis/TestCachingTokenFilter.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Analysis
 {
@@ -26,11 +27,11 @@ namespace Lucene.Net.Analysis
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using MultiFields = Lucene.Net.Index.MultiFields;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestCachingTokenFilter : BaseTokenStreamTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Analysis/TestMockAnalyzer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Analysis/TestMockAnalyzer.cs b/src/Lucene.Net.Tests/core/Analysis/TestMockAnalyzer.cs
index e84c912..18dd8e1 100644
--- a/src/Lucene.Net.Tests/core/Analysis/TestMockAnalyzer.cs
+++ b/src/Lucene.Net.Tests/core/Analysis/TestMockAnalyzer.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 
 namespace Lucene.Net.Analysis
@@ -33,10 +34,10 @@ namespace Lucene.Net.Analysis
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using Fields = Lucene.Net.Index.Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using RegExp = Lucene.Net.Util.Automaton.RegExp;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingStoredFieldsFormat.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingStoredFieldsFormat.cs b/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingStoredFieldsFormat.cs
index cdaf5ae..acdf73c 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingStoredFieldsFormat.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingStoredFieldsFormat.cs
@@ -1,14 +1,17 @@
+using Lucene.Net.Documents;
+using Field = Lucene.Net.Documents.Field;
+
 namespace Lucene.Net.Codecs.Compressing
 {
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using BaseStoredFieldsFormatTestCase = Lucene.Net.Index.BaseStoredFieldsFormatTestCase;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingTermVectorsFormat.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingTermVectorsFormat.cs b/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingTermVectorsFormat.cs
index 545b0aa..322977a 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingTermVectorsFormat.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Compressing/TestCompressingTermVectorsFormat.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Codecs.Compressing
 {
     using NUnit.Framework;
@@ -5,13 +7,13 @@ namespace Lucene.Net.Codecs.Compressing
     using BaseTermVectorsFormatTestCase = Lucene.Net.Index.BaseTermVectorsFormatTestCase;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     //using Repeat = com.carrotsearch.randomizedtesting.annotations.Repeat;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestSurrogates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestSurrogates.cs b/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestSurrogates.cs
index 5979a04..fae3742 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestSurrogates.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestSurrogates.cs
@@ -1,10 +1,11 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Codecs.Lucene3x
 {
     using Lucene.Net.Analysis;
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Index;
 
     /*
@@ -361,7 +362,7 @@ namespace Lucene.Net.Codecs.Lucene3x
                     string term = GetRandomString(Random()) + "_ " + (tc++);
                     uniqueTerms.Add(term);
                     fieldTerms.Add(new Term(field, term));
-                    Document doc = new Document();
+                    Documents.Document doc = new Documents.Document();
                     doc.Add(NewStringField(field, term, Field.Store.NO));
                     w.AddDocument(doc);
                 }

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestTermInfosReaderIndex.cs b/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
index 8eeed38..0316e66 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Lucene3x/TestTermInfosReaderIndex.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Codecs.Lucene3x
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Codecs.Lucene3x
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldInfos = Lucene.Net.Index.FieldInfos;
     using Fields = Lucene.Net.Index.Fields;
     using IndexFileNames = Lucene.Net.Index.IndexFileNames;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Lucene40/TestLucene40PostingsReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Lucene40/TestLucene40PostingsReader.cs b/src/Lucene.Net.Tests/core/Codecs/Lucene40/TestLucene40PostingsReader.cs
index 9c5e467..1442576 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Lucene40/TestLucene40PostingsReader.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Lucene40/TestLucene40PostingsReader.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using Lucene.Net.Support;
 using System;
@@ -9,9 +10,9 @@ namespace Lucene.Net.Codecs.Lucene40
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -34,10 +35,10 @@ namespace Lucene.Net.Codecs.Lucene40
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestLucene40PostingsReader : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat2.cs b/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat2.cs
index 138bc89..8dd033f 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat2.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat2.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 using System.Text;
@@ -5,10 +6,10 @@ using System.Text;
 namespace Lucene.Net.Codecs.Lucene41
 {
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldInfo = Lucene.Net.Index.FieldInfo;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexableField = Lucene.Net.Index.IndexableField;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -34,7 +35,7 @@ namespace Lucene.Net.Codecs.Lucene41
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Tests special cases of BlockPostingsFormat

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat3.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat3.cs b/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat3.cs
index ee92333..3bc9da8 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat3.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Lucene41/TestBlockPostingsFormat3.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using Lucene.Net.Support;
 using System;
@@ -39,10 +40,10 @@ namespace Lucene.Net.Codecs.Lucene41
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
     using DocsAndPositionsEnum = Lucene.Net.Index.DocsAndPositionsEnum;
     using DocsEnum = Lucene.Net.Index.DocsEnum;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Field = Field;
+    using FieldType = FieldType;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -57,7 +58,7 @@ namespace Lucene.Net.Codecs.Lucene41
     using Terms = Lucene.Net.Index.Terms;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenFilter = Lucene.Net.Analysis.TokenFilter;
     using Tokenizer = Lucene.Net.Analysis.Tokenizer;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldDocValuesFormat.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldDocValuesFormat.cs b/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldDocValuesFormat.cs
index fe8c0d7..d65f306 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldDocValuesFormat.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldDocValuesFormat.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Codecs.Perfield
 {
@@ -27,12 +28,12 @@ namespace Lucene.Net.Codecs.Perfield
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using BaseDocValuesFormatTestCase = Lucene.Net.Index.BaseDocValuesFormatTestCase;
     using BinaryDocValues = Lucene.Net.Index.BinaryDocValues;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
@@ -40,7 +41,7 @@ namespace Lucene.Net.Codecs.Perfield
     using Lucene46Codec = Lucene.Net.Codecs.Lucene46.Lucene46Codec;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using NumericDocValues = Lucene.Net.Index.NumericDocValues;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using Query = Lucene.Net.Search.Query;
     using RandomCodec = Lucene.Net.Index.RandomCodec;
     using Term = Lucene.Net.Index.Term;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldPostingsFormat2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldPostingsFormat2.cs b/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldPostingsFormat2.cs
index d5e5531..10a72d2 100644
--- a/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldPostingsFormat2.cs
+++ b/src/Lucene.Net.Tests/core/Codecs/Perfield/TestPerFieldPostingsFormat2.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Codecs.Perfield
 {
@@ -11,9 +12,9 @@ namespace Lucene.Net.Codecs.Perfield
         using Pulsing41PostingsFormat = Lucene.Net.Codecs.pulsing.Pulsing41PostingsFormat;
         using SimpleTextPostingsFormat = Lucene.Net.Codecs.simpletext.SimpleTextPostingsFormat;*/
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
@@ -43,7 +44,7 @@ namespace Lucene.Net.Codecs.Perfield
     using Term = Lucene.Net.Index.Term;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TopDocs = Lucene.Net.Search.TopDocs;
 
     //TODO: would be better in this test to pull termsenums and instanceof or something?

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Document/TestBinaryDocument.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Document/TestBinaryDocument.cs b/src/Lucene.Net.Tests/core/Document/TestBinaryDocument.cs
index 7ebf0af..6fd8c5c 100644
--- a/src/Lucene.Net.Tests/core/Document/TestBinaryDocument.cs
+++ b/src/Lucene.Net.Tests/core/Document/TestBinaryDocument.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System.Text;
 
@@ -46,7 +47,7 @@ namespace Lucene.Net.Document
             IndexableField binaryFldStored = new StoredField("binaryStored", (sbyte[])(Array)System.Text.UTF8Encoding.UTF8.GetBytes(BinaryValStored));
             IndexableField stringFldStored = new Field("stringStored", BinaryValStored, ft);
 
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
 
             doc.Add(binaryFldStored);
 
@@ -66,7 +67,7 @@ namespace Lucene.Net.Document
             /// <summary>
             /// open a reader and fetch the document </summary>
             IndexReader reader = writer.Reader;
-            Document docFromReader = reader.Document(0);
+            Documents.Document docFromReader = reader.Document(0);
             Assert.IsTrue(docFromReader != null);
 
             /// <summary>
@@ -94,7 +95,7 @@ namespace Lucene.Net.Document
             IndexableField binaryFldCompressed = new StoredField("binaryCompressed", (sbyte[])(Array)CompressionTools.Compress(BinaryValCompressed.GetBytes(Encoding.UTF8)));
             IndexableField stringFldCompressed = new StoredField("stringCompressed", (sbyte[])(Array)CompressionTools.CompressString(BinaryValCompressed));
 
-            var doc = new Document {binaryFldCompressed, stringFldCompressed};
+            var doc = new Documents.Document {binaryFldCompressed, stringFldCompressed};
 
             using (Directory dir = NewDirectory())
             using (RandomIndexWriter writer = new RandomIndexWriter(Random(), dir))
@@ -103,7 +104,7 @@ namespace Lucene.Net.Document
 
                 using (IndexReader reader = writer.Reader)
                 {
-                    Document docFromReader = reader.Document(0);
+                    Documents.Document docFromReader = reader.Document(0);
                     Assert.IsTrue(docFromReader != null);
 
                     string binaryFldCompressedTest =

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Document/TestDateTools.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Document/TestDateTools.cs b/src/Lucene.Net.Tests/core/Document/TestDateTools.cs
index f247366..26cb90d 100644
--- a/src/Lucene.Net.Tests/core/Document/TestDateTools.cs
+++ b/src/Lucene.Net.Tests/core/Document/TestDateTools.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Globalization;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Document
 {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Document/TestDocument.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Document/TestDocument.cs b/src/Lucene.Net.Tests/core/Document/TestDocument.cs
index 884e285..dba80cc 100644
--- a/src/Lucene.Net.Tests/core/Document/TestDocument.cs
+++ b/src/Lucene.Net.Tests/core/Document/TestDocument.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System.Text;
 
@@ -54,7 +55,7 @@ namespace Lucene.Net.Document
         [Test]
         public virtual void TestBinaryField()
         {
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
 
             FieldType ft = new FieldType();
             ft.Stored = true;
@@ -109,7 +110,7 @@ namespace Lucene.Net.Document
         [Test]
         public virtual void TestRemoveForNewDocument()
         {
-            Document doc = MakeDocumentWithFields();
+            Documents.Document doc = MakeDocumentWithFields();
             Assert.AreEqual(10, doc.Fields.Count);
             doc.RemoveFields("keyword");
             Assert.AreEqual(8, doc.Fields.Count);
@@ -211,7 +212,7 @@ namespace Lucene.Net.Document
         [Test]
         public virtual void TestGetValues()
         {
-            Document doc = MakeDocumentWithFields();
+            Documents.Document doc = MakeDocumentWithFields();
             Assert.AreEqual(new string[] { "test1", "test2" }, doc.GetValues("keyword"));
             Assert.AreEqual(new string[] { "test1", "test2" }, doc.GetValues("text"));
             Assert.AreEqual(new string[] { "test1", "test2" }, doc.GetValues("unindexed"));
@@ -240,9 +241,9 @@ namespace Lucene.Net.Document
             dir.Dispose();
         }
 
-        private Document MakeDocumentWithFields()
+        private Documents.Document MakeDocumentWithFields()
         {
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             FieldType stored = new FieldType();
             stored.Stored = true;
             FieldType indexedNotTokenized = new FieldType();
@@ -261,7 +262,7 @@ namespace Lucene.Net.Document
             return doc;
         }
 
-        private void DoAssert(Document doc, bool fromIndex)
+        private void DoAssert(Documents.Document doc, bool fromIndex)
         {
             IndexableField[] keywordFieldValues = doc.GetFields("keyword");
             IndexableField[] textFieldValues = doc.GetFields("text");
@@ -297,7 +298,7 @@ namespace Lucene.Net.Document
         public virtual void TestFieldSetValue()
         {
             Field field = new StringField("id", "id1", Field.Store.YES);
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(field);
             doc.Add(new StringField("keyword", "test", Field.Store.YES));
 
@@ -320,7 +321,7 @@ namespace Lucene.Net.Document
             int result = 0;
             for (int i = 0; i < 3; i++)
             {
-                Document doc2 = searcher.Doc(hits[i].Doc);
+                Documents.Document doc2 = searcher.Doc(hits[i].Doc);
                 Field f = (Field)doc2.GetField("id");
                 if (f.StringValue.Equals("id1"))
                 {
@@ -367,7 +368,7 @@ namespace Lucene.Net.Document
             Directory dir = NewDirectory();
             RandomIndexWriter w = new RandomIndexWriter(Random(), dir);
 
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(new Field("stored", "abc", Field.Store.YES, Field.Index.NO));
             doc.Add(new Field("stored_indexed", "abc xyz", Field.Store.YES, Field.Index.NOT_ANALYZED));
             doc.Add(new Field("stored_tokenized", "abc xyz", Field.Store.YES, Field.Index.ANALYZED));
@@ -434,7 +435,7 @@ namespace Lucene.Net.Document
         [Test]
         public virtual void TestNumericFieldAsString()
         {
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(new IntField("int", 5, Field.Store.YES));
             Assert.AreEqual("5", doc.Get("int"));
             Assert.IsNull(doc.Get("somethingElse"));
@@ -445,7 +446,7 @@ namespace Lucene.Net.Document
             RandomIndexWriter iw = new RandomIndexWriter(Random(), dir);
             iw.AddDocument(doc);
             DirectoryReader ir = iw.Reader;
-            Document sdoc = ir.Document(0);
+            Documents.Document sdoc = ir.Document(0);
             Assert.AreEqual("5", sdoc.Get("int"));
             Assert.IsNull(sdoc.Get("somethingElse"));
             Assert.AreEqual(new string[] { "5", "4" }, sdoc.GetValues("int"));

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Document/TestField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Document/TestField.cs b/src/Lucene.Net.Tests/core/Document/TestField.cs
index d3cdfa2..45bc0b2 100644
--- a/src/Lucene.Net.Tests/core/Document/TestField.cs
+++ b/src/Lucene.Net.Tests/core/Document/TestField.cs
@@ -1,4 +1,5 @@
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Document
 {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BBinaryDocValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BBinaryDocValues.cs b/src/Lucene.Net.Tests/core/Index/Test2BBinaryDocValues.cs
index f5a0287..7fb5b2f 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BBinaryDocValues.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BBinaryDocValues.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -8,11 +9,11 @@ namespace Lucene.Net.Index
 
     using NUnit.Framework;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using ByteArrayDataInput = Lucene.Net.Store.ByteArrayDataInput;
     using ByteArrayDataOutput = Lucene.Net.Store.ByteArrayDataOutput;
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BDocs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BDocs.cs b/src/Lucene.Net.Tests/core/Index/Test2BDocs.cs
index aa174e0..bc488e4 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BDocs.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BDocs.cs
@@ -21,7 +21,7 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     [Ignore]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BNumericDocValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BNumericDocValues.cs b/src/Lucene.Net.Tests/core/Index/Test2BNumericDocValues.cs
index cfb5c9d..df32b69 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BNumericDocValues.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BNumericDocValues.cs
@@ -1,10 +1,11 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -26,7 +27,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
 
     /*using Ignore = org.junit.Ignore;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BPositions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BPositions.cs b/src/Lucene.Net.Tests/core/Index/Test2BPositions.cs
index 89f3553..effef2b 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BPositions.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BPositions.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -6,9 +7,9 @@ namespace Lucene.Net.Index
 {
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
     using CharTermAttribute = Lucene.Net.Analysis.Tokenattributes.CharTermAttribute;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -31,7 +32,7 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using PositionIncrementAttribute = Lucene.Net.Analysis.Tokenattributes.PositionIncrementAttribute;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     /*using Ignore = org.junit.Ignore;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BPostings.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BPostings.cs b/src/Lucene.Net.Tests/core/Index/Test2BPostings.cs
index d8b7331..cdd5f3d 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BPostings.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BPostings.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -5,9 +6,9 @@ namespace Lucene.Net.Index
 {
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
     using CharTermAttribute = Lucene.Net.Analysis.Tokenattributes.CharTermAttribute;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -29,7 +30,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BPostingsBytes.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BPostingsBytes.cs b/src/Lucene.Net.Tests/core/Index/Test2BPostingsBytes.cs
index 9f7b105..3a99924 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BPostingsBytes.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BPostingsBytes.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 
 namespace Lucene.Net.Index
@@ -5,9 +6,9 @@ namespace Lucene.Net.Index
     using Lucene.Net.Support;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
     using CharTermAttribute = Lucene.Net.Analysis.Tokenattributes.CharTermAttribute;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -29,7 +30,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     /*using Ignore = org.junit.Ignore;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BSortedDocValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BSortedDocValues.cs b/src/Lucene.Net.Tests/core/Index/Test2BSortedDocValues.cs
index c22f1a8..a8dd384 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BSortedDocValues.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BSortedDocValues.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -27,7 +28,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
 
     /*using Ignore = org.junit.Ignore;
     using TimeoutSuite = com.carrotsearch.randomizedtesting.annotations.TimeoutSuite;*/

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test2BTerms.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test2BTerms.cs b/src/Lucene.Net.Tests/core/Index/Test2BTerms.cs
index c69d978..ea114c1 100644
--- a/src/Lucene.Net.Tests/core/Index/Test2BTerms.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test2BTerms.cs
@@ -1,11 +1,12 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Analysis;
     using Lucene.Net.Analysis.Tokenattributes;
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Search;
     using Lucene.Net.Store;
     using Lucene.Net.Support;
@@ -200,7 +201,7 @@ namespace Lucene.Net.Index
                     ((LogByteSizeMergePolicy)mp).MaxMergeMB = 1024 * 1024 * 1024;
                 }
 
-                Document doc = new Document();
+                Documents.Document doc = new Documents.Document();
                 MyTokenStream ts = new MyTokenStream(Random(), TERMS_PER_DOC);
 
                 FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/Test4GBStoredFields.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/Test4GBStoredFields.cs b/src/Lucene.Net.Tests/core/Index/Test4GBStoredFields.cs
index 88534e1..cf245ec 100644
--- a/src/Lucene.Net.Tests/core/Index/Test4GBStoredFields.cs
+++ b/src/Lucene.Net.Tests/core/Index/Test4GBStoredFields.cs
@@ -1,13 +1,14 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MMapDirectory = Lucene.Net.Store.MMapDirectory;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestAddIndexes.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestAddIndexes.cs b/src/Lucene.Net.Tests/core/Index/TestAddIndexes.cs
index 60a0fac..2e5b133 100644
--- a/src/Lucene.Net.Tests/core/Index/TestAddIndexes.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestAddIndexes.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -14,9 +15,9 @@ namespace Lucene.Net.Index
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
 
     //using Pulsing41PostingsFormat = Lucene.Net.Codecs.pulsing.Pulsing41PostingsFormat;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using FilterCodec = Lucene.Net.Codecs.FilterCodec;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LockObtainFailedException = Lucene.Net.Store.LockObtainFailedException;
@@ -46,9 +47,9 @@ namespace Lucene.Net.Index
     using PhraseQuery = Lucene.Net.Search.PhraseQuery;
     using PostingsFormat = Lucene.Net.Codecs.PostingsFormat;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestAddIndexes : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveChecksumFooter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveChecksumFooter.cs b/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveChecksumFooter.cs
index ff58a35..b67b6f4 100644
--- a/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveChecksumFooter.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveChecksumFooter.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -6,8 +7,8 @@ namespace Lucene.Net.Index
     using CodecUtil = Lucene.Net.Codecs.CodecUtil;
     using CompoundFileDirectory = Lucene.Net.Store.CompoundFileDirectory;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using Lucene46Codec = Lucene.Net.Codecs.Lucene46.Lucene46Codec;
@@ -31,7 +32,7 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveCodecHeader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveCodecHeader.cs b/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveCodecHeader.cs
index 7c771f7..df39287 100644
--- a/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveCodecHeader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestAllFilesHaveCodecHeader.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -6,8 +7,8 @@ namespace Lucene.Net.Index
     using CodecUtil = Lucene.Net.Codecs.CodecUtil;
     using CompoundFileDirectory = Lucene.Net.Store.CompoundFileDirectory;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using Lucene46Codec = Lucene.Net.Codecs.Lucene46.Lucene46Codec;
@@ -31,7 +32,7 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestAtomicUpdate.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestAtomicUpdate.cs b/src/Lucene.Net.Tests/core/Index/TestAtomicUpdate.cs
index dfeb8cf..d662e56 100644
--- a/src/Lucene.Net.Tests/core/Index/TestAtomicUpdate.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestAtomicUpdate.cs
@@ -1,10 +1,11 @@
 using System;
 using System.IO;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Store;
     using Lucene.Net.Support;
     using Lucene.Net.Util;
@@ -99,7 +100,7 @@ namespace Lucene.Net.Index
                 // Update all 100 docs...
                 for (int i = 0; i < 100; i++)
                 {
-                    Document d = new Document();
+                    Documents.Document d = new Documents.Document();
                     d.Add(new StringField("id", Convert.ToString(i), Field.Store.YES));
                     d.Add(new TextField("contents", English.IntToEnglish(i + 10 * Count), Field.Store.NO));
                     Writer.UpdateDocument(new Term("id", Convert.ToString(i)), d);
@@ -141,7 +142,7 @@ namespace Lucene.Net.Index
             // Establish a base index of 100 docs:
             for (int i = 0; i < 100; i++)
             {
-                Document d = new Document();
+                Documents.Document d = new Documents.Document();
                 d.Add(NewStringField("id", Convert.ToString(i), Field.Store.YES));
                 d.Add(NewTextField("contents", English.IntToEnglish(i), Field.Store.NO));
                 if ((i - 1) % 7 == 0)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestBagOfPositions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestBagOfPositions.cs b/src/Lucene.Net.Tests/core/Index/TestBagOfPositions.cs
index c838bf5..1b3840c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestBagOfPositions.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestBagOfPositions.cs
@@ -3,6 +3,7 @@ using System;
 using System.Collections.Concurrent;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -11,9 +12,9 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestBagOfPostings.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestBagOfPostings.cs b/src/Lucene.Net.Tests/core/Index/TestBagOfPostings.cs
index c6e2611..b1a0c67 100644
--- a/src/Lucene.Net.Tests/core/Index/TestBagOfPostings.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestBagOfPostings.cs
@@ -3,6 +3,7 @@ using System;
 using System.Collections.Concurrent;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -10,8 +11,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using Lucene3xCodec = Lucene.Net.Codecs.Lucene3x.Lucene3xCodec;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestBinaryDocValuesUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestBinaryDocValuesUpdates.cs b/src/Lucene.Net.Tests/core/Index/TestBinaryDocValuesUpdates.cs
index 1f655ea..4af1950 100644
--- a/src/Lucene.Net.Tests/core/Index/TestBinaryDocValuesUpdates.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestBinaryDocValuesUpdates.cs
@@ -1,6 +1,7 @@
 using Apache.NMS.Util;
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -9,12 +10,12 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using System.IO;
     using AssertingDocValuesFormat = Lucene.Net.Codecs.asserting.AssertingDocValuesFormat;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesFormat = Lucene.Net.Codecs.DocValuesFormat;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using Lucene40RWCodec = Lucene.Net.Codecs.Lucene40.Lucene40RWCodec;
@@ -26,11 +27,11 @@ namespace Lucene.Net.Index
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestBinaryTerms.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestBinaryTerms.cs b/src/Lucene.Net.Tests/core/Index/TestBinaryTerms.cs
index 3b28ccb..e972b35 100644
--- a/src/Lucene.Net.Tests/core/Index/TestBinaryTerms.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestBinaryTerms.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
@@ -21,13 +23,13 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TermQuery = Lucene.Net.Search.TermQuery;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TopDocs = Lucene.Net.Search.TopDocs;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCheckIndex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCheckIndex.cs b/src/Lucene.Net.Tests/core/Index/TestCheckIndex.cs
index 585bbae..ae077a1 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCheckIndex.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCheckIndex.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -9,9 +10,9 @@ namespace Lucene.Net.Index
     using System.IO;
     using CannedTokenStream = Lucene.Net.Analysis.CannedTokenStream;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -32,7 +33,7 @@ namespace Lucene.Net.Index
 
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using Token = Lucene.Net.Analysis.Token;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCodecHoldsOpenFiles.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCodecHoldsOpenFiles.cs b/src/Lucene.Net.Tests/core/Index/TestCodecHoldsOpenFiles.cs
index f2ddc0b..5e2446c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCodecHoldsOpenFiles.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCodecHoldsOpenFiles.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 
 namespace Lucene.Net.Index
@@ -22,10 +23,10 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestCodecHoldsOpenFiles : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCodecs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCodecs.cs b/src/Lucene.Net.Tests/core/Index/TestCodecs.cs
index b2a7fe3..c7d1e3d 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCodecs.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCodecs.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -14,11 +15,11 @@ namespace Lucene.Net.Index
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
 
     //using MockSepPostingsFormat = Lucene.Net.Codecs.mocksep.MockSepPostingsFormat;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesType_e = Lucene.Net.Index.FieldInfo.DocValuesType_e;
     using FieldsConsumer = Lucene.Net.Codecs.FieldsConsumer;
     using FieldsProducer = Lucene.Net.Codecs.FieldsProducer;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using InfoStream = Lucene.Net.Util.InfoStream;
     using Lucene3xCodec = Lucene.Net.Codecs.Lucene3x.Lucene3xCodec;
@@ -45,13 +46,13 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using OpenBitSet = Lucene.Net.Util.OpenBitSet;
     using PostingsConsumer = Lucene.Net.Codecs.PostingsConsumer;
     using Query = Lucene.Net.Search.Query;
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using TermsConsumer = Lucene.Net.Codecs.TermsConsumer;
     using TermStats = Lucene.Net.Codecs.TermStats;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCompoundFile.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCompoundFile.cs b/src/Lucene.Net.Tests/core/Index/TestCompoundFile.cs
index cf31662..055dc5e 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCompoundFile.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCompoundFile.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Store;
 using System;
 
@@ -25,8 +26,8 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IndexOutput = Lucene.Net.Store.IndexOutput;
     using IOContext = Lucene.Net.Store.IOContext;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestConcurrentMergeScheduler.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestConcurrentMergeScheduler.cs b/src/Lucene.Net.Tests/core/Index/TestConcurrentMergeScheduler.cs
index 9c4fecb..13c7370 100644
--- a/src/Lucene.Net.Tests/core/Index/TestConcurrentMergeScheduler.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestConcurrentMergeScheduler.cs
@@ -2,6 +2,7 @@ using Apache.NMS.Util;
 using System;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -10,8 +11,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using Lucene41PostingsFormat = Lucene.Net.Codecs.Lucene41.Lucene41PostingsFormat;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -35,9 +36,9 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestConcurrentMergeScheduler : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestConsistentFieldNumbers.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestConsistentFieldNumbers.cs b/src/Lucene.Net.Tests/core/Index/TestConsistentFieldNumbers.cs
index 8183da2..6027953 100644
--- a/src/Lucene.Net.Tests/core/Index/TestConsistentFieldNumbers.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestConsistentFieldNumbers.cs
@@ -1,14 +1,15 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FailOnNonBulkMergesInfoStream = Lucene.Net.Util.FailOnNonBulkMergesInfoStream;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -29,9 +30,9 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
-    using TextField = Lucene.Net.Document.TextField;
+    using StoredField = StoredField;
+    using StringField = StringField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestConsistentFieldNumbers : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCrash.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCrash.cs b/src/Lucene.Net.Tests/core/Index/TestCrash.cs
index cd6f46e..d6e8456 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCrash.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCrash.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCrashCausesCorruptIndex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCrashCausesCorruptIndex.cs b/src/Lucene.Net.Tests/core/Index/TestCrashCausesCorruptIndex.cs
index 4195e03..05df4c8 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCrashCausesCorruptIndex.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCrashCausesCorruptIndex.cs
@@ -1,12 +1,13 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FilterDirectory = Lucene.Net.Store.FilterDirectory;
     using FSDirectory = Lucene.Net.Store.FSDirectory;
     using IndexOutput = Lucene.Net.Store.IndexOutput;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestCustomNorms.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestCustomNorms.cs b/src/Lucene.Net.Tests/core/Index/TestCustomNorms.cs
index 03b273c..a723dbb 100644
--- a/src/Lucene.Net.Tests/core/Index/TestCustomNorms.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestCustomNorms.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using CollectionStatistics = Lucene.Net.Search.CollectionStatistics;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -34,7 +35,7 @@ namespace Lucene.Net.Index
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
     using TermStatistics = Lucene.Net.Search.TermStatistics;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestCustomNorms : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDeletionPolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDeletionPolicy.cs b/src/Lucene.Net.Tests/core/Index/TestDeletionPolicy.cs
index 134cc9b..9953a99 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDeletionPolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDeletionPolicy.cs
@@ -1,14 +1,15 @@
 using System;
 using System.Collections.Generic;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDirectoryReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDirectoryReader.cs b/src/Lucene.Net.Tests/core/Index/TestDirectoryReader.cs
index 81c39a8..6a0a2c0 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDirectoryReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDirectoryReader.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.IO;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -11,10 +12,10 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using Lucene41PostingsFormat = Lucene.Net.Codecs.Lucene41.Lucene41PostingsFormat;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -38,10 +39,10 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using NoSuchDirectoryException = Lucene.Net.Store.NoSuchDirectoryException;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
+    using StoredField = StoredField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestDirectoryReader : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDirectoryReaderReopen.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDirectoryReaderReopen.cs b/src/Lucene.Net.Tests/core/Index/TestDirectoryReaderReopen.cs
index 440b61c..d9eca04 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDirectoryReaderReopen.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDirectoryReaderReopen.cs
@@ -2,15 +2,16 @@ using System;
 using System.Collections.Generic;
 using System.Text;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Support;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -36,7 +37,7 @@ namespace Lucene.Net.Index
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestDirectoryReaderReopen : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDoc.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDoc.cs b/src/Lucene.Net.Tests/core/Index/TestDoc.cs
index 2cedc34..a61831d 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDoc.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDoc.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -10,7 +11,7 @@ namespace Lucene.Net.Index
     using Constants = Lucene.Net.Util.Constants;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using InfoStream = Lucene.Net.Util.InfoStream;
     using IOContext = Lucene.Net.Store.IOContext;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
@@ -35,7 +36,7 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TrackingDirectoryWrapper = Lucene.Net.Store.TrackingDirectoryWrapper;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocCount.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocCount.cs b/src/Lucene.Net.Tests/core/Index/TestDocCount.cs
index a6658a8..dc2ecdb 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocCount.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocCount.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -23,8 +24,8 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocInverterPerFieldErrorInfo.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocInverterPerFieldErrorInfo.cs b/src/Lucene.Net.Tests/core/Index/TestDocInverterPerFieldErrorInfo.cs
index fa161a8..e2eb471 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocInverterPerFieldErrorInfo.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocInverterPerFieldErrorInfo.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Text;
@@ -26,12 +27,12 @@ namespace Lucene.Net.Index
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using PrintStreamInfoStream = Lucene.Net.Util.PrintStreamInfoStream;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenFilter = Lucene.Net.Analysis.TokenFilter;
     using Tokenizer = Lucene.Net.Analysis.Tokenizer;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocTermOrds.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocTermOrds.cs b/src/Lucene.Net.Tests/core/Index/TestDocTermOrds.cs
index 395e419..d819e42 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocTermOrds.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocTermOrds.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -27,15 +28,15 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using PostingsFormat = Lucene.Net.Codecs.PostingsFormat;
     using SeekStatus = Lucene.Net.Index.TermsEnum.SeekStatus;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using StringHelper = Lucene.Net.Util.StringHelper;
     using TestUtil = Lucene.Net.Util.TestUtil;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocValuesIndexing.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocValuesIndexing.cs b/src/Lucene.Net.Tests/core/Index/TestDocValuesIndexing.cs
index 93631ee..82544b7 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocValuesIndexing.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocValuesIndexing.cs
@@ -1,5 +1,6 @@
 using Apache.NMS.Util;
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -24,20 +25,20 @@ namespace Lucene.Net.Index
          */
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using StringField = Lucene.Net.Document.StringField;
-    using TextField = Lucene.Net.Document.TextField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using StringField = StringField;
+    using TextField = TextField;
 
     ///
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocValuesWithThreads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocValuesWithThreads.cs b/src/Lucene.Net.Tests/core/Index/TestDocValuesWithThreads.cs
index 56da7fe..fe9cb21 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocValuesWithThreads.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocValuesWithThreads.cs
@@ -1,6 +1,7 @@
 using Apache.NMS.Util;
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -8,10 +9,10 @@ namespace Lucene.Net.Index
     using Lucene.Net.Support;
     using NUnit.Framework;
     using System.IO;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -33,8 +34,8 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocsAndPositions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocsAndPositions.cs b/src/Lucene.Net.Tests/core/Index/TestDocsAndPositions.cs
index 9350ffa..f3ddf89 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocsAndPositions.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocsAndPositions.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -10,9 +11,9 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -34,7 +35,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestDocsAndPositions : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDocumentWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDocumentWriter.cs b/src/Lucene.Net.Tests/core/Index/TestDocumentWriter.cs
index 8e808d0..d9ee02c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDocumentWriter.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDocumentWriter.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -26,13 +27,13 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestDocumentWriter : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestDuelingCodecs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestDuelingCodecs.cs b/src/Lucene.Net.Tests/core/Index/TestDuelingCodecs.cs
index 82cff4c..1c7fc47 100644
--- a/src/Lucene.Net.Tests/core/Index/TestDuelingCodecs.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestDuelingCodecs.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -6,7 +7,7 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -28,8 +29,8 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestExceedMaxTermLength.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestExceedMaxTermLength.cs b/src/Lucene.Net.Tests/core/Index/TestExceedMaxTermLength.cs
index 13286cf..7bad15f 100644
--- a/src/Lucene.Net.Tests/core/Index/TestExceedMaxTermLength.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestExceedMaxTermLength.cs
@@ -1,13 +1,14 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestFieldInfos.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestFieldInfos.cs b/src/Lucene.Net.Tests/core/Index/TestFieldInfos.cs
index 07f4101..9a1ab86 100644
--- a/src/Lucene.Net.Tests/core/Index/TestFieldInfos.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestFieldInfos.cs
@@ -21,7 +21,7 @@ namespace Lucene.Net.Index
 
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FieldInfosReader = Lucene.Net.Codecs.FieldInfosReader;
     using FieldInfosWriter = Lucene.Net.Codecs.FieldInfosWriter;
     using IndexOutput = Lucene.Net.Store.IndexOutput;


[4/7] Namespace rename Lucene.Net.Document -> Documents

Posted by sy...@apache.org.
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestFieldsReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestFieldsReader.cs b/src/Lucene.Net.Tests/core/Index/TestFieldsReader.cs
index d606068..ce1cdca 100644
--- a/src/Lucene.Net.Tests/core/Index/TestFieldsReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestFieldsReader.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -8,9 +9,9 @@ namespace Lucene.Net.Index
     using BaseDirectory = Lucene.Net.Store.BaseDirectory;
     using BufferedIndexInput = Lucene.Net.Store.BufferedIndexInput;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using DocumentStoredFieldVisitor = Lucene.Net.Document.DocumentStoredFieldVisitor;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using DocumentStoredFieldVisitor = DocumentStoredFieldVisitor;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IndexOutput = Lucene.Net.Store.IndexOutput;
     using IOContext = Lucene.Net.Store.IOContext;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestFilterAtomicReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestFilterAtomicReader.cs b/src/Lucene.Net.Tests/core/Index/TestFilterAtomicReader.cs
index 567277e..37f6732 100644
--- a/src/Lucene.Net.Tests/core/Index/TestFilterAtomicReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestFilterAtomicReader.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Reflection;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -9,8 +10,8 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestFlex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestFlex.cs b/src/Lucene.Net.Tests/core/Index/TestFlex.cs
index 1dbe926..8a5347c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestFlex.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestFlex.cs
@@ -1,7 +1,9 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Analysis;
-    using Lucene.Net.Document;
+    
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -42,7 +44,7 @@ namespace Lucene.Net.Index
             {
                 if (iter == 0)
                 {
-                    Document doc = new Document();
+                    Documents.Document doc = new Documents.Document();
                     doc.Add(NewTextField("field1", "this is field1", Field.Store.NO));
                     doc.Add(NewTextField("field2", "this is field2", Field.Store.NO));
                     doc.Add(NewTextField("field3", "aaa", Field.Store.NO));
@@ -73,7 +75,7 @@ namespace Lucene.Net.Index
         {
             Directory d = NewDirectory();
             IndexWriter w = new IndexWriter(d, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random())).SetCodec(TestUtil.AlwaysPostingsFormat(new Lucene41PostingsFormat())));
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(NewTextField("f", "a b c", Field.Store.NO));
             w.AddDocument(doc);
             w.ForceMerge(1);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestForTooMuchCloning.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestForTooMuchCloning.cs b/src/Lucene.Net.Tests/core/Index/TestForTooMuchCloning.cs
index aad94c7..4218d04 100644
--- a/src/Lucene.Net.Tests/core/Index/TestForTooMuchCloning.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestForTooMuchCloning.cs
@@ -1,11 +1,12 @@
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -30,7 +31,7 @@ namespace Lucene.Net.Index
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using TermRangeQuery = Lucene.Net.Search.TermRangeQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TopDocs = Lucene.Net.Search.TopDocs;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexFileDeleter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexFileDeleter.cs b/src/Lucene.Net.Tests/core/Index/TestIndexFileDeleter.cs
index 8ef13f9..d995ccc 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexFileDeleter.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexFileDeleter.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IndexOutput = Lucene.Net.Store.IndexOutput;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriter.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriter.cs
index ab8b1e1..9b16201 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriter.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriter.cs
@@ -3,6 +3,7 @@ using System;
 using System.Collections.Generic;
 using System.Text;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -36,7 +37,7 @@ namespace Lucene.Net.Index
     using BasicAutomata = Lucene.Net.Util.Automaton.BasicAutomata;
 
     //using SimpleTextCodec = Lucene.Net.Codecs.simpletext.SimpleTextCodec;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using CharacterRunAutomaton = Lucene.Net.Util.Automaton.CharacterRunAutomaton;
@@ -44,10 +45,10 @@ namespace Lucene.Net.Index
     using Constants = Lucene.Net.Util.Constants;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexOutput = Lucene.Net.Store.IndexOutput;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IOContext = Lucene.Net.Store.IOContext;
@@ -59,7 +60,7 @@ namespace Lucene.Net.Index
     using MatchAllDocsQuery = Lucene.Net.Search.MatchAllDocsQuery;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using NoLockFactory = Lucene.Net.Store.NoLockFactory;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using PackedInts = Lucene.Net.Util.Packed.PackedInts;
     using PhraseQuery = Lucene.Net.Search.PhraseQuery;
@@ -67,13 +68,13 @@ namespace Lucene.Net.Index
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
     using SimpleFSLockFactory = Lucene.Net.Store.SimpleFSLockFactory;
     using SingleInstanceLockFactory = Lucene.Net.Store.SingleInstanceLockFactory;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using StoredField = Lucene.Net.Document.StoredField;
-    using StringField = Lucene.Net.Document.StringField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using StoredField = StoredField;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using ThreadInterruptedException = Lucene.Net.Util.ThreadInterruptedException;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterCommit.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterCommit.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterCommit.cs
index 2b223af..5eccda9 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterCommit.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterCommit.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -26,8 +27,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterConfig.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterConfig.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterConfig.cs
index 1953c61..de69c00 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterConfig.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterConfig.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Util;
 using System.Collections.Generic;
 using System.Reflection;
@@ -9,7 +10,7 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexingChain = Lucene.Net.Index.DocumentsWriterPerThread.IndexingChain;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using InfoStream = Lucene.Net.Util.InfoStream;
@@ -34,7 +35,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using Store = Lucene.Net.Document.Field.Store;
+    using Store = Field.Store;
 
     [TestFixture]
     public class TestIndexWriterConfig : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterDelete.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterDelete.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterDelete.cs
index 8db0b73..1719714 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterDelete.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterDelete.cs
@@ -4,6 +4,7 @@ using System.Collections.Generic;
 using System.Diagnostics;
 using System.Text;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -31,19 +32,19 @@ namespace Lucene.Net.Index
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterExceptions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterExceptions.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterExceptions.cs
index f3eab00..c7d16fb 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterExceptions.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterExceptions.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -29,15 +30,15 @@ namespace Lucene.Net.Index
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using CannedTokenStream = Lucene.Net.Analysis.CannedTokenStream;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IndexOutput = Lucene.Net.Store.IndexOutput;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
@@ -47,15 +48,15 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using PhraseQuery = Lucene.Net.Search.PhraseQuery;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using StringField = Lucene.Net.Document.StringField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using Token = Lucene.Net.Analysis.Token;
     using TokenFilter = Lucene.Net.Analysis.TokenFilter;
     using TokenStream = Lucene.Net.Analysis.TokenStream;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterForceMerge.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterForceMerge.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterForceMerge.cs
index 3656a86..cbcc614 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterForceMerge.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterForceMerge.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterMergePolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterMergePolicy.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterMergePolicy.cs
index 9887507..c849f85 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterMergePolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterMergePolicy.cs
@@ -1,9 +1,11 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterMerging.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterMerging.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterMerging.cs
index 5d6789d..60d30a6 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterMerging.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterMerging.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -26,13 +27,13 @@ namespace Lucene.Net.Index
 
     using AlreadyClosedException = Lucene.Net.Store.AlreadyClosedException;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestIndexWriterMerging : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterNRTIsCurrent.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterNRTIsCurrent.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterNRTIsCurrent.cs
index 06e1893..0e9dafe 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterNRTIsCurrent.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterNRTIsCurrent.cs
@@ -1,6 +1,7 @@
 using Apache.NMS.Util;
 using System;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -10,8 +11,8 @@ namespace Lucene.Net.Index
     using System.IO;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -32,7 +33,7 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestIndexWriterNRTIsCurrent : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterOnDiskFull.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterOnDiskFull.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterOnDiskFull.cs
index 559ce40..306cc3c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterOnDiskFull.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterOnDiskFull.cs
@@ -1,14 +1,15 @@
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -31,13 +32,13 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
     using ScoreDoc = Lucene.Net.Search.ScoreDoc;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Tests for IndexWriter when the disk runs out of space

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterReader.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterReader.cs
index 067b505..9a0c9d3 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterReader.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -12,9 +13,9 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FakeIOException = Lucene.Net.Store.MockDirectoryWrapper.FakeIOException;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using InfoStream = Lucene.Net.Util.InfoStream;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
@@ -41,7 +42,7 @@ namespace Lucene.Net.Index
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using ThreadInterruptedException = Lucene.Net.Util.ThreadInterruptedException;
     using TopDocs = Lucene.Net.Search.TopDocs;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterUnicode.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterUnicode.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterUnicode.cs
index 03fd385..cf2051f 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterUnicode.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterUnicode.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -11,8 +12,8 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using CharsRef = Lucene.Net.Util.CharsRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexWriterWithThreads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexWriterWithThreads.cs b/src/Lucene.Net.Tests/core/Index/TestIndexWriterWithThreads.cs
index bacc13c..af34567 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexWriterWithThreads.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexWriterWithThreads.cs
@@ -2,6 +2,7 @@ using Apache.NMS.Util;
 using System;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -16,9 +17,9 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LockObtainFailedException = Lucene.Net.Store.LockObtainFailedException;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
@@ -42,9 +43,9 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using ThreadInterruptedException = Lucene.Net.Util.ThreadInterruptedException;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIndexableField.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIndexableField.cs b/src/Lucene.Net.Tests/core/Index/TestIndexableField.cs
index 488e846..81bd96f 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIndexableField.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIndexableField.cs
@@ -1,8 +1,9 @@
-using Lucene.Net.Document;
+
 using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.IO;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -32,9 +33,9 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesType = Lucene.Net.Index.FieldInfo.DocValuesType_e;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using Lucene3xCodec = Lucene.Net.Codecs.Lucene3x.Lucene3xCodec;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestIsCurrent.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestIsCurrent.cs b/src/Lucene.Net.Tests/core/Index/TestIsCurrent.cs
index dcacc96..78efb07 100644
--- a/src/Lucene.Net.Tests/core/Index/TestIsCurrent.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestIsCurrent.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Store;
@@ -21,8 +23,8 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
 
     [TestFixture]
     public class TestIsCurrent : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestLazyProxSkipping.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestLazyProxSkipping.cs b/src/Lucene.Net.Tests/core/Index/TestLazyProxSkipping.cs
index 634b94f..59e3e02 100644
--- a/src/Lucene.Net.Tests/core/Index/TestLazyProxSkipping.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestLazyProxSkipping.cs
@@ -22,7 +22,7 @@ namespace Lucene.Net.Index
     using System.IO;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using IOContext = Lucene.Net.Store.IOContext;
@@ -99,7 +99,7 @@ namespace Lucene.Net.Index
                     content = this.Term3 + " " + this.Term2;
                 }
 
-                doc.Add(NewTextField(this.Field, content, Lucene.Net.Document.Field.Store.YES));
+                doc.Add(NewTextField(this.Field, content, Documents.Field.Store.YES));
                 writer.AddDocument(doc);
             }
 
@@ -172,7 +172,7 @@ namespace Lucene.Net.Index
             for (int i = 0; i < 10; i++)
             {
                 Document doc = new Document();
-                doc.Add(NewTextField(this.Field, "a b", Lucene.Net.Document.Field.Store.YES));
+                doc.Add(NewTextField(this.Field, "a b", Documents.Field.Store.YES));
                 writer.AddDocument(doc);
             }
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestLongPostings.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestLongPostings.cs b/src/Lucene.Net.Tests/core/Index/TestLongPostings.cs
index 0c5a350..99dbc8d 100644
--- a/src/Lucene.Net.Tests/core/Index/TestLongPostings.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestLongPostings.cs
@@ -1,6 +1,7 @@
 using Lucene.Net.Analysis.Tokenattributes;
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -29,15 +30,15 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMaxTermFrequency.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMaxTermFrequency.cs b/src/Lucene.Net.Tests/core/Index/TestMaxTermFrequency.cs
index b016200..1717746 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMaxTermFrequency.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMaxTermFrequency.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMixedCodecs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMixedCodecs.cs b/src/Lucene.Net.Tests/core/Index/TestMixedCodecs.cs
index 29627cd..7f4a9fd 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMixedCodecs.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMixedCodecs.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMixedDocValuesUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMixedDocValuesUpdates.cs b/src/Lucene.Net.Tests/core/Index/TestMixedDocValuesUpdates.cs
index a6b0f40..9118a17 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMixedDocValuesUpdates.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMixedDocValuesUpdates.cs
@@ -1,6 +1,7 @@
 using Apache.NMS.Util;
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -8,17 +9,17 @@ namespace Lucene.Net.Index
     using Lucene.Net.Support;
     using NUnit.Framework;
     using System.IO;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMultiDocValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMultiDocValues.cs b/src/Lucene.Net.Tests/core/Index/TestMultiDocValues.cs
index 704999c..b67ea7e 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMultiDocValues.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMultiDocValues.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using System.Collections.Generic;
 
@@ -22,16 +23,16 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMultiFields.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMultiFields.cs b/src/Lucene.Net.Tests/core/Index/TestMultiFields.cs
index 50abf10..8872166 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMultiFields.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMultiFields.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Randomized.Generators;
 using System;
 using System.Collections.Generic;
@@ -5,7 +6,7 @@ using System.Collections.Generic;
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Analysis;
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Store;
     using Lucene.Net.Util;
     using NUnit.Framework;
@@ -54,7 +55,7 @@ namespace Lucene.Net.Index
                 IList<BytesRef> terms = new List<BytesRef>();
 
                 int numDocs = TestUtil.NextInt(Random(), 1, 100 * RANDOM_MULTIPLIER);
-                Document doc = new Document();
+                Documents.Document doc = new Documents.Document();
                 Field f = NewStringField("field", "", Field.Store.NO);
                 doc.Add(f);
                 Field id = NewStringField("id", "", Field.Store.NO);
@@ -187,7 +188,7 @@ namespace Lucene.Net.Index
         {
             Directory dir = NewDirectory();
             IndexWriter w = new IndexWriter(dir, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random())));
-            Document d = new Document();
+            Documents.Document d = new Documents.Document();
             d.Add(NewStringField("f", "j", Field.Store.NO));
             w.AddDocument(d);
             w.Commit();
@@ -207,7 +208,7 @@ namespace Lucene.Net.Index
         {
             Directory dir = NewDirectory();
             IndexWriter w = new IndexWriter(dir, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random())));
-            Document d = new Document();
+            Documents.Document d = new Documents.Document();
             d.Add(NewStringField("f", "j", Field.Store.NO));
             w.AddDocument(d);
             w.Commit();

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestMultiLevelSkipList.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestMultiLevelSkipList.cs b/src/Lucene.Net.Tests/core/Index/TestMultiLevelSkipList.cs
index 0b406c1..3caf34c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestMultiLevelSkipList.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestMultiLevelSkipList.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -25,8 +26,8 @@ namespace Lucene.Net.Index
     using System.IO;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using IOContext = Lucene.Net.Store.IOContext;
     using Lucene41PostingsFormat = Lucene.Net.Codecs.Lucene41.Lucene41PostingsFormat;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestNRTReaderWithThreads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestNRTReaderWithThreads.cs b/src/Lucene.Net.Tests/core/Index/TestNRTReaderWithThreads.cs
index 789dade..77e1ae8 100644
--- a/src/Lucene.Net.Tests/core/Index/TestNRTReaderWithThreads.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestNRTReaderWithThreads.cs
@@ -6,7 +6,7 @@ namespace Lucene.Net.Index
     using Lucene.Net.Support;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestNeverDelete.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestNeverDelete.cs b/src/Lucene.Net.Tests/core/Index/TestNeverDelete.cs
index 4f044cd..a8716fc 100644
--- a/src/Lucene.Net.Tests/core/Index/TestNeverDelete.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestNeverDelete.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 using System.Collections.Generic;
@@ -8,8 +9,8 @@ namespace Lucene.Net.Index
 {
     using Lucene.Net.Support;
     using BaseDirectoryWrapper = Lucene.Net.Store.BaseDirectoryWrapper;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestNoDeletionPolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestNoDeletionPolicy.cs b/src/Lucene.Net.Tests/core/Index/TestNoDeletionPolicy.cs
index c61e80a..ec51a49 100644
--- a/src/Lucene.Net.Tests/core/Index/TestNoDeletionPolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestNoDeletionPolicy.cs
@@ -1,11 +1,12 @@
 using System.Reflection;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestNorms.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestNorms.cs b/src/Lucene.Net.Tests/core/Index/TestNorms.cs
index 32fe000..4f42322 100644
--- a/src/Lucene.Net.Tests/core/Index/TestNorms.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestNorms.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using CollectionStatistics = Lucene.Net.Search.CollectionStatistics;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
 
     //using Slow = Lucene.Net.Util.LuceneTestCase.Slow;
@@ -36,7 +37,7 @@ namespace Lucene.Net.Index
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
     using TermStatistics = Lucene.Net.Search.TermStatistics;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TFIDFSimilarity = Lucene.Net.Search.Similarities.TFIDFSimilarity;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestNumericDocValuesUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestNumericDocValuesUpdates.cs b/src/Lucene.Net.Tests/core/Index/TestNumericDocValuesUpdates.cs
index 2986378..88609ff 100644
--- a/src/Lucene.Net.Tests/core/Index/TestNumericDocValuesUpdates.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestNumericDocValuesUpdates.cs
@@ -1,6 +1,7 @@
 using Apache.NMS.Util;
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -9,12 +10,12 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using System.IO;
     using AssertingDocValuesFormat = Lucene.Net.Codecs.asserting.AssertingDocValuesFormat;
-    using BinaryDocValuesField = Lucene.Net.Document.BinaryDocValuesField;
+    using BinaryDocValuesField = BinaryDocValuesField;
     using Bits = Lucene.Net.Util.Bits;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using DocValuesFormat = Lucene.Net.Codecs.DocValuesFormat;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using Lucene40RWCodec = Lucene.Net.Codecs.Lucene40.Lucene40RWCodec;
@@ -26,11 +27,11 @@ namespace Lucene.Net.Index
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
-    using NumericDocValuesField = Lucene.Net.Document.NumericDocValuesField;
-    using SortedDocValuesField = Lucene.Net.Document.SortedDocValuesField;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using NumericDocValuesField = NumericDocValuesField;
+    using SortedDocValuesField = SortedDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestOmitNorms.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestOmitNorms.cs b/src/Lucene.Net.Tests/core/Index/TestOmitNorms.cs
index a85c82f..9b9a833 100644
--- a/src/Lucene.Net.Tests/core/Index/TestOmitNorms.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestOmitNorms.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Randomized.Generators;
@@ -22,13 +24,13 @@ namespace Lucene.Net.Index
 
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestOmitNorms : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestOmitPositions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestOmitPositions.cs b/src/Lucene.Net.Tests/core/Index/TestOmitPositions.cs
index 189a0be..9118dd0 100644
--- a/src/Lucene.Net.Tests/core/Index/TestOmitPositions.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestOmitPositions.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Randomized.Generators;
@@ -24,13 +26,13 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     ///
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestOmitTf.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestOmitTf.cs b/src/Lucene.Net.Tests/core/Index/TestOmitTf.cs
index b818a97..6afd51c 100644
--- a/src/Lucene.Net.Tests/core/Index/TestOmitTf.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestOmitTf.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -28,10 +29,10 @@ namespace Lucene.Net.Index
     using CollectionStatistics = Lucene.Net.Search.CollectionStatistics;
     using Collector = Lucene.Net.Search.Collector;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using Explanation = Lucene.Net.Search.Explanation;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
@@ -40,7 +41,7 @@ namespace Lucene.Net.Index
     using Scorer = Lucene.Net.Search.Scorer;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TermStatistics = Lucene.Net.Search.TermStatistics;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TFIDFSimilarity = Lucene.Net.Search.Similarities.TFIDFSimilarity;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestParallelAtomicReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestParallelAtomicReader.cs b/src/Lucene.Net.Tests/core/Index/TestParallelAtomicReader.cs
index 6417078..5ebfe46 100644
--- a/src/Lucene.Net.Tests/core/Index/TestParallelAtomicReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestParallelAtomicReader.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using AlreadyClosedException = Lucene.Net.Store.AlreadyClosedException;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestParallelCompositeReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestParallelCompositeReader.cs b/src/Lucene.Net.Tests/core/Index/TestParallelCompositeReader.cs
index 5eea2c4..8d76978 100644
--- a/src/Lucene.Net.Tests/core/Index/TestParallelCompositeReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestParallelCompositeReader.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using AlreadyClosedException = Lucene.Net.Store.AlreadyClosedException;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestParallelReaderEmptyIndex.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestParallelReaderEmptyIndex.cs b/src/Lucene.Net.Tests/core/Index/TestParallelReaderEmptyIndex.cs
index f708eb8..c9d7160 100644
--- a/src/Lucene.Net.Tests/core/Index/TestParallelReaderEmptyIndex.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestParallelReaderEmptyIndex.cs
@@ -1,12 +1,13 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -28,7 +29,7 @@ namespace Lucene.Net.Index
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Some tests for <seealso cref="ParallelAtomicReader"/>s with empty indexes

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestParallelTermEnum.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestParallelTermEnum.cs b/src/Lucene.Net.Tests/core/Index/TestParallelTermEnum.cs
index e3e46ae..bd97439 100644
--- a/src/Lucene.Net.Tests/core/Index/TestParallelTermEnum.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestParallelTermEnum.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestPayloads.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestPayloads.cs b/src/Lucene.Net.Tests/core/Index/TestPayloads.cs
index 10adb81..903225a 100644
--- a/src/Lucene.Net.Tests/core/Index/TestPayloads.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestPayloads.cs
@@ -3,6 +3,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -32,13 +33,13 @@ namespace Lucene.Net.Index
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using PayloadAttribute = Lucene.Net.Analysis.Tokenattributes.PayloadAttribute;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestPayloads : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestPayloadsOnVectors.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestPayloadsOnVectors.cs b/src/Lucene.Net.Tests/core/Index/TestPayloadsOnVectors.cs
index 04587a9..b95a5fe 100644
--- a/src/Lucene.Net.Tests/core/Index/TestPayloadsOnVectors.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestPayloadsOnVectors.cs
@@ -1,5 +1,6 @@
 using Lucene.Net.Analysis.Tokenattributes;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -27,13 +28,13 @@ namespace Lucene.Net.Index
 
     using CannedTokenStream = Lucene.Net.Analysis.CannedTokenStream;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using Token = Lucene.Net.Analysis.Token;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestPersistentSnapshotDeletionPolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestPersistentSnapshotDeletionPolicy.cs b/src/Lucene.Net.Tests/core/Index/TestPersistentSnapshotDeletionPolicy.cs
index 86cf43f..70c47cc 100644
--- a/src/Lucene.Net.Tests/core/Index/TestPersistentSnapshotDeletionPolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestPersistentSnapshotDeletionPolicy.cs
@@ -24,7 +24,7 @@ namespace Lucene.Net.Index
          * the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestPostingsOffsets.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestPostingsOffsets.cs b/src/Lucene.Net.Tests/core/Index/TestPostingsOffsets.cs
index c502797..cd552a5 100644
--- a/src/Lucene.Net.Tests/core/Index/TestPostingsOffsets.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestPostingsOffsets.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Linq;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -30,19 +31,19 @@ namespace Lucene.Net.Index
     using CannedTokenStream = Lucene.Net.Analysis.CannedTokenStream;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using FieldType = Lucene.Net.Document.FieldType;
-    using IntField = Lucene.Net.Document.IntField;
+    using FieldType = FieldType;
+    using IntField = IntField;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockPayloadAnalyzer = Lucene.Net.Analysis.MockPayloadAnalyzer;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using Token = Lucene.Net.Analysis.Token;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestReaderClosed.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestReaderClosed.cs b/src/Lucene.Net.Tests/core/Index/TestReaderClosed.cs
index 8de3973..6b3722b 100644
--- a/src/Lucene.Net.Tests/core/Index/TestReaderClosed.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestReaderClosed.cs
@@ -1,10 +1,12 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using AlreadyClosedException = Lucene.Net.Store.AlreadyClosedException;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestRollback.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestRollback.cs b/src/Lucene.Net.Tests/core/Index/TestRollback.cs
index ad0ab62..d591d75 100644
--- a/src/Lucene.Net.Tests/core/Index/TestRollback.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestRollback.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestRollingUpdates.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestRollingUpdates.cs b/src/Lucene.Net.Tests/core/Index/TestRollingUpdates.cs
index e48ab8c..6908c31 100644
--- a/src/Lucene.Net.Tests/core/Index/TestRollingUpdates.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestRollingUpdates.cs
@@ -1,9 +1,10 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     //using MemoryPostingsFormat = Lucene.Net.Codecs.memory.MemoryPostingsFormat;
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Randomized.Generators;
     using Lucene.Net.Store;
     using Lucene.Net.Support;
@@ -69,7 +70,7 @@ namespace Lucene.Net.Index
             // TODO: sometimes update ids not in order...
             for (int docIter = 0; docIter < numUpdates; docIter++)
             {
-                Document doc = docs.NextDoc();
+                Documents.Document doc = docs.NextDoc();
                 string myID = "" + id;
                 if (id == SIZE - 1)
                 {
@@ -241,7 +242,7 @@ namespace Lucene.Net.Index
                     DirectoryReader open = null;
                     for (int i = 0; i < Num; i++)
                     {
-                        Document doc = new Document(); // docs.NextDoc();
+                        Documents.Document doc = new Documents.Document(); // docs.NextDoc();
                         doc.Add(NewStringField("id", "test", Field.Store.NO));
                         Writer.UpdateDocument(new Term("id", "test"), doc);
                         if (Random().Next(3) == 0)

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSameTokenSamePosition.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSameTokenSamePosition.cs b/src/Lucene.Net.Tests/core/Index/TestSameTokenSamePosition.cs
index abc2c38..c68abf1 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSameTokenSamePosition.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSameTokenSamePosition.cs
@@ -1,12 +1,13 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 using NUnit.Framework;
 
 namespace Lucene.Net.Index
 {
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSegmentMerger.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSegmentMerger.cs b/src/Lucene.Net.Tests/core/Index/TestSegmentMerger.cs
index 9c23269..c4b215b 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSegmentMerger.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSegmentMerger.cs
@@ -26,7 +26,7 @@ namespace Lucene.Net.Index
     using Constants = Lucene.Net.Util.Constants;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using InfoStream = Lucene.Net.Util.InfoStream;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSegmentReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSegmentReader.cs b/src/Lucene.Net.Tests/core/Index/TestSegmentReader.cs
index ec6e397..a28f97e 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSegmentReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSegmentReader.cs
@@ -24,7 +24,7 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IOContext = Lucene.Net.Store.IOContext;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSegmentTermDocs.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSegmentTermDocs.cs b/src/Lucene.Net.Tests/core/Index/TestSegmentTermDocs.cs
index e21fed9..161e6ae 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSegmentTermDocs.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSegmentTermDocs.cs
@@ -1,11 +1,13 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSegmentTermEnum.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSegmentTermEnum.cs b/src/Lucene.Net.Tests/core/Index/TestSegmentTermEnum.cs
index a834e54..529d9f2 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSegmentTermEnum.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSegmentTermEnum.cs
@@ -1,9 +1,11 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -22,7 +24,7 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using Lucene41PostingsFormat = Lucene.Net.Codecs.Lucene41.Lucene41PostingsFormat;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSizeBoundedForceMerge.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSizeBoundedForceMerge.cs b/src/Lucene.Net.Tests/core/Index/TestSizeBoundedForceMerge.cs
index 6dbf418..c9080e0 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSizeBoundedForceMerge.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSizeBoundedForceMerge.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
@@ -20,11 +22,11 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
 
     [TestFixture]
     public class TestSizeBoundedForceMerge : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSnapshotDeletionPolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSnapshotDeletionPolicy.cs b/src/Lucene.Net.Tests/core/Index/TestSnapshotDeletionPolicy.cs
index ea56a80..eddd3bb 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSnapshotDeletionPolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSnapshotDeletionPolicy.cs
@@ -1,14 +1,15 @@
 using System;
 using System.Collections.Generic;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
     using Lucene.Net.Support;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using FieldType = FieldType;
     using IndexInput = Lucene.Net.Store.IndexInput;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -30,7 +31,7 @@ namespace Lucene.Net.Index
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using ThreadInterruptedException = Lucene.Net.Util.ThreadInterruptedException;
 
     //

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestStressAdvance.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestStressAdvance.cs b/src/Lucene.Net.Tests/core/Index/TestStressAdvance.cs
index 9f65d25..66e43a0 100644
--- a/src/Lucene.Net.Tests/core/Index/TestStressAdvance.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestStressAdvance.cs
@@ -1,9 +1,10 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Store;
 
     /*
@@ -42,7 +43,7 @@ namespace Lucene.Net.Index
                 Directory dir = NewDirectory();
                 RandomIndexWriter w = new RandomIndexWriter(Random(), dir);
                 HashSet<int> aDocs = new HashSet<int>();
-                Document doc = new Document();
+                Documents.Document doc = new Documents.Document();
                 Field f = NewStringField("field", "", Field.Store.NO);
                 doc.Add(f);
                 Field idField = NewStringField("id", "", Field.Store.YES);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestStressIndexing.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestStressIndexing.cs b/src/Lucene.Net.Tests/core/Index/TestStressIndexing.cs
index 9664361..2cb8922 100644
--- a/src/Lucene.Net.Tests/core/Index/TestStressIndexing.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestStressIndexing.cs
@@ -1,9 +1,10 @@
 using System;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Search;
     using Lucene.Net.Store;
     using Lucene.Net.Support;
@@ -104,7 +105,7 @@ namespace Lucene.Net.Index
                 // Add 10 docs:
                 for (int j = 0; j < 10; j++)
                 {
-                    Document d = new Document();
+                    Documents.Document d = new Documents.Document();
                     int n = Random().Next();
                     d.Add(NewStringField("id", Convert.ToString(NextID++), Field.Store.YES));
                     d.Add(NewTextField("contents", English.IntToEnglish(n), Field.Store.NO));

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestStressIndexing2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestStressIndexing2.cs b/src/Lucene.Net.Tests/core/Index/TestStressIndexing2.cs
index f2eaef9..f171ed6 100644
--- a/src/Lucene.Net.Tests/core/Index/TestStressIndexing2.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestStressIndexing2.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -12,9 +13,9 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
 
     /*
     /// Licensed under the Apache License, Version 2.0 (the "License");
@@ -33,7 +34,7 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using TermQuery = Lucene.Net.Search.TermQuery;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestStressIndexing2 : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestStressNRT.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestStressNRT.cs b/src/Lucene.Net.Tests/core/Index/TestStressNRT.cs
index 31b1154..b514ec0 100644
--- a/src/Lucene.Net.Tests/core/Index/TestStressNRT.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestStressNRT.cs
@@ -3,6 +3,7 @@ using System.Collections.Concurrent;
 using System.Collections.Generic;
 using System.Diagnostics;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -10,8 +11,8 @@ namespace Lucene.Net.Index
     using Lucene.Net.Support;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using FieldType = FieldType;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -336,7 +337,7 @@ namespace Lucene.Net.Index
                                     if (Tombstones)
                                     {
                                         Document d = new Document();
-                                        d.Add(NewStringField("id", "-" + Convert.ToString(id), Lucene.Net.Document.Field.Store.YES));
+                                        d.Add(NewStringField("id", "-" + Convert.ToString(id), Documents.Field.Store.YES));
                                         d.Add(NewField(OuterInstance.Field, Convert.ToString(nextVal), StoredOnlyType));
                                         Writer.UpdateDocument(new Term("id", "-" + Convert.ToString(id)), d);
                                     }
@@ -356,7 +357,7 @@ namespace Lucene.Net.Index
                                     if (Tombstones)
                                     {
                                         Document d = new Document();
-                                        d.Add(NewStringField("id", "-" + Convert.ToString(id), Lucene.Net.Document.Field.Store.YES));
+                                        d.Add(NewStringField("id", "-" + Convert.ToString(id), Documents.Field.Store.YES));
                                         d.Add(NewField(OuterInstance.Field, Convert.ToString(nextVal), StoredOnlyType));
                                         Writer.UpdateDocument(new Term("id", "-" + Convert.ToString(id)), d);
                                     }
@@ -372,7 +373,7 @@ namespace Lucene.Net.Index
                                 {
                                     // assertU(adoc("id",Integer.toString(id), field, Long.toString(nextVal)));
                                     Document d = new Document();
-                                    d.Add(NewStringField("id", Convert.ToString(id), Lucene.Net.Document.Field.Store.YES));
+                                    d.Add(NewStringField("id", Convert.ToString(id), Documents.Field.Store.YES));
                                     d.Add(NewField(OuterInstance.Field, Convert.ToString(nextVal), StoredOnlyType));
                                     if (VERBOSE)
                                     {

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestSumDocFreq.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestSumDocFreq.cs b/src/Lucene.Net.Tests/core/Index/TestSumDocFreq.cs
index 2e130dd..eb923a2 100644
--- a/src/Lucene.Net.Tests/core/Index/TestSumDocFreq.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestSumDocFreq.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -22,8 +23,8 @@ namespace Lucene.Net.Index
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TestUtil = Lucene.Net.Util.TestUtil;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTermVectorsReader.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTermVectorsReader.cs b/src/Lucene.Net.Tests/core/Index/TestTermVectorsReader.cs
index d908a9d..8c96879 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTermVectorsReader.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTermVectorsReader.cs
@@ -1,5 +1,6 @@
 using Lucene.Net.Analysis.Tokenattributes;
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -27,13 +28,13 @@ namespace Lucene.Net.Index
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using TermVectorsReader = Lucene.Net.Codecs.TermVectorsReader;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestTermVectorsReader : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTermVectorsWriter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTermVectorsWriter.cs b/src/Lucene.Net.Tests/core/Index/TestTermVectorsWriter.cs
index 6de32b7..0e4056d 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTermVectorsWriter.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTermVectorsWriter.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Index
 {
     using NUnit.Framework;
@@ -25,9 +27,9 @@ namespace Lucene.Net.Index
     using CachingTokenFilter = Lucene.Net.Analysis.CachingTokenFilter;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
@@ -35,8 +37,8 @@ namespace Lucene.Net.Index
     using MockTokenFilter = Lucene.Net.Analysis.MockTokenFilter;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
-    using StringField = Lucene.Net.Document.StringField;
-    using TextField = Lucene.Net.Document.TextField;
+    using StringField = StringField;
+    using TextField = TextField;
     using TokenStream = Lucene.Net.Analysis.TokenStream;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTermdocPerf.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTermdocPerf.cs b/src/Lucene.Net.Tests/core/Index/TestTermdocPerf.cs
index ef86cac..fe83c63 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTermdocPerf.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTermdocPerf.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -27,8 +28,8 @@ namespace Lucene.Net.Index
     using CharTermAttribute = Lucene.Net.Analysis.Tokenattributes.CharTermAttribute;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTermsEnum.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTermsEnum.cs b/src/Lucene.Net.Tests/core/Index/TestTermsEnum.cs
index 3d24427..95a6dcb 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTermsEnum.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTermsEnum.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -12,10 +13,10 @@ namespace Lucene.Net.Index
     using CompiledAutomaton = Lucene.Net.Util.Automaton.CompiledAutomaton;
     using Directory = Lucene.Net.Store.Directory;
     using DocIdSetIterator = Lucene.Net.Search.DocIdSetIterator;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldCache_Fields = Lucene.Net.Search.FieldCache_Fields;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LineFileDocs = Lucene.Net.Util.LineFileDocs;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTermsEnum2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTermsEnum2.cs b/src/Lucene.Net.Tests/core/Index/TestTermsEnum2.cs
index c1efa3f..1bb418b 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTermsEnum2.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTermsEnum2.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -11,8 +12,8 @@ namespace Lucene.Net.Index
     using CheckHits = Lucene.Net.Search.CheckHits;
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 


[3/7] Namespace rename Lucene.Net.Document -> Documents

Posted by sy...@apache.org.
http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestThreadedForceMerge.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestThreadedForceMerge.cs b/src/Lucene.Net.Tests/core/Index/TestThreadedForceMerge.cs
index 3d583ca..eee3f5b 100644
--- a/src/Lucene.Net.Tests/core/Index/TestThreadedForceMerge.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestThreadedForceMerge.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,9 +8,9 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -32,7 +33,7 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using OpenMode_e = Lucene.Net.Index.IndexWriterConfig.OpenMode_e;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
 
     [TestFixture]
     public class TestThreadedForceMerge : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTieredMergePolicy.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTieredMergePolicy.cs b/src/Lucene.Net.Tests/core/Index/TestTieredMergePolicy.cs
index 9f90d2d..9d58ca1 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTieredMergePolicy.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTieredMergePolicy.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Store;
 using System;
 
@@ -5,8 +6,8 @@ namespace Lucene.Net.Index
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTransactionRollback.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTransactionRollback.cs b/src/Lucene.Net.Tests/core/Index/TestTransactionRollback.cs
index 46e5bb4..6851290 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTransactionRollback.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTransactionRollback.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -8,8 +9,8 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using Bits = Lucene.Net.Util.Bits;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTransactions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTransactions.cs b/src/Lucene.Net.Tests/core/Index/TestTransactions.cs
index a58f0ff..c56ffb9 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTransactions.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTransactions.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Threading;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -7,10 +8,10 @@ namespace Lucene.Net.Index
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Field = Field;
+    using FieldType = FieldType;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -33,7 +34,7 @@ namespace Lucene.Net.Index
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
 
     [TestFixture]
     public class TestTransactions : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Index/TestTryDelete.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Index/TestTryDelete.cs b/src/Lucene.Net.Tests/core/Index/TestTryDelete.cs
index cc04398..5934192 100644
--- a/src/Lucene.Net.Tests/core/Index/TestTryDelete.cs
+++ b/src/Lucene.Net.Tests/core/Index/TestTryDelete.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Index
 {
@@ -6,7 +7,7 @@ namespace Lucene.Net.Index
     using Lucene.Net.Search;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexSearcher = Lucene.Net.Search.IndexSearcher;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -33,8 +34,8 @@ namespace Lucene.Net.Index
     using ReferenceManager = Lucene.Net.Search.ReferenceManager;
     using SearcherFactory = Lucene.Net.Search.SearcherFactory;
     using SearcherManager = Lucene.Net.Search.SearcherManager;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using TermQuery = Lucene.Net.Search.TermQuery;
     using TopDocs = Lucene.Net.Search.TopDocs;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/BaseTestRangeFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/BaseTestRangeFilter.cs b/src/Lucene.Net.Tests/core/Search/BaseTestRangeFilter.cs
index fbf4dee..adaa8c8 100644
--- a/src/Lucene.Net.Tests/core/Search/BaseTestRangeFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/BaseTestRangeFilter.cs
@@ -1,12 +1,13 @@
 using System;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/FuzzyTermOnShortTermsTest.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/FuzzyTermOnShortTermsTest.cs b/src/Lucene.Net.Tests/core/Search/FuzzyTermOnShortTermsTest.cs
index 3530024..1b9fb84 100644
--- a/src/Lucene.Net.Tests/core/Search/FuzzyTermOnShortTermsTest.cs
+++ b/src/Lucene.Net.Tests/core/Search/FuzzyTermOnShortTermsTest.cs
@@ -15,6 +15,8 @@
  * limitations under the License.
  */
 
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -22,8 +24,8 @@ namespace Lucene.Net.Search
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Payloads/PayloadHelper.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Payloads/PayloadHelper.cs b/src/Lucene.Net.Tests/core/Search/Payloads/PayloadHelper.cs
index 0e8df04..a88b90e 100644
--- a/src/Lucene.Net.Tests/core/Search/Payloads/PayloadHelper.cs
+++ b/src/Lucene.Net.Tests/core/Search/Payloads/PayloadHelper.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 
@@ -26,9 +27,9 @@ namespace Lucene.Net.Search.Payloads
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -36,7 +37,7 @@ namespace Lucene.Net.Search.Payloads
     using MockDirectoryWrapper = Lucene.Net.Store.MockDirectoryWrapper;
     using RAMDirectory = Lucene.Net.Store.RAMDirectory;
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     ///
     ///

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadNearQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadNearQuery.cs b/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadNearQuery.cs
index c6ed416..9df0229 100644
--- a/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadNearQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadNearQuery.cs
@@ -1,5 +1,6 @@
 using Lucene.Net.Analysis.Tokenattributes;
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Payloads
 {
@@ -26,9 +27,9 @@ namespace Lucene.Net.Search.Payloads
     using BytesRef = Lucene.Net.Util.BytesRef;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadTermQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadTermQuery.cs b/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadTermQuery.cs
index 9853362..2f0ced7 100644
--- a/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadTermQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/Payloads/TestPayloadTermQuery.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Payloads
 {
@@ -26,9 +27,9 @@ namespace Lucene.Net.Search.Payloads
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarity2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarity2.cs b/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarity2.cs
index 1d35d9e..a3e68a1 100644
--- a/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarity2.cs
+++ b/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarity2.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 
 namespace Lucene.Net.Search.Similarities
@@ -23,16 +24,16 @@ namespace Lucene.Net.Search.Similarities
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using SpanOrQuery = Lucene.Net.Search.Spans.SpanOrQuery;
     using SpanTermQuery = Lucene.Net.Search.Spans.SpanTermQuery;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Tests against all the similarities we have

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarityBase.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarityBase.cs b/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarityBase.cs
index 49e0f43..a04f946 100644
--- a/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarityBase.cs
+++ b/src/Lucene.Net.Tests/core/Search/Similarities/TestSimilarityBase.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Similarities
 {
@@ -25,15 +26,15 @@ namespace Lucene.Net.Search.Similarities
 
     using Codec = Lucene.Net.Codecs.Codec;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Tests the <seealso cref="SimilarityBase"/>-based Similarities. Contains unit tests and

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestBasics.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestBasics.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestBasics.cs
index 5c71a7e..0aef0b3 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestBasics.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestBasics.cs
@@ -1,4 +1,5 @@
 using Lucene.Net.Analysis.Tokenattributes;
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System.Collections.Generic;
 
@@ -27,9 +28,9 @@ namespace Lucene.Net.Search.Spans
     using System.IO;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using English = Lucene.Net.Util.English;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestFieldMaskingSpanQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestFieldMaskingSpanQuery.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestFieldMaskingSpanQuery.cs
index f846145..fcdada5 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestFieldMaskingSpanQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestFieldMaskingSpanQuery.cs
@@ -1,11 +1,12 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Spans
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestNearSpansOrdered.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestNearSpansOrdered.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestNearSpansOrdered.cs
index d10911e..480e814 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestNearSpansOrdered.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestNearSpansOrdered.cs
@@ -1,11 +1,13 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search.Spans
 {
     using Lucene.Net.Index;
     using NUnit.Framework;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexReaderContext = Lucene.Net.Index.IndexReaderContext;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestPayloadSpans.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestPayloadSpans.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestPayloadSpans.cs
index 96c9924..45ce22a 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestPayloadSpans.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestPayloadSpans.cs
@@ -2,6 +2,7 @@ using Lucene.Net.Analysis.Tokenattributes;
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Spans
 {
@@ -28,8 +29,8 @@ namespace Lucene.Net.Search.Spans
     using BytesRef = Lucene.Net.Util.BytesRef;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
@@ -38,7 +39,7 @@ namespace Lucene.Net.Search.Spans
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using TokenFilter = Lucene.Net.Analysis.TokenFilter;
     using Tokenizer = Lucene.Net.Analysis.Tokenizer;
     using TokenStream = Lucene.Net.Analysis.TokenStream;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestSpanFirstQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestSpanFirstQuery.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestSpanFirstQuery.cs
index 424a049..4d53ab9 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestSpanFirstQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestSpanFirstQuery.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search.Spans
 {
     using NUnit.Framework;
@@ -22,8 +24,8 @@ namespace Lucene.Net.Search.Spans
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using CharacterRunAutomaton = Lucene.Net.Util.Automaton.CharacterRunAutomaton;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestSpanMultiTermQueryWrapper.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestSpanMultiTermQueryWrapper.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestSpanMultiTermQueryWrapper.cs
index b0593eb..87569cc 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestSpanMultiTermQueryWrapper.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestSpanMultiTermQueryWrapper.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search.Spans
 {
     using NUnit.Framework;
@@ -20,8 +22,8 @@ namespace Lucene.Net.Search.Spans
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestSpans.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestSpans.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestSpans.cs
index 5ffada5..f0485b3 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestSpans.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestSpans.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Spans
 {
@@ -8,8 +9,8 @@ namespace Lucene.Net.Search.Spans
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexReaderContext = Lucene.Net.Index.IndexReaderContext;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/Spans/TestSpansAdvanced.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/Spans/TestSpansAdvanced.cs b/src/Lucene.Net.Tests/core/Search/Spans/TestSpansAdvanced.cs
index 4be46b7..857ced7 100644
--- a/src/Lucene.Net.Tests/core/Search/Spans/TestSpansAdvanced.cs
+++ b/src/Lucene.Net.Tests/core/Search/Spans/TestSpansAdvanced.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search.Spans
 {
@@ -6,7 +7,7 @@ namespace Lucene.Net.Search.Spans
     using NUnit.Framework;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -25,7 +26,7 @@ namespace Lucene.Net.Search.Spans
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestAutomatonQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestAutomatonQuery.cs b/src/Lucene.Net.Tests/core/Search/TestAutomatonQuery.cs
index 86e51fd..ee35231 100644
--- a/src/Lucene.Net.Tests/core/Search/TestAutomatonQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestAutomatonQuery.cs
@@ -1,4 +1,5 @@
 using Apache.NMS.Util;
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 
@@ -28,8 +29,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MultiFields = Lucene.Net.Index.MultiFields;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestAutomatonQueryUnicode.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestAutomatonQueryUnicode.cs b/src/Lucene.Net.Tests/core/Search/TestAutomatonQueryUnicode.cs
index 41b8904..581016e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestAutomatonQueryUnicode.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestAutomatonQueryUnicode.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -21,8 +23,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBoolean2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBoolean2.cs b/src/Lucene.Net.Tests/core/Search/TestBoolean2.cs
index 16d03f4..360c465 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBoolean2.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBoolean2.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -7,8 +8,8 @@ namespace Lucene.Net.Search
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IOContext = Lucene.Net.Store.IOContext;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBooleanMinShouldMatch.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBooleanMinShouldMatch.cs b/src/Lucene.Net.Tests/core/Search/TestBooleanMinShouldMatch.cs
index e085cdf..f1ea5f6 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBooleanMinShouldMatch.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBooleanMinShouldMatch.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Globalization;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -7,7 +8,7 @@ namespace Lucene.Net.Search
     using NUnit.Framework;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -26,7 +27,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBooleanOr.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBooleanOr.cs b/src/Lucene.Net.Tests/core/Search/TestBooleanOr.cs
index 9e63361..f0373d6 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBooleanOr.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBooleanOr.cs
@@ -1,10 +1,12 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Support;
     using NUnit.Framework;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
@@ -30,7 +32,7 @@ namespace Lucene.Net.Search
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestBooleanOr : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBooleanQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBooleanQuery.cs b/src/Lucene.Net.Tests/core/Search/TestBooleanQuery.cs
index 974aa73..cc42669 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBooleanQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBooleanQuery.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -27,8 +28,8 @@ namespace Lucene.Net.Search
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -38,7 +39,7 @@ namespace Lucene.Net.Search
     using SpanQuery = Lucene.Net.Search.Spans.SpanQuery;
     using SpanTermQuery = Lucene.Net.Search.Spans.SpanTermQuery;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestBooleanQuery : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBooleanQueryVisitSubscorers.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBooleanQueryVisitSubscorers.cs b/src/Lucene.Net.Tests/core/Search/TestBooleanQueryVisitSubscorers.cs
index b0a9813..0e99a7f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBooleanQueryVisitSubscorers.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBooleanQueryVisitSubscorers.cs
@@ -1,4 +1,5 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -25,15 +26,15 @@ namespace Lucene.Net.Search
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using ChildScorer = Lucene.Net.Search.Scorer.ChildScorer;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using Store = Lucene.Net.Document.Field.Store;
+    using Store = Field.Store;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     // TODO: refactor to a base class, that collects freqs from the scorer tree
     // and test all queries with it

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestBooleanScorer.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestBooleanScorer.cs b/src/Lucene.Net.Tests/core/Search/TestBooleanScorer.cs
index c7f4fa1..592048c 100644
--- a/src/Lucene.Net.Tests/core/Search/TestBooleanScorer.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestBooleanScorer.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -28,13 +29,13 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestBooleanScorer : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestCachingWrapperFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestCachingWrapperFilter.cs b/src/Lucene.Net.Tests/core/Search/TestCachingWrapperFilter.cs
index fe73705..b4f2a4e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestCachingWrapperFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestCachingWrapperFilter.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -8,8 +9,8 @@ namespace Lucene.Net.Search
     using Bits = Lucene.Net.Util.Bits;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IOUtils = Lucene.Net.Util.IOUtils;
@@ -36,7 +37,7 @@ namespace Lucene.Net.Search
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using SerialMergeScheduler = Lucene.Net.Index.SerialMergeScheduler;
     using SlowCompositeReaderWrapper = Lucene.Net.Index.SlowCompositeReaderWrapper;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
 
     [TestFixture]

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestConjunctions.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestConjunctions.cs b/src/Lucene.Net.Tests/core/Search/TestConjunctions.cs
index f342863..66c0356 100644
--- a/src/Lucene.Net.Tests/core/Search/TestConjunctions.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestConjunctions.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -23,7 +25,7 @@ namespace Lucene.Net.Search
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -31,10 +33,10 @@ namespace Lucene.Net.Search
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Similarity = Lucene.Net.Search.Similarities.Similarity;
-    using Store = Lucene.Net.Document.Field.Store;
-    using StringField = Lucene.Net.Document.StringField;
+    using Store = Field.Store;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestConjunctions : LuceneTestCase

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestConstantScoreQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestConstantScoreQuery.cs b/src/Lucene.Net.Tests/core/Search/TestConstantScoreQuery.cs
index 08d2678..d95f108 100644
--- a/src/Lucene.Net.Tests/core/Search/TestConstantScoreQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestConstantScoreQuery.cs
@@ -1,4 +1,5 @@
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -24,8 +25,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestCustomSearcherSort.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestCustomSearcherSort.cs b/src/Lucene.Net.Tests/core/Search/TestCustomSearcherSort.cs
index 8374544..dfa1d3c 100644
--- a/src/Lucene.Net.Tests/core/Search/TestCustomSearcherSort.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestCustomSearcherSort.cs
@@ -2,6 +2,7 @@ using System;
 using System.Collections.Generic;
 using System.Globalization;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -23,10 +24,10 @@ namespace Lucene.Net.Search
     /// limitations under the License.
     /// </summary>
 
-    using DateTools = Lucene.Net.Document.DateTools;
+    using DateTools = DateTools;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDateFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDateFilter.cs b/src/Lucene.Net.Tests/core/Search/TestDateFilter.cs
index c76f0eb..ad4d157 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDateFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDateFilter.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
-    using DateTools = Lucene.Net.Document.DateTools;
+    using DateTools = DateTools;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -24,7 +25,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDateSort.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDateSort.cs b/src/Lucene.Net.Tests/core/Search/TestDateSort.cs
index 4fff7ca..b92cdf3 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDateSort.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDateSort.cs
@@ -1,11 +1,13 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Support;
     using NUnit.Framework;
-    using DateTools = Lucene.Net.Document.DateTools;
+    using DateTools = DateTools;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDisjunctionMaxQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDisjunctionMaxQuery.cs b/src/Lucene.Net.Tests/core/Search/TestDisjunctionMaxQuery.cs
index a1770a7..8e31fec 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDisjunctionMaxQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDisjunctionMaxQuery.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Globalization;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -10,7 +11,7 @@ namespace Lucene.Net.Search
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -29,9 +30,9 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -43,7 +44,7 @@ namespace Lucene.Net.Search
     using SpanQuery = Lucene.Net.Search.Spans.SpanQuery;
     using SpanTermQuery = Lucene.Net.Search.Spans.SpanTermQuery;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Test of the DisjunctionMaxQuery.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDocBoost.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDocBoost.cs b/src/Lucene.Net.Tests/core/Search/TestDocBoost.cs
index 5a8aacc..fe5a24f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDocBoost.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDocBoost.cs
@@ -1,8 +1,9 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
-    using Lucene.Net.Document;
+    
     using NUnit.Framework;
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using Directory = Lucene.Net.Store.Directory;
@@ -48,8 +49,8 @@ namespace Lucene.Net.Search
             Field f2 = NewTextField("field", "word", Field.Store.YES);
             f2.Boost = 2.0f;
 
-            Document d1 = new Document();
-            Document d2 = new Document();
+            Documents.Document d1 = new Documents.Document();
+            Documents.Document d2 = new Documents.Document();
 
             d1.Add(f1); // boost = 1
             d2.Add(f2); // boost = 2

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDocIdSet.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDocIdSet.cs b/src/Lucene.Net.Tests/core/Search/TestDocIdSet.cs
index 881df5d..1caf080 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDocIdSet.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDocIdSet.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -26,8 +27,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRangeFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRangeFilter.cs b/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRangeFilter.cs
index 087413d..b373d0d 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRangeFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRangeFilter.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 using System;
 using System.Collections.Generic;
@@ -7,8 +8,8 @@ namespace Lucene.Net.Search
     using Lucene.Net.Randomized.Generators;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -32,7 +33,7 @@ namespace Lucene.Net.Search
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
     using UnicodeUtil = Lucene.Net.Util.UnicodeUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRewriteMethod.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRewriteMethod.cs b/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRewriteMethod.cs
index 093dd3f..8d6d6d1 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRewriteMethod.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDocTermOrdsRewriteMethod.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -8,8 +9,8 @@ namespace Lucene.Net.Search
     using AutomatonTestUtil = Lucene.Net.Util.Automaton.AutomatonTestUtil;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
@@ -34,7 +35,7 @@ namespace Lucene.Net.Search
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using RegExp = Lucene.Net.Util.Automaton.RegExp;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
     using UnicodeUtil = Lucene.Net.Util.UnicodeUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestDocValuesScoring.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestDocValuesScoring.cs b/src/Lucene.Net.Tests/core/Search/TestDocValuesScoring.cs
index abc7862..009d91d 100644
--- a/src/Lucene.Net.Tests/core/Search/TestDocValuesScoring.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestDocValuesScoring.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Index;
@@ -23,10 +25,10 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FieldInvertState = Lucene.Net.Index.FieldInvertState;
-    using FloatDocValuesField = Lucene.Net.Document.FloatDocValuesField;
+    using FloatDocValuesField = FloatDocValuesField;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using PerFieldSimilarityWrapper = Lucene.Net.Search.Similarities.PerFieldSimilarityWrapper;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestEarlyTermination.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestEarlyTermination.cs b/src/Lucene.Net.Tests/core/Search/TestEarlyTermination.cs
index c60a93e..5eca218 100644
--- a/src/Lucene.Net.Tests/core/Search/TestEarlyTermination.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestEarlyTermination.cs
@@ -22,7 +22,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestElevationComparator.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestElevationComparator.cs b/src/Lucene.Net.Tests/core/Search/TestElevationComparator.cs
index 9f37396..7a016bb 100644
--- a/src/Lucene.Net.Tests/core/Search/TestElevationComparator.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestElevationComparator.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -8,9 +9,9 @@ namespace Lucene.Net.Search
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
     using Entry = Lucene.Net.Search.FieldValueHitQueue.Entry;
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestExplanations.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestExplanations.cs b/src/Lucene.Net.Tests/core/Search/TestExplanations.cs
index 5773906..fe9015e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestExplanations.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestExplanations.cs
@@ -1,10 +1,11 @@
+using Lucene.Net.Documents;
 using NUnit.Framework;
 
 namespace Lucene.Net.Search
 {
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFieldCacheRangeFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFieldCacheRangeFilter.cs b/src/Lucene.Net.Tests/core/Search/TestFieldCacheRangeFilter.cs
index a21ee7c..1593605 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFieldCacheRangeFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFieldCacheRangeFilter.cs
@@ -1,11 +1,12 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -24,7 +25,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFieldCacheTermsFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFieldCacheTermsFilter.cs b/src/Lucene.Net.Tests/core/Search/TestFieldCacheTermsFilter.cs
index 8204324..b8f20ec 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFieldCacheTermsFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFieldCacheTermsFilter.cs
@@ -1,10 +1,11 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -23,7 +24,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFieldValueFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFieldValueFilter.cs b/src/Lucene.Net.Tests/core/Search/TestFieldValueFilter.cs
index c6407d4..4930c24 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFieldValueFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFieldValueFilter.cs
@@ -1,11 +1,13 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Randomized.Generators;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFilteredQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFilteredQuery.cs b/src/Lucene.Net.Tests/core/Search/TestFilteredQuery.cs
index 68b51c3..22cc51f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFilteredQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFilteredQuery.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Util;
 using System;
 using System.Collections;
@@ -12,8 +13,8 @@ namespace Lucene.Net.Search
     using Directory = Lucene.Net.Store.Directory;
     using DocIdBitSet = Lucene.Net.Util.DocIdBitSet;
     using DocsEnum = Lucene.Net.Index.DocsEnum;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FilterStrategy = Lucene.Net.Search.FilteredQuery.FilterStrategy;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IOUtils = Lucene.Net.Util.IOUtils;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFilteredSearch.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFilteredSearch.cs b/src/Lucene.Net.Tests/core/Search/TestFilteredSearch.cs
index d1528bf..a0ceb78 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFilteredSearch.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFilteredSearch.cs
@@ -1,5 +1,4 @@
 using System;
-
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -16,6 +15,7 @@ using System;
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -24,8 +24,8 @@ namespace Lucene.Net.Search
     using Bits = Lucene.Net.Util.Bits;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using FixedBitSet = Lucene.Net.Util.FixedBitSet;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestFuzzyQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestFuzzyQuery.cs b/src/Lucene.Net.Tests/core/Search/TestFuzzyQuery.cs
index 9411d2c..8d4611f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestFuzzyQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestFuzzyQuery.cs
@@ -1,12 +1,13 @@
 using System.Collections.Generic;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using Lucene.Net.Support;
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestIndexSearcher.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestIndexSearcher.cs b/src/Lucene.Net.Tests/core/Search/TestIndexSearcher.cs
index e150b01..42ba59e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestIndexSearcher.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestIndexSearcher.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -22,8 +23,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IOUtils = Lucene.Net.Util.IOUtils;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestLiveFieldValues.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestLiveFieldValues.cs b/src/Lucene.Net.Tests/core/Search/TestLiveFieldValues.cs
index 487218d..f761b08 100644
--- a/src/Lucene.Net.Tests/core/Search/TestLiveFieldValues.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestLiveFieldValues.cs
@@ -1,4 +1,5 @@
 using Apache.NMS.Util;
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Collections.Generic;
@@ -8,12 +9,12 @@ namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*
@@ -34,7 +35,7 @@ namespace Lucene.Net.Search
          */
 
     using MockAnalyzer = Lucene.Net.Analysis.MockAnalyzer;
-    using StringField = Lucene.Net.Document.StringField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using TestUtil = Lucene.Net.Util.TestUtil;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMatchAllDocsQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMatchAllDocsQuery.cs b/src/Lucene.Net.Tests/core/Search/TestMatchAllDocsQuery.cs
index aae64a5..f713e8e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMatchAllDocsQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMatchAllDocsQuery.cs
@@ -15,14 +15,16 @@
  * limitations under the License.
  */
 
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Analyzer = Lucene.Net.Analysis.Analyzer;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMinShouldMatch2.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMinShouldMatch2.cs b/src/Lucene.Net.Tests/core/Search/TestMinShouldMatch2.cs
index 0aa8166..66fe1da 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMinShouldMatch2.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMinShouldMatch2.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Index;
 using System.Collections.Generic;
 using System.Diagnostics;
@@ -30,15 +31,15 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using SimScorer = Lucene.Net.Search.Similarities.Similarity.SimScorer;
     using SimWeight = Lucene.Net.Search.Similarities.Similarity.SimWeight;
     using SortedSetDocValues = Lucene.Net.Index.SortedSetDocValues;
-    using SortedSetDocValuesField = Lucene.Net.Document.SortedSetDocValuesField;
-    using StringField = Lucene.Net.Document.StringField;
+    using SortedSetDocValuesField = SortedSetDocValuesField;
+    using StringField = StringField;
     using Term = Lucene.Net.Index.Term;
     using TermContext = Lucene.Net.Index.TermContext;
     using TestUtil = Lucene.Net.Util.TestUtil;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMultiPhraseQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMultiPhraseQuery.cs b/src/Lucene.Net.Tests/core/Search/TestMultiPhraseQuery.cs
index 71bdae2..ec3bca4 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMultiPhraseQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMultiPhraseQuery.cs
@@ -1,6 +1,7 @@
 using System;
 using System.Collections.Generic;
 using System.Linq;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -28,8 +29,8 @@ namespace Lucene.Net.Search
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using IndexWriter = Lucene.Net.Index.IndexWriter;
     using IndexWriterConfig = Lucene.Net.Index.IndexWriterConfig;
@@ -39,7 +40,7 @@ namespace Lucene.Net.Search
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
     using TermsEnum = Lucene.Net.Index.TermsEnum;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
     using Token = Lucene.Net.Analysis.Token;
 
     /// <summary>

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMultiTermConstantScore.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMultiTermConstantScore.cs b/src/Lucene.Net.Tests/core/Search/TestMultiTermConstantScore.cs
index a1e37d9..12bc29d 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMultiTermConstantScore.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMultiTermConstantScore.cs
@@ -1,4 +1,5 @@
 using System;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -6,9 +7,9 @@ namespace Lucene.Net.Search
     using AtomicReaderContext = Lucene.Net.Index.AtomicReaderContext;
     using DefaultSimilarity = Lucene.Net.Search.Similarities.DefaultSimilarity;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
 
     /*
@@ -32,7 +33,7 @@ namespace Lucene.Net.Search
     using MockTokenizer = Lucene.Net.Analysis.MockTokenizer;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     [TestFixture]
     public class TestMultiTermConstantScore : BaseTestRangeFilter

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMultiTermQueryRewrites.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMultiTermQueryRewrites.cs b/src/Lucene.Net.Tests/core/Search/TestMultiTermQueryRewrites.cs
index 8407390..94c5087 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMultiTermQueryRewrites.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMultiTermQueryRewrites.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -8,8 +9,8 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMultiThreadTermVectors.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMultiThreadTermVectors.cs b/src/Lucene.Net.Tests/core/Search/TestMultiThreadTermVectors.cs
index 8e52837..f2200ab 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMultiThreadTermVectors.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMultiThreadTermVectors.cs
@@ -1,3 +1,4 @@
+using Lucene.Net.Documents;
 using Lucene.Net.Support;
 using System;
 using System.Diagnostics;
@@ -6,7 +7,7 @@ using System.Threading;
 
 namespace Lucene.Net.Search
 {
-    using Lucene.Net.Document;
+    
     using NUnit.Framework;
     using System.IO;
     using Directory = Lucene.Net.Store.Directory;
@@ -58,7 +59,7 @@ namespace Lucene.Net.Search
             customType.StoreTermVectors = true;
             for (int i = 0; i < NumDocs; i++)
             {
-                Document doc = new Document();
+                Documents.Document doc = new Documents.Document();
                 Field fld = NewField("field", English.IntToEnglish(i), customType);
                 doc.Add(fld);
                 writer.AddDocument(doc);

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestMultiValuedNumericRangeQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestMultiValuedNumericRangeQuery.cs b/src/Lucene.Net.Tests/core/Search/TestMultiValuedNumericRangeQuery.cs
index 5a864df..0cd5dcc 100644
--- a/src/Lucene.Net.Tests/core/Search/TestMultiValuedNumericRangeQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestMultiValuedNumericRangeQuery.cs
@@ -1,13 +1,14 @@
 using System.Globalization;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestNot.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestNot.cs b/src/Lucene.Net.Tests/core/Search/TestNot.cs
index ae0bde2..6eb82a3 100644
--- a/src/Lucene.Net.Tests/core/Search/TestNot.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestNot.cs
@@ -1,8 +1,10 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -21,7 +23,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery32.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery32.cs b/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery32.cs
index f5f2af4..7c4508f 100644
--- a/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery32.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery32.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -9,12 +10,12 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
-    using FloatField = Lucene.Net.Document.FloatField;
+    using Document = Documents.Document;
+    using Field = Field;
+    using FieldType = FieldType;
+    using FloatField = FloatField;
     using IndexReader = Lucene.Net.Index.IndexReader;
-    using IntField = Lucene.Net.Document.IntField;
+    using IntField = IntField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery64.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery64.cs b/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery64.cs
index 77162f6..26d7d5e 100644
--- a/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery64.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestNumericRangeQuery64.cs
@@ -1,5 +1,6 @@
 using System;
 using System.Diagnostics;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -9,12 +10,12 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DirectoryReader = Lucene.Net.Index.DirectoryReader;
-    using Document = Lucene.Net.Document.Document;
-    using DoubleField = Lucene.Net.Document.DoubleField;
-    using Field = Lucene.Net.Document.Field;
-    using FieldType = Lucene.Net.Document.FieldType;
+    using Document = Documents.Document;
+    using DoubleField = DoubleField;
+    using Field = Field;
+    using FieldType = FieldType;
     using IndexReader = Lucene.Net.Index.IndexReader;
-    using LongField = Lucene.Net.Document.LongField;
+    using LongField = LongField;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
 
     /*

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPhrasePrefixQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPhrasePrefixQuery.cs b/src/Lucene.Net.Tests/core/Search/TestPhrasePrefixQuery.cs
index d1a6a82..4281469 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPhrasePrefixQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPhrasePrefixQuery.cs
@@ -1,12 +1,13 @@
 using System.Collections.Generic;
 using System.Linq;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -25,7 +26,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MultiFields = Lucene.Net.Index.MultiFields;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPhraseQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPhraseQuery.cs b/src/Lucene.Net.Tests/core/Search/TestPhraseQuery.cs
index 56fb824..2e1ac1d 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPhraseQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPhraseQuery.cs
@@ -2,6 +2,7 @@ using Lucene.Net.Analysis.Tokenattributes;
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -23,7 +24,7 @@ namespace Lucene.Net.Search
      */
 
     using Lucene.Net.Analysis;
-    using Lucene.Net.Document;
+    
     using Lucene.Net.Index;
     using Lucene.Net.Util;
     using NUnit.Framework;
@@ -61,7 +62,7 @@ namespace Lucene.Net.Search
             Analyzer analyzer = new AnalyzerAnonymousInnerClassHelper();
             RandomIndexWriter writer = new RandomIndexWriter(Random(), Directory, analyzer);
 
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(NewTextField("field", "one two three four five", Field.Store.YES));
             doc.Add(NewTextField("repeated", "this is a repeated field - first part", Field.Store.YES));
             IndexableField repeatedField = NewTextField("repeated", "second part of a repeated field", Field.Store.YES);
@@ -69,11 +70,11 @@ namespace Lucene.Net.Search
             doc.Add(NewTextField("palindrome", "one two three two one", Field.Store.YES));
             writer.AddDocument(doc);
 
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("nonexist", "phrase exist notexist exist found", Field.Store.YES));
             writer.AddDocument(doc);
 
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("nonexist", "phrase exist notexist exist found", Field.Store.YES));
             writer.AddDocument(doc);
 
@@ -240,7 +241,7 @@ namespace Lucene.Net.Search
             Directory directory = NewDirectory();
             Analyzer stopAnalyzer = new MockAnalyzer(Random(), MockTokenizer.SIMPLE, true, MockTokenFilter.ENGLISH_STOPSET);
             RandomIndexWriter writer = new RandomIndexWriter(Random(), directory, NewIndexWriterConfig(TEST_VERSION_CURRENT, stopAnalyzer));
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(NewTextField("field", "the stop words are here", Field.Store.YES));
             writer.AddDocument(doc);
             IndexReader reader = writer.Reader;
@@ -266,11 +267,11 @@ namespace Lucene.Net.Search
             Directory directory = NewDirectory();
             RandomIndexWriter writer = new RandomIndexWriter(Random(), directory);
 
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(NewTextField("source", "marketing info", Field.Store.YES));
             writer.AddDocument(doc);
 
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("contents", "foobar", Field.Store.YES));
             doc.Add(NewTextField("source", "marketing info", Field.Store.YES));
             writer.AddDocument(doc);
@@ -298,15 +299,15 @@ namespace Lucene.Net.Search
             reader.Dispose();
 
             writer = new RandomIndexWriter(Random(), directory, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random())).SetOpenMode(OpenMode.CREATE));
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("contents", "map entry woo", Field.Store.YES));
             writer.AddDocument(doc);
 
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("contents", "woo map entry", Field.Store.YES));
             writer.AddDocument(doc);
 
-            doc = new Document();
+            doc = new Documents.Document();
             doc.Add(NewTextField("contents", "map foobarword entry woo", Field.Store.YES));
             writer.AddDocument(doc);
 
@@ -348,15 +349,15 @@ namespace Lucene.Net.Search
             Directory directory = NewDirectory();
             RandomIndexWriter writer = new RandomIndexWriter(Random(), directory, NewIndexWriterConfig(TEST_VERSION_CURRENT, new MockAnalyzer(Random())).SetMergePolicy(NewLogMergePolicy()).SetSimilarity(new DefaultSimilarity()));
 
-            Document doc = new Document();
+            Documents.Document doc = new Documents.Document();
             doc.Add(NewTextField("field", "foo firstname lastname foo", Field.Store.YES));
             writer.AddDocument(doc);
 
-            Document doc2 = new Document();
+            Documents.Document doc2 = new Documents.Document();
             doc2.Add(NewTextField("field", "foo firstname zzz lastname foo", Field.Store.YES));
             writer.AddDocument(doc2);
 
-            Document doc3 = new Document();
+            Documents.Document doc3 = new Documents.Document();
             doc3.Add(NewTextField("field", "foo firstname zzz yyy lastname foo", Field.Store.YES));
             writer.AddDocument(doc3);
 
@@ -626,7 +627,7 @@ namespace Lucene.Net.Search
 
             RandomIndexWriter w = new RandomIndexWriter(Random(), dir, NewIndexWriterConfig(TEST_VERSION_CURRENT, analyzer).SetMergePolicy(NewLogMergePolicy()));
             IList<IList<string>> docs = new List<IList<string>>();
-            Document d = new Document();
+            Documents.Document d = new Documents.Document();
             Field f = NewTextField("f", "", Field.Store.NO);
             d.Add(f);
 

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPositionIncrement.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPositionIncrement.cs b/src/Lucene.Net.Tests/core/Search/TestPositionIncrement.cs
index b58d2f4..83b0970 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPositionIncrement.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPositionIncrement.cs
@@ -2,6 +2,7 @@ using Lucene.Net.Analysis.Tokenattributes;
 using System;
 using System.Collections.Generic;
 using System.Text;
+using Lucene.Net.Documents;
 
 namespace Lucene.Net.Search
 {
@@ -29,8 +30,8 @@ namespace Lucene.Net.Search
     using BytesRef = Lucene.Net.Util.BytesRef;
     using Directory = Lucene.Net.Store.Directory;
     using DocsAndPositionsEnum = Lucene.Net.Index.DocsAndPositionsEnum;
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using MultiFields = Lucene.Net.Index.MultiFields;
@@ -42,7 +43,7 @@ namespace Lucene.Net.Search
     using SpanQuery = Lucene.Net.Search.Spans.SpanQuery;
     using SpanTermQuery = Lucene.Net.Search.Spans.SpanTermQuery;
     using Term = Lucene.Net.Index.Term;
-    using TextField = Lucene.Net.Document.TextField;
+    using TextField = TextField;
 
     /// <summary>
     /// Term position unit test.

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPrefixFilter.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPrefixFilter.cs b/src/Lucene.Net.Tests/core/Search/TestPrefixFilter.cs
index 85b0008..87773f9 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPrefixFilter.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPrefixFilter.cs
@@ -1,8 +1,10 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
     using Directory = Lucene.Net.Store.Directory;
-    using Document = Lucene.Net.Document.Document;
+    using Document = Documents.Document;
 
     /*
          * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -21,7 +23,7 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Field = Lucene.Net.Document.Field;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;

http://git-wip-us.apache.org/repos/asf/lucenenet/blob/273b9fdb/src/Lucene.Net.Tests/core/Search/TestPrefixInBooleanQuery.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Tests/core/Search/TestPrefixInBooleanQuery.cs b/src/Lucene.Net.Tests/core/Search/TestPrefixInBooleanQuery.cs
index 733b77c..a4b7b55 100644
--- a/src/Lucene.Net.Tests/core/Search/TestPrefixInBooleanQuery.cs
+++ b/src/Lucene.Net.Tests/core/Search/TestPrefixInBooleanQuery.cs
@@ -1,3 +1,5 @@
+using Lucene.Net.Documents;
+
 namespace Lucene.Net.Search
 {
     using NUnit.Framework;
@@ -20,8 +22,8 @@ namespace Lucene.Net.Search
          * limitations under the License.
          */
 
-    using Document = Lucene.Net.Document.Document;
-    using Field = Lucene.Net.Document.Field;
+    using Document = Documents.Document;
+    using Field = Field;
     using IndexReader = Lucene.Net.Index.IndexReader;
     using LuceneTestCase = Lucene.Net.Util.LuceneTestCase;
     using RandomIndexWriter = Lucene.Net.Index.RandomIndexWriter;