Add :term:s for "new-style class".
diff --git a/Doc/glossary.rst b/Doc/glossary.rst
index a81d2c9..65a47f1 100644
--- a/Doc/glossary.rst
+++ b/Doc/glossary.rst
@@ -255,6 +255,8 @@
       powerful, elegant solutions.  They have been used for logging attribute
       access, adding thread-safety, tracking object creation, implementing
       singletons, and many other tasks.
+
+      More information can be found in :ref:`metaclasses`.
     
    mutable
       Mutable objects can change their value but keep their :func:`id`.  See
@@ -286,6 +288,8 @@
       use Python's newer, versatile features like :attr:`__slots__`,
       descriptors, properties, :meth:`__getattribute__`, class methods, and
       static methods.
+
+      More information can be found in :ref:`newstyle`.
     
    Python 3000
       Nickname for the next major Python version, 3.0 (coined long ago when the
diff --git a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst
index 4b749d1..2df733c 100644
--- a/Doc/library/ctypes.rst
+++ b/Doc/library/ctypes.rst
@@ -1950,7 +1950,7 @@
    in case the memory block contains pointers.
 
 Common methods of ctypes data types, these are all class methods (to be exact,
-they are methods of the metaclass):
+they are methods of the :term:`metaclass`):
 
 
 .. method:: _CData.from_address(address)
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index f98adce..6c03472 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -350,7 +350,7 @@
 
    The *expression* argument is parsed and evaluated as a Python expression
    (technically speaking, a condition list) using the *globals* and *locals*
-   dictionaries as global and local name space.  If the *globals* dictionary is
+   dictionaries as global and local namespace.  If the *globals* dictionary is
    present and lacks '__builtins__', the current globals are copied into *globals*
    before *expression* is parsed.  This means that *expression* normally has full
    access to the standard :mod:`__builtin__` module and restricted environments are
@@ -808,8 +808,8 @@
 
 .. function:: property([fget[, fset[, fdel[, doc]]]])
 
-   Return a property attribute for new-style classes (classes that derive from
-   :class:`object`).
+   Return a property attribute for :term:`new-style class`\es (classes that
+   derive from :class:`object`).
 
    *fget* is a function for getting an attribute value, likewise *fset* is a
    function for setting, and *fdel* a function for del'ing, an attribute.  Typical
@@ -1112,8 +1112,8 @@
    Return the superclass of *type*.  If the second argument is omitted the super
    object returned is unbound.  If the second argument is an object,
    ``isinstance(obj, type)`` must be true.  If the second argument is a type,
-   ``issubclass(type2, type)`` must be true. :func:`super` only works for new-style
-   classes.
+   ``issubclass(type2, type)`` must be true. :func:`super` only works for
+   :term:`new-style class`\es.
 
    A typical use for calling a cooperative superclass method is::
 
diff --git a/Doc/library/logging.rst b/Doc/library/logging.rst
index 7e8703a..1dbb343 100644
--- a/Doc/library/logging.rst
+++ b/Doc/library/logging.rst
@@ -22,7 +22,7 @@
 
 Logging is performed by calling methods on instances of the :class:`Logger`
 class (hereafter called :dfn:`loggers`). Each instance has a name, and they are
-conceptually arranged in a name space hierarchy using dots (periods) as
+conceptually arranged in a namespace hierarchy using dots (periods) as
 separators. For example, a logger named "scan" is the parent of loggers
 "scan.text", "scan.html" and "scan.pdf". Logger names can be anything you want,
 and indicate the area of an application in which a logged message originates.
diff --git a/Doc/library/pickle.rst b/Doc/library/pickle.rst
index ab19ff8..e4471f2 100644
--- a/Doc/library/pickle.rst
+++ b/Doc/library/pickle.rst
@@ -122,7 +122,7 @@
   earlier versions of Python.
 
 * Protocol version 2 was introduced in Python 2.3.  It provides much more
-  efficient pickling of new-style classes.
+  efficient pickling of :term:`new-style class`\es.
 
 Refer to :pep:`307` for more information.
 
