r10285: * doc/*.xml: Fix spelling of Vladimir
[clsql.git] / doc / ref-fdml.xml
index 2908175042d8c71a5f54cb07c8c6df0a32192ff2..c512cdb020f9d0829e16bfe5396a1d7a26f52e51 100644 (file)
@@ -37,7 +37,7 @@
       <refentrytitle>*CACHE-TABLE-QUERIES-DEFAULT*</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Variable</emphasis> <emphasis role="bold">*CACHE-TABLE-QUERIES-DEFAULT*</emphasis></refname>
+      <refname>*CACHE-TABLE-QUERIES-DEFAULT*</refname>
       <refpurpose>Specifies the default behaviour for caching of
       attribute types.</refpurpose>
       <refclass>Variable</refclass>
       <refentrytitle>CACHE-TABLE-QUERIES</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">CACHE-TABLE-QUERIES</emphasis></refname>
-      <refpurpose>Controls the caching of attribute type information for a database table.</refpurpose>
+      <refname>CACHE-TABLE-QUERIES</refname>
+      <refpurpose>Control the caching of table attribute types.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
     <refsect1>
       <title>Syntax</title>
       <synopsis>
-      <function>cache-table-queries</function> <replaceable>table</replaceable> &amp;key <replaceable>action</replaceable> <replaceable>database</replaceable>) => <returnvalue></returnvalue></synopsis>
+      <function>cache-table-queries</function> <replaceable>table</replaceable> &amp;key <replaceable>action</replaceable> <replaceable>database</replaceable> => <returnvalue></returnvalue></synopsis>
     </refsect1>
     <refsect1>
       <title>Arguments and Values</title>
     </refsect1>
     <refsect1>
       <title>Side Effects</title>
-      <para>
+       <para>
         The internal attribute cache for
         <parameter>database</parameter> is modified.
-      </para>
-    </refsect1>
+       </para>
+     </refsect1>
     <refsect1>
       <title>Affected by</title>
       <simplelist>
     </refsect1>
   </refentry>
 
-
-  <!-- insert/update/delete records --> 
-
   <refentry id="insert-records">
     <refmeta>
       <refentrytitle>INSERT-RECORDS</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">INSERT-RECORDS</emphasis></refname>
+      <refname>INSERT-RECORDS</refname>
       <refpurpose>Insert tuples of data into a database table.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
       <refentrytitle>UPDATE-RECORDS</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">UPDATE-RECORDS</emphasis></refname>
+      <refname>UPDATE-RECORDS</refname>
       <refpurpose>Updates the values of existing records.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
         :from [employee]
         :where [= [emplid] 1] 
         :field-names nil)
-=> (("Vladamir" "Lenin" "lenin@soviet.org"))
+=> (("Vladimir" "Lenin" "lenin@soviet.org"))
 (update-records [employee] 
                 :av-pairs'((first_name "Yuri")
                            (last_name "Gagarin")
       <refentrytitle>DELETE-RECORDS</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">DELETE-RECORDS</emphasis></refname>
+      <refname>DELETE-RECORDS</refname>
       <refpurpose>Delete records from a database table.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
       <refentrytitle>EXECUTE-COMMAND</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Generic Function</emphasis> <emphasis role="bold">EXECUTE-COMMAND</emphasis></refname>
+      <refname>EXECUTE-COMMAND</refname>
       <refpurpose>Execute an SQL command which returns no values.</refpurpose>
       <refclass>Generic Function</refclass>
     </refnamediv>
       <refentrytitle>QUERY</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Generic Function</emphasis> <emphasis role="bold">QUERY</emphasis></refname>
+      <refname>QUERY</refname>
       <refpurpose>Execute an SQL query and return the tuples as a 
       list.</refpurpose>
       <refclass>Generic Function</refclass>
       <title>Examples</title>
       <screen>
 (query "select emplid,first_name,last_name,height from employee where emplid = 1")
-=> ((1 "Vladamir" "Lenin" 1.5564661d0)), 
+=> ((1 "Vladimir" "Lenin" 1.5564661d0)), 
    ("emplid" "first_name" "last_name" "height")
 
 (query "select emplid,first_name,last_name,height from employee where emplid = 1" 
        :field-names nil)
-=> ((1 "Vladamir" "Lenin" 1.5564661d0))
+=> ((1 "Vladimir" "Lenin" 1.5564661d0))
 
 (query "select emplid,first_name,last_name,height from employee where emplid = 1" 
        :field-names nil
        :result-types nil)
-=> (("1" "Vladamir" "Lenin" "1.5564661"))
+=> (("1" "Vladimir" "Lenin" "1.5564661"))
 
 (query "select emplid,first_name,last_name,height from employee where emplid = 1" 
        :field-names nil
        :result-types '(:int t t :double))
-=> ((1 "Vladamir" "Lenin" 1.5564661))
+=> ((1 "Vladimir" "Lenin" 1.5564661))
 
 (query "select last_name from employee where emplid > 5" :flatp t)
 => ("Andropov" "Chernenko" "Gorbachev" "Yeltsin" "Putin"), 
       <refentrytitle>PRINT-QUERY</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">PRINT-QUERY</emphasis></refname>
+      <refname>PRINT-QUERY</refname>
       <refpurpose>Prints a tabular report of query results.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
                      :where [&lt; [emplid] 5]] 
               :titles '("ID" "FORENAME" "SURNAME" "EMAIL"))
 ID FORENAME SURNAME  EMAIL               
-1  Vladamir Lenin    lenin@soviet.org    
+1  Vladimir Lenin    lenin@soviet.org    
 2  Josef    Stalin   stalin@soviet.org   
 3  Leon     Trotsky  trotsky@soviet.org  
 4  Nikita   Kruschev kruschev@soviet.org 
@@ -1082,7 +1079,7 @@ ID FORENAME   SURNAME   EMAIL
 7  Konstantin Chernenko chernenko@soviet.org 
 8  Mikhail    Gorbachev gorbachev@soviet.org 
 9  Boris      Yeltsin   yeltsin@soviet.org   
-10 Vladamir   Putin     putin@soviet.org     
+10 Vladimir   Putin     putin@soviet.org     
 => 
 </screen>
     </refsect1>
@@ -1129,14 +1126,14 @@ ID FORENAME   SURNAME   EMAIL
       <refentrytitle>SELECT</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">SELECT</emphasis></refname>
+      <refname>SELECT</refname>
       <refpurpose>Executes a query given the supplied constraints.</refpurpose>
       <refclass>Function</refclass>
     </refnamediv>
     <refsect1>
       <title>Syntax</title>
       <synopsis>
-      <function>select</function> &amp;rest <replaceable>identifiers</replaceable> &amp;key <replaceable>all</replaceable> <replaceable>distinct</replaceable> <replaceable>from</replaceable> <replaceable>group-by</replaceable> <replaceable>having</replaceable> <replaceable>order-by</replaceable> <replaceable>set-operation</replaceable> <replaceable>where</replaceable> <replaceable>result-types</replaceable> <replaceable>field-names</replaceable> <replaceable>flatp</replaceable> <replaceable>refresh</replaceable> <replaceable>database</replaceable> => <returnvalue>result</returnvalue></synopsis>
+      <function>select</function> &amp;rest <replaceable>identifiers</replaceable> &amp;key <replaceable>all</replaceable> <replaceable>distinct</replaceable> <replaceable>from</replaceable> <replaceable>group-by</replaceable> <replaceable>having</replaceable> <replaceable>order-by</replaceable> <replaceable>set-operation</replaceable> <replaceable>where</replaceable> <replaceable>result-types</replaceable> <replaceable>field-names</replaceable> <replaceable>flatp</replaceable> <replaceable>refresh</replaceable> <replaceable>caching</replaceable> <replaceable>database</replaceable> => <returnvalue>result</returnvalue></synopsis>
     </refsect1>
     <refsect1>
       <title>Arguments and Values</title>
@@ -1283,6 +1280,35 @@ ID FORENAME   SURNAME   EMAIL
           </para>
           </listitem>
         </varlistentry>
+        <varlistentry>
+          <term><parameter>refresh</parameter></term>
+          <listitem> 
+          <para>
+            This value is only considered when CLOS objects are being
+            selected. A boolean with a default value of &nil;. When
+            the value of the <varname>caching</varname> keyword is
+            &t;, a second equivalent <function>select</function> call
+            will return the same view class instance objects. When
+            <varname>refresh</varname> is &t;, then slots of the
+            existing instances are updated as necessary. In such
+            cases, you may wish to override the hook
+            <function>instance-refresh</function>.
+          </para>
+          </listitem>
+        </varlistentry>
+        <varlistentry>
+          <term><parameter>caching</parameter></term>
+          <listitem> 
+          <para>
+            This value is only considered when CLOS objects are being
+            selected.  A boolean with a default value of
+            <varname>*default-caching*</varname>. &clsql; caches
+            objects in accordance with the &commonsql; interface: a
+            second equivalent <function>select</function> call will
+            return the same view class instance objects.
+          </para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term><parameter>result</parameter></term>
           <listitem>
@@ -1371,7 +1397,7 @@ ID FORENAME   SURNAME   EMAIL
                      :field-names nil 
                      :result-types nil 
                      :order-by [first-name])
-=> ("Boris" "Josef" "Konstantin" "Leon" "Leonid" "Mikhail" "Nikita" "Vladamir"
+=> ("Boris" "Josef" "Konstantin" "Leon" "Leonid" "Mikhail" "Nikita" "Vladimir"
     "Yuri")
 
 (select [first-name] [count [*]] :from [employee]
@@ -1380,7 +1406,7 @@ ID FORENAME   SURNAME   EMAIL
                                 :order-by [first-name]
                                 :field-names nil)
 => (("Boris" "1") ("Josef" "1") ("Konstantin" "1") ("Leon" "1") ("Leonid" "1")
-    ("Mikhail" "1") ("Nikita" "1") ("Vladamir" "2") ("Yuri" "1"))
+    ("Mikhail" "1") ("Nikita" "1") ("Vladimir" "2") ("Yuri" "1"))
 
 (select [last-name] :from [employee] 
                     :where [like [email] "%org"]
@@ -1428,7 +1454,7 @@ ID FORENAME   SURNAME   EMAIL
         :order-by '(([first-name] :asc) ([last-name] :desc)))
 => (("Boris" "Yeltsin") ("Josef" "Stalin") ("Konstantin" "Chernenko")
     ("Leon" "Trotsky") ("Leonid" "Brezhnev") ("Mikhail" "Gorbachev")
-    ("Nikita" "Kruschev") ("Vladamir" "Putin") ("Vladamir" "Lenin")
+    ("Nikita" "Kruschev") ("Vladimir" "Putin") ("Vladimir" "Lenin")
     ("Yuri" "Andropov"))
 
 (select [last-name] :from [employee]                   
@@ -1439,15 +1465,13 @@ ID FORENAME   SURNAME   EMAIL
                  :field-names nil)
 => ("Andropov" "Boris" "Brezhnev" "Chernenko" "Gorbachev" "Josef" "Konstantin"
     "Kruschev" "Lenin" "Leon" "Leonid" "Mikhail" "Nikita" "Putin" "Stalin"
-    "Trotsky" "Vladamir" "Yeltsin" "Yuri")
+    "Trotsky" "Vladimir" "Yeltsin" "Yuri")
       </screen>
     </refsect1>
     <refsect1>
       <title>Side Effects</title>
-      <para>
         <para>Whatever effects the execution of the SQL query has on
         the underlying database, if any.</para>
-      </para>
     </refsect1>
     <refsect1>
       <title>Affected by</title>
@@ -1506,7 +1530,7 @@ ID FORENAME   SURNAME   EMAIL
       <refentrytitle>DO-QUERY</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Macro</emphasis> <emphasis role="bold">DO-QUERY</emphasis></refname>
+      <refname>DO-QUERY</refname>
       <refpurpose>Iterate over all the tuples of a query.</refpurpose>
       <refclass>Macro</refclass>
     </refnamediv>
@@ -1687,9 +1711,10 @@ ID FORENAME   SURNAME   EMAIL
       <refentrytitle>LOOP</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Additional clause</emphasis> for <emphasis role="bold">LOOP</emphasis></refname>
-      <refpurpose>Iterate over all the tuples of a
-      query via a loop clause.</refpurpose>
+      <refname>LOOP</refname>
+      <refpurpose>Extension to Common Lisp
+      <computeroutput>Loop</computeroutput> to iterate over all the
+      tuples of a query via a loop clause.</refpurpose>
       <refclass>Loop Clause</refclass>
     </refnamediv>
     <!-- refsect1>
@@ -1800,7 +1825,7 @@ ID FORENAME   SURNAME   EMAIL
                 :order-by [last-name]]
       collect (concatenate 'string forename " " surname))
 => ("Yuri Andropov" "Leonid Brezhnev" "Konstantin Chernenko" "Mikhail Gorbachev"
-    "Nikita Kruschev" "Vladamir Lenin" "Vladamir Putin" "Josef Stalin"
+    "Nikita Kruschev" "Vladimir Lenin" "Vladimir Putin" "Josef Stalin"
     "Leon Trotsky" "Boris Yeltsin")
 
 (loop for (e) being the records in 
@@ -1855,7 +1880,7 @@ ID FORENAME   SURNAME   EMAIL
       <refentrytitle>MAP-QUERY</refentrytitle>
     </refmeta>
     <refnamediv>
-      <refname><emphasis>Function</emphasis> <emphasis role="bold">MAP-QUERY</emphasis></refname>
+      <refname>MAP-QUERY</refname>
       <refpurpose>Map a function over all the tuples from a
       query</refpurpose>
       <refclass>Function</refclass>
@@ -2008,8 +2033,8 @@ ID FORENAME   SURNAME   EMAIL
            [select [first-name] [last-name] :from [employee] 
                    :order-by [last-name]])
 => (("Yuri" "Andropov") ("Leonid" "Brezhnev") ("Konstantin" "Chernenko")
-    ("Mikhail" "Gorbachev") ("Nikita" "Kruschev") ("Vladamir" "Lenin")
-    ("Vladamir" "Putin") ("Josef" "Stalin") ("Leon" "Trotsky") 
+    ("Mikhail" "Gorbachev") ("Nikita" "Kruschev") ("Vladimir" "Lenin")
+    ("Vladimir" "Putin") ("Josef" "Stalin") ("Leon" "Trotsky") 
     ("Boris" "Yeltsin"))
 
 (map-query 'list #'last-name [select 'employee :order-by [emplid]])