OSDN Git Service

Entity-ify a passel of & < > characters. Per gripe from Devrim.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 3 Dec 2007 23:49:51 +0000 (23:49 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 3 Dec 2007 23:49:51 +0000 (23:49 +0000)
21 files changed:
doc/src/sgml/btree-gist.sgml
doc/src/sgml/cube.sgml
doc/src/sgml/datatype.sgml
doc/src/sgml/ddl.sgml
doc/src/sgml/dml.sgml
doc/src/sgml/earthdistance.sgml
doc/src/sgml/ecpg.sgml
doc/src/sgml/func.sgml
doc/src/sgml/fuzzystrmatch.sgml
doc/src/sgml/intarray.sgml
doc/src/sgml/isn.sgml
doc/src/sgml/lo.sgml
doc/src/sgml/ltree.sgml
doc/src/sgml/plpgsql.sgml
doc/src/sgml/pltcl.sgml
doc/src/sgml/ref/create_opclass.sgml
doc/src/sgml/release.sgml
doc/src/sgml/seg.sgml
doc/src/sgml/tablefunc.sgml
doc/src/sgml/trigger.sgml
doc/src/sgml/xml2.sgml

index c545c6c..59191e2 100644 (file)
@@ -19,7 +19,7 @@
    -- create index
    CREATE INDEX testidx ON test USING gist (a);
    -- query
-   SELECT * FROM test WHERE a < 10;
+   SELECT * FROM test WHERE a &lt; 10;
   </programlisting>
  </sect2>
  
index 507a55c..edb7611 100644 (file)
@@ -287,28 +287,28 @@ a = b                Same as
   </para>
 
   <programlisting>
-a && b                Overlaps
+a &amp;&amp; b                Overlaps
   </programlisting>
   <para>
    The cubements a and b overlap.
   </para>
 
   <programlisting>
-a @> b                Contains
+a @&gt; b                Contains
   </programlisting>
   <para>
    The cubement a contains the cubement b.
   </para>
 
   <programlisting>
-a <@ b                Contained in
+a &lt;@ b                Contained in
   </programlisting>
   <para>
    The cubement a is contained in b.
   </para>
 
   <para>
-   (Before PostgreSQL 8.2, the containment operators @> and <@ were
+   (Before PostgreSQL 8.2, the containment operators @&gt; and &lt;@ were
    respectively called @ and ~.  These names are still available, but are
    deprecated and will eventually be retired.  Notice that the old names
    are reversed from the convention formerly followed by the core geometric
@@ -326,8 +326,8 @@ a <@ b                Contained in
   </para>
 
   <programlisting>
-[a, b] < [c, d]                Less than
-[a, b] > [c, d]                Greater than
+[a, b] &lt; [c, d]                Less than
+[a, b] &gt; [c, d]                Greater than
   </programlisting>
  
   <para>
@@ -462,10 +462,10 @@ a <@ b                Contained in
        is useful for creating bounding boxes around a point for searching for
        nearby points. All defined dimensions are changed by the radius. If n
        is greater than the number of defined dimensions and the cube is being
-       increased (r >= 0) then 0 is used as the base for the extra coordinates.
+       increased (r &gt;= 0) then 0 is used as the base for the extra coordinates.
        LL coordinates are decreased by r and UR coordinates are increased by r. 
        If a LL coordinate is increased to larger than the corresponding UR 
-       coordinate (this can only happen when r < 0) than both coordinates are 
+       coordinate (this can only happen when r &lt; 0) than both coordinates are 
        set to their average. To make it harder for people to break things there 
        is an effective maximum on the dimension of cubes of 100. This is set 
        in cubedata.h if you need something bigger.
index 699884d..9b8e0cf 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.220 2007/11/27 16:46:36 momjian Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/datatype.sgml,v 1.221 2007/12/03 23:49:50 tgl Exp $ -->
 
  <chapter id="datatype">
   <title id="datatype-title">Data Types</title>
@@ -3440,10 +3440,10 @@ SELECT 'fat:ab &amp; cat'::tsquery;
      function is convenient for performing such normalization:
 
 <programlisting>
-SELECT to_tsquery('Fat:ab & Cats');
+SELECT to_tsquery('Fat:ab &amp; Cats');
     to_tsquery    
 ------------------
- 'fat':AB & 'cat'
+ 'fat':AB &amp; 'cat'
 </programlisting>
     </para>
 
index 41679a7..de06bbe 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/ddl.sgml,v 1.79 2007/12/03 04:59:55 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/ddl.sgml,v 1.80 2007/12/03 23:49:50 tgl Exp $ -->
 
 <chapter id="ddl">
  <title>Data Definition</title>
@@ -2312,7 +2312,7 @@ VALUES ('New York', NULL, NULL, 'NY');
 
     <para>
      To set up a partitioned table, do the following:
-     <orderedlist spacing=compact>
+     <orderedlist spacing="compact">
       <listitem>
        <para>
         Create the <quote>master</quote> table, from which all of the
@@ -2430,7 +2430,7 @@ CREATE TABLE measurement (
     </para>
 
     <para>
-     <orderedlist spacing=compact>
+     <orderedlist spacing="compact">
       <listitem>
        <para>
         The master table is the <structname>measurement</> table, declared
index 8dce63c..707501b 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/dml.sgml,v 1.16 2007/02/01 00:28:16 momjian Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/dml.sgml,v 1.17 2007/12/03 23:49:50 tgl Exp $ -->
 
 <chapter id="dml">
  <title>Data Manipulation</title>
@@ -135,7 +135,7 @@ INSERT INTO products (product_no, name, price) VALUES
 
   <para>
    To perform an update, you need three pieces of information:
-   <orderedlist spacing=compact>
+   <orderedlist spacing="compact">
     <listitem>
      <para>The name of the table and column to update,</para>
     </listitem>
index 2d08bb8..8688f5b 100644 (file)
      </entry>
     </row>
     <row>
-     <entry><literal><@></literal> operator</entry>
+     <entry><literal>&lt;@&gt;</literal> operator</entry>
      <entry>gives the distance in statute miles between
       two points on the Earth's surface. Coordinates are in degrees. Points are
       taken as (longitude, latitude) and not vice versa as longitude is closer 
index e57b522..2bcfcf5 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/ecpg.sgml,v 1.84 2007/11/07 12:24:23 petere Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/ecpg.sgml,v 1.85 2007/12/03 23:49:50 tgl Exp $ -->
 
 <chapter id="ecpg">
  <title><application>ECPG</application> - Embedded <acronym>SQL</acronym> in C</title>
@@ -4695,7 +4695,7 @@ cc -o myprog prog1.o prog2.o ... -lecpg
 ECPG = ecpg
 
 %.c: %.pgc
-        $(ECPG) $<
+        $(ECPG) $&lt;
 </programlisting>
   </para>
 
index 9662090..deb6ec1 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.414 2007/11/28 15:42:31 petere Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.415 2007/12/03 23:49:50 tgl Exp $ -->
 
  <chapter id="functions">
   <title>Functions and Operators</title>
@@ -7752,15 +7752,15 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple
         <entry><literal><function>to_tsquery</function>(<optional> <replaceable class="PARAMETER">config</> <type>regconfig</> , </optional> <replaceable class="PARAMETER">query</> <type>text</type>)</literal></entry>
         <entry><type>tsquery</type></entry>
         <entry>normalize words and convert to <type>tsquery</></entry>
-        <entry><literal>to_tsquery('english', 'The & Fat & Rats')</literal></entry>
-        <entry><literal>'fat' & 'rat'</literal></entry>
+        <entry><literal>to_tsquery('english', 'The &amp; Fat &amp; Rats')</literal></entry>
+        <entry><literal>'fat' &amp; 'rat'</literal></entry>
        </row>
        <row>
         <entry><literal><function>plainto_tsquery</function>(<optional> <replaceable class="PARAMETER">config</> <type>regconfig</> , </optional> <replaceable class="PARAMETER">query</> <type>text</type>)</literal></entry>
         <entry><type>tsquery</type></entry>
         <entry>produce <type>tsquery</> ignoring punctuation</entry>
         <entry><literal>plainto_tsquery('english', 'The Fat Rats')</literal></entry>
-        <entry><literal>'fat' & 'rat'</literal></entry>
+        <entry><literal>'fat' &amp; 'rat'</literal></entry>
        </row>
        <row>
         <entry><literal><function>numnode</function>(<type>tsquery</>)</literal></entry>
@@ -7773,7 +7773,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple
         <entry><literal><function>querytree</function>(<replaceable class="PARAMETER">query</replaceable> <type>tsquery</>)</literal></entry>
         <entry><type>text</type></entry>
         <entry>get indexable part of a <type>tsquery</></entry>
-        <entry><literal>querytree('foo & ! bar'::tsquery)</literal></entry>
+        <entry><literal>querytree('foo &amp; ! bar'::tsquery)</literal></entry>
         <entry><literal>'foo'</literal></entry>
        </row>
        <row>
index 666e031..8200725 100644 (file)
@@ -41,30 +41,30 @@ INSERT INTO s VALUES ('jack');
 
 SELECT * FROM s WHERE soundex(nm) = soundex('john');
 
-SELECT a.nm, b.nm FROM s a, s b WHERE soundex(a.nm) = soundex(b.nm) AND a.oid <> b.oid;
+SELECT a.nm, b.nm FROM s a, s b WHERE soundex(a.nm) = soundex(b.nm) AND a.oid &lt;&gt; b.oid;
 
 CREATE FUNCTION text_sx_eq(text, text) RETURNS boolean AS
 'select soundex($1) = soundex($2)'
 LANGUAGE SQL;
 
 CREATE FUNCTION text_sx_lt(text, text) RETURNS boolean AS
-'select soundex($1) < soundex($2)'
+'select soundex($1) &lt; soundex($2)'
 LANGUAGE SQL;
 
 CREATE FUNCTION text_sx_gt(text, text) RETURNS boolean AS
-'select soundex($1) > soundex($2)'
+'select soundex($1) &gt; soundex($2)'
 LANGUAGE SQL;
 
 CREATE FUNCTION text_sx_le(text, text) RETURNS boolean AS
-'select soundex($1) <= soundex($2)'
+'select soundex($1) &lt;= soundex($2)'
 LANGUAGE SQL;
 
 CREATE FUNCTION text_sx_ge(text, text) RETURNS boolean AS
-'select soundex($1) >= soundex($2)'
+'select soundex($1) &gt;= soundex($2)'
 LANGUAGE SQL;
 
 CREATE FUNCTION text_sx_ne(text, text) RETURNS boolean AS
-'select soundex($1) <> soundex($2)'
+'select soundex($1) &lt;&gt; soundex($2)'
 LANGUAGE SQL;
 
 DROP OPERATOR #= (text, text);
@@ -75,7 +75,7 @@ SELECT * FROM s WHERE text_sx_eq(nm, 'john');
 
 SELECT * FROM s WHERE s.nm #= 'john';
 
-SELECT * FROM s WHERE difference(s.nm, 'john') > 2;
+SELECT * FROM s WHERE difference(s.nm, 'john') &gt; 2;
   </programlisting>
  </sect2>
 
index b01d825..a7f2998 100644 (file)
@@ -131,15 +131,15 @@ test=# select intset(1);
     </thead>
     <tbody>
      <row>
-      <entry><literal>int[] && int[]</literal></entry>
+      <entry><literal>int[] &amp;&amp; int[]</literal></entry>
       <entry>overlap - returns TRUE if arrays have at least one common element</entry>
      </row>
      <row>
-      <entry><literal>int[] @> int[]</literal></entry>
+      <entry><literal>int[] @&gt; int[]</literal></entry>
       <entry>contains - returns TRUE if left array contains right array</entry>
      </row>
      <row>
-      <entry><literal>int[] <@ int[]</literal></entry>
+      <entry><literal>int[] &lt;@ int[]</literal></entry>
       <entry>contained - returns TRUE if left array is contained in right array</entry>
      </row>
      <row>
@@ -172,7 +172,7 @@ test=# select intset(1);
      </row>
 
      <row>
-      <entry><literal>int[] & int[]</literal></entry>
+      <entry><literal>int[] &amp; int[]</literal></entry>
       <entry>returns intersection of arrays</entry>
      </row>
 
@@ -192,7 +192,7 @@ test=# select intset(1);
    </tgroup>
   </table>
   <para>
-   (Before PostgreSQL 8.2, the containment operators @> and <@ were
+   (Before PostgreSQL 8.2, the containment operators @&gt; and &lt;@ were
    respectively called @ and ~.  These names are still available, but are
    deprecated and will eventually be retired.  Notice that the old names
    are reversed from the convention formerly followed by the core geometric
@@ -213,12 +213,12 @@ CREATE unique index message_section_map_key2 ON message_section_map (sid, mid );
 CREATE INDEX message_rdtree_idx ON message USING GIST ( sections gist__int_ops);
 
 -- select some messages with section in 1 OR 2 - OVERLAP operator
-SELECT message.mid FROM message WHERE message.sections && '{1,2}'; 
+SELECT message.mid FROM message WHERE message.sections &amp;&amp; '{1,2}'; 
 
 -- select messages contains in sections 1 AND 2 - CONTAINS operator
-SELECT message.mid FROM message WHERE message.sections @> '{1,2}';
+SELECT message.mid FROM message WHERE message.sections @&gt; '{1,2}';
 -- the same, CONTAINED operator
-SELECT message.mid FROM message WHERE '{1,2}' <@ message.sections;
+SELECT message.mid FROM message WHERE '{1,2}' &lt;@ message.sections;
   </programlisting>
  </sect2>
 
@@ -230,7 +230,7 @@ SELECT message.mid FROM message WHERE '{1,2}' <@ message.sections;
   <programlisting>
   cd ./bench
   1. createdb TEST
-  2. psql TEST < ../_int.sql
+  2. psql TEST &lt; ../_int.sql
   3. ./create_test.pl | psql TEST
   4. ./bench.pl - perl script to benchmark queries, supports OR, AND queries
                   with/without RD-Tree. Run script without arguments to
index 209cef3..81b3296 100644 (file)
   <itemizedlist>
    <listitem>
     <para>
-     ISBN13 -> EAN13
+     ISBN13 -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISMN13 -> EAN13
+     ISMN13 -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISSN13 -> EAN13
+     ISSN13 -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISBN -> EAN13
+     ISBN -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISMN -> EAN13
+     ISMN -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISSN -> EAN13
+     ISSN -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     UPC  -> EAN13
+     UPC  -&gt; EAN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISBN <-> ISBN13
+     ISBN &lt;-&gt; ISBN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISMN <-> ISMN13
+     ISMN &lt;-&gt; ISMN13
     </para>
    </listitem>
    <listitem>
     <para>
-     ISSN <-> ISSN13
+     ISSN &lt;-&gt; ISSN13
     </para>
    </listitem>
   </itemizedlist>
index 2a23a5b..d994d9f 100644 (file)
   </itemizedlist>
 
   <para>
-   As the ODBC driver needs a permanent lo type (& JDBC could be optimised to
+   As the ODBC driver needs a permanent lo type (&amp; JDBC could be optimised to
    use it if it's Oid is fixed), and as the above issues can only be fixed by
    some internal changes, I feel it should become a permanent built-in type.
   </para>
index 75c0201..f98555c 100644 (file)
@@ -15,7 +15,7 @@
  <sect2>
   <title>Definitions</title>
   <para>
-   A <emphasis>label</emphasis> of a node is a sequence of one or more words 
+   A <firstterm>label</firstterm> of a node is a sequence of one or more words 
    separated by blank character '_' and containing letters and digits ( for 
    example, [a-zA-Z0-9] for C locale). The length of a label is limited by 256 
    bytes.
@@ -24,9 +24,9 @@
    Example: 'Countries', 'Personal_Services'
   </para>
   <para>
-   A <emphasis>label path</emphasis> of a node is a sequence of one or more 
+   A <firstterm>label path</firstterm> of a node is a sequence of one or more 
    dot-separated labels l1.l2...ln, represents path from root to the node. The 
-   length of a label path is limited by 65Kb, but size <= 2Kb is preferrable. 
+   length of a label path is limited by 65Kb, but size &lt;= 2Kb is preferrable. 
    We consider it's not a strict limitation (maximal size of label path for 
    DMOZ catalogue - <ulink url="http://www.dmoz.org"></ulink>, is about 240 
    bytes!)
@@ -85,7 +85,7 @@
      </listitem>
      <listitem>
       <para>%     Don't account word separator '_' in label matching, that is 
-                     'Russian%' would match 'Russian_nations', but not 'Russian'
+                  'Russian%' would match 'Russian_nations', but not 'Russian'
       </para>
      </listitem>
     </itemizedlist>
     the end of word. The meaning of modifiers are the same as for lquery.
     </para>
     <para>
-     Example: <literal>'Europe & Russia*@ & !Transportation'</literal>
+     Example: <literal>'Europe &amp; Russia*@ &amp; !Transportation'</literal>
     </para>
     <para>
      Search paths contain words 'Europe' and 'Russia*' (case-insensitive) and
   <itemizedlist>
    <listitem>
     <para>
-     <literal><,>,<=,>=,=, <></literal>
+     <literal>&lt;,&gt;,&lt;=,&gt;=,=, &lt;&gt;</literal>
      - Have their usual meanings. Comparison is doing in the order of direct
      tree traversing, children of a node are sorted lexicographic.
     </para>
    </listitem>
    <listitem>
     <para>
-     <literal>ltree @> ltree</literal>
+     <literal>ltree @&gt; ltree</literal>
       - returns TRUE if left argument is an ancestor of right argument (or
       equal).
     </para>
    </listitem>
    <listitem>
     <para>
-     <literal>ltree <@ ltree </literal>
+     <literal>ltree &lt;@ ltree </literal>
      - returns TRUE if left argument is a descendant of right argument (or
      equal).
     </para>
   <itemizedlist>
    <listitem>
     <para>
-     <literal>ltree[] @> ltree, ltree <@ ltree[]</literal>
+     <literal>ltree[] @&gt; ltree, ltree &lt;@ ltree[]</literal>
      - returns TRUE if array ltree[] contains an ancestor of ltree.
     </para>
    </listitem>
    <listitem>
     <para>
-     <literal>ltree @> ltree[], ltree[] <@ ltree</literal>
+     <literal>ltree @&gt; ltree[], ltree[] &lt;@ ltree</literal>
      - returns TRUE if array ltree[] contains a descendant of ltree.
     </para>
    </listitem>
    </listitem>
    <listitem>
     <para>
-     <literal>ltree[] ?@> ltree, ltree ?<@ ltree[], ltree[] ?~ lquery, ltree[] ?@ ltxtquery</literal>
+     <literal>ltree[] ?@&gt; ltree, ltree ?&lt;@ ltree[], ltree[] ?~ lquery, ltree[] ?@ ltxtquery</literal>
 
      - returns first element of array ltree[] satisfies corresponding condition
      and NULL in vice versa.
    </listitem>
    <listitem>
     <para>GiST index over ltree[]:
-     <literal>ltree[]<@ ltree, ltree @> ltree[], @, ~, ?.</literal>
+     <literal>ltree[]&lt;@ ltree, ltree @&gt; ltree[], @, ~, ?.</literal>
     </para>
     <para>
      Example:
   <title>Example</title>
   <programlisting>
  createdb ltreetest
- psql ltreetest < /usr/local/pgsql/share/contrib/ltree.sql
- psql ltreetest < ltreetest.sql
+ psql ltreetest &lt; /usr/local/pgsql/share/contrib/ltree.sql
+ psql ltreetest &lt; ltreetest.sql
   </programlisting>
 
   <para>
@@ -445,7 +445,7 @@ shown below:
   </para>
 
   <programlisting>
-ltreetest=# select path from test where path <@ 'Top.Science';
+ltreetest=# select path from test where path &lt;@ 'Top.Science';
                 path                
 ------------------------------------
  Top.Science
@@ -481,7 +481,7 @@ ltreetest=# select path from test where path ~ '*.!pictures@.*.Astronomy.*';
    Full text search:
   </para>
   <programlisting>
-ltreetest=# select path from test where path @ 'Astro*% & !pictures@';
+ltreetest=# select path from test where path @ 'Astro*% &amp; !pictures@';
                 path                
 ------------------------------------
  Top.Science.Astronomy
@@ -490,7 +490,7 @@ ltreetest=# select path from test where path @ 'Astro*% & !pictures@';
  Top.Hobbies.Amateurs_Astronomy
 (4 rows)
 
-ltreetest=# select path from test where path @ 'Astro* & !pictures@';
+ltreetest=# select path from test where path @ 'Astro* &amp; !pictures@';
                 path                
 ------------------------------------
  Top.Science.Astronomy
@@ -502,7 +502,7 @@ ltreetest=# select path from test where path @ 'Astro* & !pictures@';
    Using Functions:
   </para>
   <programlisting>
-ltreetest=# select subpath(path,0,2)||'Space'||subpath(path,2) from test where path <@ 'Top.Science.Astronomy';
+ltreetest=# select subpath(path,0,2)||'Space'||subpath(path,2) from test where path &lt;@ 'Top.Science.Astronomy';
                  ?column?                 
 ------------------------------------------
  Top.Science.Space.Astronomy
@@ -519,7 +519,7 @@ LANGUAGE SQL IMMUTABLE;
   </para>
 
   <programlisting>
-ltreetest=# select ins_label(path,2,'Space') from test where path <@ 'Top.Science.Astronomy';
+ltreetest=# select ins_label(path,2,'Space') from test where path &lt;@ 'Top.Science.Astronomy';
                 ins_label                 
 ------------------------------------------
  Top.Science.Space.Astronomy
@@ -537,7 +537,7 @@ CREATE FUNCTION ins_label(ltree, ltree, text) RETURNS ltree
 AS 'select subpath($1,0,nlevel($2)) || $3 || subpath($1,nlevel($2));'
 LANGUAGE SQL IMMUTABLE;
 
-ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where path <@ 'Top.Science.Astronomy';
+ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where path &lt;@ 'Top.Science.Astronomy';
                 ins_label                 
 ------------------------------------------
  Top.Science.Space.Astronomy
@@ -606,7 +606,7 @@ ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where
       Q2: The same as Q1 but with counting of successors
      </para>
      <programlisting>
-     select path as parentpath , (select count(*)-1 from dmoz where path <@
+     select path as parentpath , (select count(*)-1 from dmoz where path &lt;@
      p.path) as count from dmoz p where path ~ 'Top.Adult.Arts.Animation.*{1}';
                  parentpath             | count 
      -----------------------------------+-------
@@ -620,7 +620,7 @@ ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where
       Q3: Get all parents
      </para>
      <programlisting>
-     select path from dmoz where path @> 'Top.Adult.Arts.Animation' order by
+     select path from dmoz where path @&gt; 'Top.Adult.Arts.Animation' order by
      path asc;
                 path           
      --------------------------
@@ -636,8 +636,8 @@ ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where
       Q4: Get all parents with counting of children
      </para>
      <programlisting>
-     select path, (select count(*)-1 from dmoz where path <@ p.path) as count
-     from dmoz p where path @> 'Top.Adult.Arts.Animation' order by path asc;
+     select path, (select count(*)-1 from dmoz where path &lt;@ p.path) as count
+     from dmoz p where path @&gt; 'Top.Adult.Arts.Animation' order by path asc;
                 path           | count  
      --------------------------+--------
       Top                      | 300273
@@ -753,7 +753,7 @@ ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where
   <para>
    For ltree we store LPS in a B-tree, implemented using GiST. Each node entry is
    represented by (left_bound, signature, right_bound), so that we could speedup
-   operations <literal><, <=, =, >=, ></literal> using left_bound, right_bound and prune branches of
+   operations <literal>&lt;, &lt;=, =, &gt;=, &gt;</literal> using left_bound, right_bound and prune branches of
    a tree using signature.
   </para>
  </sect2>
@@ -768,4 +768,3 @@ ltreetest=# select ins_label(path,'Top.Science'::ltree,'Space') from test where
   </para>
  </sect2>
 </sect1>
-
index 027d0eb..32f668a 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/plpgsql.sgml,v 1.121 2007/11/28 21:47:39 momjian Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/plpgsql.sgml,v 1.122 2007/12/03 23:49:50 tgl Exp $ -->
 
 <chapter id="plpgsql"> 
   <title><application>PL/pgSQL</application> - <acronym>SQL</acronym> Procedural Language</title>
@@ -704,7 +704,7 @@ IF x &lt; y THEN ...
 </programlisting>
      what happens behind the scenes is
 <programlisting>
-PREPARE <replaceable>statement_name</>(integer, integer) AS SELECT $1 < $2;
+PREPARE <replaceable>statement_name</>(integer, integer) AS SELECT $1 &lt; $2;
 </programlisting>
      and then this prepared statement is <command>EXECUTE</>d for each
      execution of the <command>IF</> statement, with the current values
index 6ae266a..38d1212 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/pltcl.sgml,v 2.46 2007/02/21 03:27:31 adunstan Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/pltcl.sgml,v 2.47 2007/12/03 23:49:50 tgl Exp $ -->
 
  <chapter id="pltcl">
   <title>PL/Tcl - Tcl Procedural Language</title>
@@ -164,7 +164,7 @@ CREATE FUNCTION overpaid(employee) RETURNS boolean AS $$
     if {200000.0 &lt; $1(salary)} {
         return "t"
     }
-    if {$1(age) &lt; 30 && 100000.0 &lt; $1(salary)} {
+    if {$1(age) &lt; 30 &amp;&amp; 100000.0 &lt; $1(salary)} {
         return "t"
     }
     return "f"
index 78276ec..366922c 100644 (file)
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/create_opclass.sgml,v 1.20 2007/01/31 23:26:03 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/create_opclass.sgml,v 1.21 2007/12/03 23:49:51 tgl Exp $
 PostgreSQL documentation
 -->
 
@@ -270,7 +270,7 @@ CREATE OPERATOR CLASS <replaceable class="parameter">name</replaceable> [ DEFAUL
 <programlisting>
 CREATE OPERATOR CLASS gist__int_ops
     DEFAULT FOR TYPE _int4 USING gist AS
-        OPERATOR        3       &&,
+        OPERATOR        3       &amp;&amp;,
         OPERATOR        6       =       RECHECK,
         OPERATOR        7       @&gt;,
         OPERATOR        8       &lt;@,
index 752032f..b4b502c 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.558 2007/12/02 03:47:11 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.559 2007/12/03 23:49:50 tgl Exp $ -->
 <!--
 
 Typical markup:
@@ -4833,7 +4833,7 @@ current_date &lt; 2017-11-17
       </para>
 
       <para>
-       The new operators are <literal>&</> (and), <literal>|</>
+       The new operators are <literal>&amp;</> (and), <literal>|</>
        (or), <literal>~</> (not), <type>inet</> <literal>+</> <type>int8</>,
        <type>inet</> <literal>-</> <type>int8</>, and
        <type>inet</> <literal>-</> <type>inet</>.
@@ -8879,8 +8879,8 @@ psql -t -f fixseq.sql db1 | psql -e db1
 
      <listitem>
       <para>
-       Remove the <literal>&lt;&lt</>, <literal>&gt;&gt;</>,
-       <literal>&amp;&lt</>, and <literal>&amp;&gt;</> operators from
+       Remove the <literal>&lt;&lt;</>, <literal>&gt;&gt;</>,
+       <literal>&amp;&lt;</>, and <literal>&amp;&gt;</> operators from
        <filename>/contrib/cube</>
       </para>
       <para>
@@ -10248,7 +10248,7 @@ typedefs (Michael)</para></listitem>
      <listitem>
       <para>
        This is the first <productname>PostgreSQL</productname> release
-       to run natively on <trademark class=registered>Microsoft Windows</> as
+       to run natively on <trademark class="registered">Microsoft Windows</> as
        a server. It can run as a <productname>Windows</> service. This
        release supports NT-based Windows releases like
        <productname>Windows 2000 SP4</>, <productname>Windows XP</>, and
@@ -19187,7 +19187,7 @@ Copy pg_ident.conf.sample into /lib directory in install (Bruce)
 Add SJIS UDC (NEC selection IBM kanji) support (Eiji Tokuya)
 Fix too long syslog message (Tatsuo)
 Fix problem with quoted indexes that are too long (Tom)
-JDBC ResultSet.getTimestamp() fix (Gregory Krasnow & Floyd Marinescu)
+JDBC ResultSet.getTimestamp() fix (Gregory Krasnow &amp; Floyd Marinescu)
 ecpg changes (Michael)
     </programlisting>
    </para>
@@ -21039,7 +21039,7 @@ Source Tree Changes
 Add new html development tools, and flow chart in /tools/backend
 Fix for SCO compiles
 Stratus computer port Robert Gillies
-Added support for shlib for BSD44_derived & i386_solaris
+Added support for shlib for BSD44_derived &amp; i386_solaris
 Make configure more automated(Brook)
 Add script to check regression test results
 Break parser functions into smaller files, group together(Bruce)
@@ -21225,7 +21225,7 @@ Enhancements
 ------------
 Default genetic optimizer GEQO parameter is now 8(Bruce)
 Allow use parameters in target list having aggregates in functions(Vadim)
-Added JDBC driver as an interface(Adrian & Peter)
+Added JDBC driver as an interface(Adrian &amp; Peter)
 pg_password utility
 Return number of rows inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
 Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
@@ -21236,7 +21236,7 @@ Include reserved words for string handling, outer joins, and unions(Thomas)
 Implement extended comments ("/* ... */") using exclusive states(Thomas)
 Add "//" single-line comments(Bruce)
 Remove some restrictions on characters in operator names(Thomas)
-DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim & Thomas)
+DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim &amp; Thomas)
 Add text concatenation operator and function (SQL92)(Thomas)
 Support WITH TIME ZONE syntax (SQL92)(Thomas)
 Support INTERVAL unit TO unit syntax (SQL92)(Thomas)
@@ -21258,7 +21258,7 @@ Replace distance operator "&lt;===&gt;" with "&lt;-&gt;"(Thomas)
 Replace "above" operator "!^" with "&gt;^" and "below" operator "!|" with "&lt;^"(Thomas)
 Add routines for text trimming on both ends, substring, and string position(Thomas)
 Added conversion routines circle(box) and poly(circle)(Thomas)
-Allow internal sorts to be stored in memory rather than in files(Bruce & Vadim)
+Allow internal sorts to be stored in memory rather than in files(Bruce &amp; Vadim)
 Allow functions and operators on internally-identical types to succeed(Bruce)
 Speed up backend start-up after profiling analysis(Bruce)
 Inline frequently called functions for performance(Bruce)
@@ -21291,7 +21291,7 @@ new interfaces directory(Marc)
 Replace fopen() calls with calls to fd.c functions(Bruce)
 Make functions static where possible(Bruce)
 enclose unused functions in #ifdef NOT_USED(Bruce)
-Remove call to difftime() in timestamp support to fix SunOS(Bruce & Thomas)
+Remove call to difftime() in timestamp support to fix SunOS(Bruce &amp; Thomas)
 Changes for Digital Unix
 Portability fix for pg_dumpall(Bruce)
 Rename pg_attribute.attnvals to attdispersion(Bruce)
@@ -21299,12 +21299,12 @@ Rename pg_attribute.attnvals to attdispersion(Bruce)
 "built-in" manual page now "pgbuiltin"(Bruce)
 "drop" manual page now "drop_table"(Bruce)
 Add "create_trigger", "drop_trigger" manual pages(Thomas)
-Add constraints regression test(Vadim & Thomas)
+Add constraints regression test(Vadim &amp; Thomas)
 Add comments syntax regression test(Thomas)
 Add PGINDENT and support program(Bruce)
 Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
 Files moved to /src/tools directory(Bruce)
-SPI and Trigger programming guides (Vadim & D'Arcy)
+SPI and Trigger programming guides (Vadim &amp; D'Arcy)
 </programlisting>
 </para>
 </sect2>
@@ -21611,7 +21611,7 @@ Allow libpq to distinguish between text value '' and null(Bruce)
 Allow non-postgres users with createdb privs to destroydb's
 Allow restriction on who can create C functions(Bryan)
 Allow restriction on who can do backend COPY(Bryan)
-Can shrink tables, pg_time and pg_log(Vadim & Erich)
+Can shrink tables, pg_time and pg_log(Vadim &amp; Erich)
 Change debug level 2 to print queries only, changed debug heading layout(Bruce)
 Change default decimal constant representation from float4 to float8(Bruce)
 European date format now set when postmaster is started
index abce259..b37939e 100644 (file)
@@ -72,7 +72,7 @@ test=> select '6.25 .. 6.50'::seg as "pH";
   <para>
    The external representation of an interval is formed using one or two
    floating point numbers joined by the range operator ('..' or '...'). 
-   Optional certainty indicators (<, > and ~) are ignored by the internal 
+   Optional certainty indicators (&lt;, &gt; and ~) are ignored by the internal 
    logics, but are retained in the data.
   </para>
   
@@ -82,35 +82,35 @@ test=> select '6.25 .. 6.50'::seg as "pH";
     <tbody>
      <row>
       <entry>rule 1</entry>
-      <entry>seg -> boundary PLUMIN deviation</entry>
+      <entry>seg -&gt; boundary PLUMIN deviation</entry>
      </row>
      <row>
       <entry>rule 2</entry>
-      <entry>seg -> boundary RANGE boundary</entry>
+      <entry>seg -&gt; boundary RANGE boundary</entry>
      </row>
      <row>
       <entry>rule 3</entry>
-      <entry>seg -> boundary RANGE</entry>
+      <entry>seg -&gt; boundary RANGE</entry>
      </row>
      <row>
       <entry>rule 4</entry>
-      <entry>seg -> RANGE boundary</entry>
+      <entry>seg -&gt; RANGE boundary</entry>
      </row>
      <row>
       <entry>rule 5</entry>
-      <entry>seg -> boundary</entry>
+      <entry>seg -&gt; boundary</entry>
      </row>
      <row>
       <entry>rule 6</entry>
-      <entry>boundary -> FLOAT</entry>
+      <entry>boundary -&gt; FLOAT</entry>
      </row>
      <row>
       <entry>rule 7</entry>
-      <entry>boundary -> EXTENSION FLOAT</entry>
+      <entry>boundary -&gt; EXTENSION FLOAT</entry>
      </row>
      <row>
       <entry>rule 8</entry>
-      <entry>deviation -> FLOAT</entry>
+      <entry>deviation -&gt; FLOAT</entry>
      </row>
     </tbody>
    </tgroup>
@@ -142,7 +142,7 @@ test=> select '6.25 .. 6.50'::seg as "pH";
      </row>
      <row>
       <entry>EXTENSION</entry>
-      <entry>[<>~]</entry>
+      <entry>[&lt;&gt;~]</entry>
      </row>
     </tbody>
    </tgroup>
@@ -169,16 +169,16 @@ test=> select '6.25 .. 6.50'::seg as "pH";
       </entry>
      </row> 
      <row>
-      <entry><5.0</entry>
+      <entry>&lt;5.0</entry>
       <entry>
-       (rules 5,7) -- creates a point at 5.0; '<' is ignored but 
+       (rules 5,7) -- creates a point at 5.0; '&lt;' is ignored but 
        is preserved as a comment
       </entry>
      </row>
      <row>
-      <entry>>5.0</entry>
+      <entry>&gt;5.0</entry>
       <entry>
-       (rules 5,7) -- creates a point at 5.0; '>' is ignored but
+       (rules 5,7) -- creates a point at 5.0; '&gt;' is ignored but
        is preserved as a comment
       </entry>
      </row>
@@ -305,39 +305,39 @@ postgres=> select '10(+-)1'::seg as seg;
   <itemizedlist>
    <listitem>
     <programlisting>
-[a, b] << [c, d]        Is left of
+[a, b] &lt;&lt; [c, d]        Is left of
     </programlisting>
     <para>
      The left operand, [a, b], occurs entirely to the left of the
      right operand, [c, d], on the axis (-inf, inf). It means,
-     [a, b] << [c, d] is true if b < c and false otherwise
+     [a, b] &lt;&lt; [c, d] is true if b &lt; c and false otherwise
     </para>
    </listitem>
    <listitem>
     <programlisting>
-[a, b] >> [c, d]        Is right of
+[a, b] &gt;&gt; [c, d]        Is right of
     </programlisting>
     <para>
         [a, b] is occurs entirely to the right of [c, d]. 
-        [a, b] >> [c, d] is true if a > d and false otherwise
+        [a, b] &gt;&gt; [c, d] is true if a &gt; d and false otherwise
     </para>
    </listitem>
    <listitem>
     <programlisting>
-[a, b] &< [c, d]        Overlaps or is left of
+[a, b] &amp;&lt; [c, d]        Overlaps or is left of
     </programlisting>
     <para>
         This might be better read as "does not extend to right of".
-        It is true when b <= d.
+        It is true when b &lt;= d.
     </para>
    </listitem>
    <listitem>
     <programlisting>
-[a, b] &> [c, d]        Overlaps or is right of
+[a, b] &amp;&gt; [c, d]        Overlaps or is right of
     </programlisting>
     <para>
         This might be better read as "does not extend to left of".
-        It is true when a >= c.
+        It is true when a &gt;= c.
     </para>
    </listitem>
    <listitem>
@@ -351,7 +351,7 @@ postgres=> select '10(+-)1'::seg as seg;
    </listitem>
    <listitem>
     <programlisting>
-[a, b] && [c, d]        Overlaps
+[a, b] &amp;&amp; [c, d]        Overlaps
     </programlisting>
     <para>
         The segments [a, b] and [c, d] overlap.
@@ -359,25 +359,25 @@ postgres=> select '10(+-)1'::seg as seg;
    </listitem>
    <listitem>
     <programlisting>
-[a, b] @> [c, d]                Contains
+[a, b] @&gt; [c, d]                Contains
     </programlisting>
     <para>
         The segment [a, b] contains the segment [c, d], that is, 
-        a <= c and b >= d
+        a &lt;= c and b &gt;= d
     </para>
    </listitem>
    <listitem>
     <programlisting>
-[a, b] <@ [c, d]                Contained in
+[a, b] &lt;@ [c, d]                Contained in
     </programlisting>
     <para>
         The segment [a, b] is contained in [c, d], that is, 
-        a >= c and b <= d
+        a &gt;= c and b &lt;= d
     </para>
    </listitem>
   </itemizedlist>
   <para>
-   (Before PostgreSQL 8.2, the containment operators @> and <@ were
+   (Before PostgreSQL 8.2, the containment operators @&gt; and &lt;@ were
    respectively called @ and ~.  These names are still available, but are
    deprecated and will eventually be retired.  Notice that the old names
    are reversed from the convention formerly followed by the core geometric
@@ -393,8 +393,8 @@ postgres=> select '10(+-)1'::seg as seg;
   </para>
 
   <programlisting>
-[a, b] < [c, d]                Less than
-[a, b] > [c, d]                Greater than
+[a, b] &lt; [c, d]                Less than
+[a, b] &gt; [c, d]                Greater than
   </programlisting>
   <para>
    These operators do not make a lot of sense for any practical
index 593dd17..7cab2f9 100644 (file)
@@ -173,7 +173,7 @@ CREATE TYPE tablefunc_crosstab_N AS (
      e.g. the provided crosstab2 function produces a set something like:
     </para>
     <programlisting>
-                      <== values  columns ==>
+                      &lt;== values  columns ==&gt;
            row_name   category_1   category_2
            ---------+------------+------------
              row1        val1         val2
@@ -286,7 +286,7 @@ crosstab(text sql, int N)
     the example crosstab function produces a set something like:
    </para>
    <programlisting>
-            <== values  columns ==>
+            &lt;== values  columns ==&gt;
 row_name   category_1   category_2
  ---------+------------+------------
    row1        val1         val2
@@ -479,7 +479,7 @@ SELECT DISTINCT cat FROM foo;
     the example crosstab function produces a set something like:
    </para>
    <programlisting>
-                      <== values  columns ==>
+                      &lt;== values  columns ==&gt;
            row_name   extra   cat1   cat2   cat3   cat4
            ---------+-------+------+------+------+------
              row1     extra1  val1   val2          val4
index 193b817..942aeb4 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/trigger.sgml,v 1.50 2007/02/14 01:58:56 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/trigger.sgml,v 1.51 2007/12/03 23:49:51 tgl Exp $ -->
 
  <chapter id="triggers">
   <title>Triggers</title>
@@ -288,7 +288,7 @@ CALLED_AS_TRIGGER(fcinfo)
 </programlisting>
     which expands to:
 <programlisting>
-((fcinfo)-&gt;context != NULL && IsA((fcinfo)-&gt;context, TriggerData))
+((fcinfo)-&gt;context != NULL &amp;&amp; IsA((fcinfo)-&gt;context, TriggerData))
 </programlisting>
     If this returns true, then it is safe to cast
     <literal>fcinfo-&gt;context</> to type <literal>TriggerData
@@ -580,7 +580,7 @@ trigf(PG_FUNCTION_ARGS)
 
     /* check for null values */
     if (!TRIGGER_FIRED_BY_DELETE(trigdata-&gt;tg_event)
-        && TRIGGER_FIRED_BEFORE(trigdata-&gt;tg_event))
+        &amp;&amp; TRIGGER_FIRED_BEFORE(trigdata-&gt;tg_event))
         checknull = true;
 
     if (TRIGGER_FIRED_BEFORE(trigdata-&gt;tg_event))
index 15a5265..9a0af4b 100644 (file)
@@ -401,7 +401,7 @@ WHERE t.author_id = p.person_id;
    </para>
    <para>
     Also note that if either the document or stylesheet values do not
-    begin with a < then they will be treated as URLs and libxslt will
+    begin with a &lt; then they will be treated as URLs and libxslt will
     fetch them. It thus follows that you can use xslt_process as a means
     to fetch the contents of URLs - you should be aware of the security
     implications of this.