collation. (The built-in collatable data types are
<type>text</type>, <type>varchar</type>, and <type>char</type>.
User-defined base types can also be marked collatable, and of course
- a domain over a collatable data type is collatable.) If the
+ a <glossterm linkend="glossary-domain">domain</glossterm> over a
+ collatable data type is collatable.) If the
expression is a column reference, the collation of the expression is the
defined collation of the column. If the expression is a constant, the
collation is the default collation of the data type of the
<para>
Data is stored in cubes that are points (both corners are the same) using 3
coordinates representing the x, y, and z distance from the center of the
- Earth. A domain <type>earth</type> over <type>cube</type> is provided, which
+ Earth. A <glossterm linkend="glossary-domain">domain</glossterm>
+ <type>earth</type> over type <type>cube</type> is provided, which
includes constraint checks that the value meets these restrictions and
is reasonably close to the actual surface of the Earth.
</para>
A restriction on the values of data allowed within a
<glossterm linkend="glossary-table">table</glossterm>,
or in attributes of a
- <!-- XXX Should have term "domain". Need term "type" for that. -->
- <firstterm>domain</firstterm>.
+ <glossterm linkend="glossary-domain">domain</glossterm>.
</para>
<para>
For more information, see
</glossdef>
</glossentry>
+ <glossentry id="glossary-domain">
+ <glossterm>Domain</glossterm>
+ <glossdef>
+ <para>
+ A user-defined data type that is based on another underlying data type.
+ It acts the same as the underlying type except for possibly restricting
+ the set of allowed values.
+ </para>
+ <para>
+ For more information, see <xref linkend="domains"/>.
+ </para>
+ </glossdef>
+ </glossentry>
+
<glossentry id="glossary-durability">
<glossterm>Durability</glossterm>
<glossdef>
<title><literal>domains</literal></title>
<para>
- The view <literal>domains</literal> contains all domains defined in the
+ The view <literal>domains</literal> contains all
+ <glossterm linkend="glossary-domain">domains</glossterm> defined in the
current database. Only those domains are shown that the current user has
access to (by way of being the owner or having some privilege).
</para>
<para>
The module also provides a data type <type>lo</type>, which is really just
- a domain of the <type>oid</type> type. This is useful for differentiating
+ a <glossterm linkend="glossary-domain">domain</glossterm> over
+ the <type>oid</type> type. This is useful for differentiating
database columns that hold large object references from those that are
OIDs of other things. You don't have to use the <type>lo</type> type to
use the trigger, but it may be convenient to use it to keep track of which
restriction of the current implementation: since no constraints are
associated with a composite type, the constraints shown in the table
definition <emphasis>do not apply</emphasis> to values of the composite type
- outside the table. (To work around this, create a domain over the composite
+ outside the table. (To work around this, create a
+ <glossterm linkend="glossary-domain">domain</glossterm> over the composite
type, and apply the desired constraints as <literal>CHECK</literal>
constraints of the domain.)
</para>