2 <?xml version="1.0" encoding="UTF-8" ?>
3 <chapter id="databaseschema">
4 <title>Database Schema</title>
5 <para>This is the schema for the Evergreen database.</para>
6 <!-- TMPL_IF name="database_comment" -->
7 <!-- TMPL_VAR name="database_comment_dbk" -->
8 <!-- /TMPL_IF name="database_comment" -->
10 <!-- TMPL_LOOP name="schemas" -->
11 <section id="<!-- TMPL_VAR name="schema_sgmlid" -->">
12 <title>Schema <!-- TMPL_VAR name="schema_dbk" --></title>
13 <para><!-- TMPL_VAR name="schema_comment_dbk" --></para>
14 <!-- TMPL_LOOP name="tables" -->
15 <simplesect id="<!-- TMPL_VAR name="table_sgmlid" -->"
16 xreflabel="<!-- TMPL_VAR name="schema_dbk" -->.<!-- TMPL_VAR name="table_dbk" -->">
17 <title id="<!-- TMPL_VAR name="table_sgmlid" -->-title">
18 <!-- TMPL_IF name="view_definition" -->View:
19 <!-- TMPL_ELSE -->Table:
20 <!-- /TMPL_IF name="view_definition" -->
21 <!-- TMPL_VAR name="table_dbk" -->
24 <!-- TMPL_IF name="table_comment" -->
26 <!-- TMPL_VAR name="table_comment_dbk" -->
28 <!-- /TMPL_IF name="table_comment" -->
30 <title>Columns:</title>
31 <simplelist type="horiz" columns="1">
32 <member><emphasis class="italic">field name : datatype -- parameters, contraints and notes</emphasis></member>
33 <!-- TMPL_LOOP name="columns" -->
35 <database class="field"><!-- TMPL_VAR name="column_dbk" --></database> : <database class="datatype"><!-- TMPL_VAR name="column_type_dbk" --></database>
37 <!-- TMPL_LOOP name="column_constraints" -->
38 <!-- TMPL_IF name="column_primary_key" -->
39 <literal>PRIMARY KEY</literal>,
40 <!-- /TMPL_IF name="column_primary_key" -->
41 <!-- TMPL_IF name="column_unique" -->
42 <literal>UNIQUE<!-- TMPL_IF name="column_unique_keygroup" -->#<!-- TMPL_VAR name="column_unique_keygroup" --><!-- /TMPL_IF name="column_unique_keygroup" --></literal>,
43 <!-- /TMPL_IF name="column_unique" -->
44 <!-- /TMPL_LOOP name="column_constraints" -->
45 <!-- TMPL_IF name="column_constraint_notnull" -->
46 <literal>NOT NULL</literal>,
47 <!-- /TMPL_IF name="column_constraint_notnull" -->
48 <!-- TMPL_IF name="column_default" -->
49 <literal>DEFAULT <!-- TMPL_VAR name="column_default_dbk" --></literal>,
50 <!-- /TMPL_IF name="column_default" -->
51 <!-- TMPL_LOOP name="column_constraints" -->
52 <!-- TMPL_IF name="column_fk" -->
53 <literal>REFERENCES</literal> <xref linkend="<!-- TMPL_VAR name="column_fk_sgmlid" -->"/>.
54 <!-- /TMPL_IF name="column_fk" -->
55 <!-- /TMPL_LOOP name="column_constraints" -->
56 <!-- TMPL_IF name="column_comment" --> <!-- TMPL_VAR name="column_comment_dbk" --><!-- /TMPL_IF name="column_comment" -->
58 <!-- /TMPL_LOOP name="columns" -->
61 <!-- TMPL_LOOP name="constraints" -->
62 <!-- TMPL_IF name="__FIRST__" -->
64 <title>Constraints:</title>
65 <simplelist type="horiz" columns="1">
66 <!-- /TMPL_IF name="__FIRST__" -->
67 <member><database class="constraint"><!-- TMPL_VAR name="constraint_name_dbk" --></database> : <!-- TMPL_VAR name="constraint_dbk" --></member>
68 <!-- TMPL_IF name="__LAST__" -->
71 <!-- /TMPL_IF name="__LAST__" -->
72 <!-- /TMPL_LOOP name="constraints" -->
73 <!-- TMPL_LOOP name="indexes" -->
74 <!-- TMPL_IF name="__FIRST__" -->
76 <title>Indexes:</title>
77 <simplelist type="horiz" columns="1">
78 <!-- /TMPL_IF name="__FIRST__" -->
79 <member><database class="index"><!-- TMPL_VAR name="index_name_dbk" --></database> : <!-- TMPL_VAR name="index_definition_dbk" --></member>
80 <!-- TMPL_IF name="__LAST__" -->
83 <!-- /TMPL_IF name="__LAST__" -->
84 <!-- /TMPL_LOOP name="indexes" -->
85 <!-- TMPL_LOOP name="fk_schemas" -->
86 <!-- TMPL_IF name="__FIRST__" -->
88 <title>Tables referencing <!-- TMPL_IF name="number_of_schemas" --><!-- TMPL_VAR ESCAPE="HTML" name="fk_schema_dbk" -->.<!-- /TMPL_IF name="number_of_schemas" --><!-- TMPL_VAR ESCAPE="HTML" name="fk_table_dbk" --> via Foreign Key Constraints:</title>
89 <simplelist type="horiz" columns="2">
90 <!-- /TMPL_IF name="__FIRST__" -->
91 <member><xref linkend="<!-- TMPL_VAR name="fk_sgmlid" -->"/></member>
92 <!-- TMPL_IF name="__LAST__" -->
95 <!-- /TMPL_IF name="__LAST__" -->
96 <!-- /TMPL_LOOP name="fk_schemas" -->
98 <!-- TMPL_LOOP name="permissions" -->
99 <!-- TMPL_IF name="__FIRST__" -->
101 <title>Permissions on <!-- TMPL_IF name="number_of_schemas" --><!-- TMPL_VAR ESCAPE="HTML" name="schema" -->.<!-- /TMPL_IF name="number_of_schemas" --><!-- TMPL_VAR name="table_dbk" --></title>
102 <!-- /TMPL_IF name="__FIRST__" -->
104 <term><!-- TMPL_VAR name="user_dbk" --></term>
107 <simplelist type="inline">
108 <!-- TMPL_IF name="select" -->
109 <member>Select</member>
110 <!-- /TMPL_IF name="select" -->
111 <!-- TMPL_IF name="insert" -->
112 <member>Insert</member>
113 <!-- /TMPL_IF name="insert" -->
114 <!-- TMPL_IF name="update" -->
115 <member>Update</member>
116 <!-- /TMPL_IF name="update" -->
117 <!-- TMPL_IF name="delete" -->
118 <member>Delete</member>
119 <!-- /TMPL_IF name="delete" -->
120 <!-- TMPL_IF name="rule" -->
121 <member>Rule</member>
122 <!-- /TMPL_IF name="rule" -->
123 <!-- TMPL_IF name="references" -->
124 <member>References</member>
125 <!-- /TMPL_IF name="references" -->
126 <!-- TMPL_IF name="trigger" -->
127 <member>Trigger</member>
128 <!-- /TMPL_IF name="trigger" -->
133 <!-- TMPL_IF name="__LAST__" -->
135 <!-- /TMPL_IF name="__LAST__" -->
136 <!-- /TMPL_LOOP name="permissions" -->
138 <!-- /TMPL_LOOP name="tables" -->
139 <!-- TMPL_LOOP name="functions" -->
140 <simplesect id="<!-- TMPL_VAR NAME="function_sgmlid" -->" xreflabel="<!-- TMPL_VAR NAME="schema_dbk" --><!-- TMPL_VAR NAME="function_dbk"-->">
141 <title id="<!-- TMPL_VAR NAME="function_sgmlid" -->-title"><!-- TMPL_VAR name="function_dbk" --></title>
143 <!-- TMPL_VAR name="function_comment_dbk" -->
145 <title>Function Properties</title>
146 <?dbhtml list-presentation="list"?>
147 <segtitle>Language</segtitle>
148 <segtitle>Return Type</segtitle>
150 <seg><!-- TMPL_VAR ESCAPE="HTML" name="function_language" --></seg>
151 <seg><!-- TMPL_VAR ESCAPE="HTML" name="function_returns" --></seg>
156 <!-- /TMPL_LOOP name="functions" -->
159 <!-- /TMPL_LOOP name="schemas" -->