@@ -430,8 +430,8 @@
 protocol 2.  Implementing this method is needed if the type establishes some
 internal invariants when the instance is created, or if the memory allocation is
 affected by the values passed to the :meth:`__new__` method for the type (as it
-is for tuples and strings).  Instances of a new-style type :class:`C` are
-created using ::
+is for tuples and strings).  Instances of a :term:`new-style class` :class:`C`
+are created using ::
 
    obj = C.__new__(C, *args)
 
@@ -459,8 +459,8 @@
 
 .. warning::
 
-   For new-style classes, if :meth:`__getstate__` returns a false value, the
-   :meth:`__setstate__` method will not be called.
+   For :term:`new-style class`\es, if :meth:`__getstate__` returns a false
+   value, the :meth:`__setstate__` method will not be called.
 
 
 Pickling and unpickling extension types
diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst
index 029b8ba..b84de76 100644
--- a/Doc/library/sqlite3.rst
+++ b/Doc/library/sqlite3.rst
@@ -549,7 +549,7 @@
 
 .. note::
 
-   The type/class to adapt must be a new-style class, i. e. it must have
+   The type/class to adapt must be a :term:`new-style class`, i. e. it must have
    :class:`object` as one of its bases.
 
 .. literalinclude:: ../includes/sqlite3/adapter_point_2.py
diff --git a/Doc/library/xmlrpclib.rst b/Doc/library/xmlrpclib.rst
index b3efb5c..1faa891 100644
--- a/Doc/library/xmlrpclib.rst
+++ b/Doc/library/xmlrpclib.rst
@@ -113,8 +113,9 @@
       The *use_datetime* flag was added.
 
    .. versionchanged:: 2.6
-      Instances of new-style classes can be passed in if they have an *__dict__*
-      attribute and don't have a base class that is marshalled in a special way.
+      Instances of :term:`new-style class`\es can be passed in if they have an
+      *__dict__* attribute and don't have a base class that is marshalled in a
+      special way.
 
 
 .. seealso::
diff --git a/Doc/reference/compound_stmts.rst b/Doc/reference/compound_stmts.rst
index 87d9d68..cebdcf1 100644
--- a/Doc/reference/compound_stmts.rst
+++ b/Doc/reference/compound_stmts.rst
@@ -534,8 +534,9 @@
 class and instance variables are accessible through the notation
 "``self.name``", and an instance variable hides a class variable with the same
 name when accessed in this way.  Class variables with immutable values can be
-used as defaults for instance variables. For new-style classes, descriptors can
-be used to create instance variables with different implementation details.
+used as defaults for instance variables. For :term:`new-style class`\es,
+descriptors can be used to create instance variables with different
+implementation details.
 
 .. rubric:: Footnotes
 
diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst
index beecc7c..078293c 100644
--- a/Doc/reference/datamodel.rst
+++ b/Doc/reference/datamodel.rst
@@ -1082,6 +1082,7 @@
 .. % Types
 .. % =========================================================================
 
+.. _newstyle:
 
 New-style and classic classes
 =============================
diff --git a/Doc/tutorial/classes.rst b/Doc/tutorial/classes.rst
index d5bde44..e4e8451 100644
--- a/Doc/tutorial/classes.rst
+++ b/Doc/tutorial/classes.rst
@@ -495,8 +495,8 @@
 :class:`Base2`.  The depth-first rule makes no differences between direct and
 inherited attributes of :class:`Base1`.)
 
-For new-style classes, the method resolution order changes dynamically to
-support cooperative calls to :func:`super`.  This approach is known in some
+For :term:`new-style class`\es, the method resolution order changes dynamically
+to support cooperative calls to :func:`super`.  This approach is known in some
 other multiple-inheritance languages as call-next-method and is more powerful
 than the super call found in single-inheritance languages.
 
diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index 952adb2..efe2af6 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -373,7 +373,7 @@
    
    If this is the name of a readable file, the Python commands in that file are
    executed before the first prompt is displayed in interactive mode.  The file
-   is executed in the same name space where interactive commands are executed so
+   is executed in the same namespace where interactive commands are executed so
    that objects defined or imported in it can be used without qualification in
    the interactive session.  You can also change the prompts :data:`sys.ps1` and
    :data:`sys.ps2` in this file.