Updated to parse the new, single format sqlf xml and emit warnings when the old style...
[dbsrgits/SQL-Translator.git] / t / data / xml / schema-basic.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- 
3 Created by SQL::Translator::Producer::XML
4 Created on Fri Aug  1 11:24:58 2003
5
6  -->
7
8 <sqlf:schema xmlns:sqlf="http://sqlfairy.sourceforge.net/sqlfairy.xml">
9     
10   <sqlf:table>
11     <sqlf:name>Basic</sqlf:name>
12     <sqlf:order>1</sqlf:order>
13     <sqlf:fields>
14       <sqlf:field>
15         <sqlf:name>id</sqlf:name>
16         <sqlf:is_primary_key>1</sqlf:is_primary_key>
17         <sqlf:is_auto_increment>1</sqlf:is_auto_increment>
18         <sqlf:data_type>int</sqlf:data_type>
19         <sqlf:is_nullable>0</sqlf:is_nullable>
20         <sqlf:size>10</sqlf:size>
21         <sqlf:order>1</sqlf:order>
22       </sqlf:field>
23       <sqlf:field>
24         <sqlf:name>title</sqlf:name>
25         <sqlf:data_type>varchar</sqlf:data_type>
26         <sqlf:size>100</sqlf:size>
27         <sqlf:default_value>hello</sqlf:default_value>
28         <sqlf:is_nullable>0</sqlf:is_nullable>
29         <sqlf:order>2</sqlf:order>
30       </sqlf:field>
31       <sqlf:field>
32         <sqlf:name>description</sqlf:name>
33         <sqlf:data_type>text</sqlf:data_type>
34         <sqlf:default_value></sqlf:default_value>
35         <sqlf:order>3</sqlf:order>
36       </sqlf:field>
37       <sqlf:field>
38         <sqlf:name>email</sqlf:name>
39         <sqlf:data_type>varchar</sqlf:data_type>
40         <sqlf:is_nullable>1</sqlf:is_nullable>
41         <sqlf:size>255</sqlf:size>
42         <sqlf:order>4</sqlf:order>
43       </sqlf:field>
44       <sqlf:field>
45         <sqlf:name>explicitnulldef</sqlf:name>
46         <sqlf:data_type>varchar</sqlf:data_type>
47         <sqlf:is_nullable>1</sqlf:is_nullable>
48         <sqlf:default_value>NULL</sqlf:default_value>
49         <sqlf:order>5</sqlf:order>
50       </sqlf:field>
51       <sqlf:field>
52         <sqlf:name>explicitemptystring</sqlf:name>
53         <sqlf:data_type>varchar</sqlf:data_type>
54         <sqlf:is_nullable>1</sqlf:is_nullable>
55         <sqlf:default_value>EMPTY_STRING</sqlf:default_value>
56         <sqlf:order>6</sqlf:order>
57       </sqlf:field>
58       <sqlf:field>
59         <sqlf:name>emptytagdef</sqlf:name>
60         <sqlf:data_type>varchar</sqlf:data_type>
61         <sqlf:is_nullable>1</sqlf:is_nullable>
62         <sqlf:default_value/>
63         <sqlf:order>7</sqlf:order>
64       </sqlf:field>
65     </sqlf:fields>
66     
67     <sqlf:indices>
68       <sqlf:index>
69         <sqlf:fields>title</sqlf:fields>
70         <sqlf:name>titleindex</sqlf:name>
71         <sqlf:type>NORMAL</sqlf:type>
72       </sqlf:index>
73     </sqlf:indices>
74     
75     <sqlf:constraints>
76       <sqlf:constraint>
77         <sqlf:deferrable>1</sqlf:deferrable>
78         <sqlf:fields>email</sqlf:fields>
79         <sqlf:name>emailuniqueindex</sqlf:name>
80         <sqlf:type>UNIQUE</sqlf:type>
81       </sqlf:constraint>
82     </sqlf:constraints>
83   </sqlf:table>
84   
85   <sqlf:view>
86     <sqlf:fields>email</sqlf:fields>
87     <sqlf:name>email_list</sqlf:name>
88     <sqlf:order>1</sqlf:order>
89     <sqlf:sql>SELECT email FROM Basic WHERE email IS NOT NULL</sqlf:sql>
90   </sqlf:view>
91   
92   <sqlf:trigger>
93     <sqlf:action>update modified=timestamp();</sqlf:action>
94     <sqlf:database_event>insert</sqlf:database_event>
95     <sqlf:name>foo_trigger</sqlf:name>
96     <sqlf:on_table>foo</sqlf:on_table>
97     <sqlf:order>1</sqlf:order>
98     <sqlf:perform_action_when>after</sqlf:perform_action_when>
99   </sqlf:trigger>
100   
101   <sqlf:procedure>
102     <sqlf:comments>Go Sox!</sqlf:comments>
103     <sqlf:name>foo_proc</sqlf:name>
104     <sqlf:order>1</sqlf:order>
105     <sqlf:owner>Nomar</sqlf:owner>
106     <sqlf:parameters>foo,bar</sqlf:parameters>
107     <sqlf:sql>select foo from bar</sqlf:sql>
108   </sqlf:procedure>
109
110 </sqlf:schema>