fc571fe0f3b8a673c772eb8ba3f3a228abe40bdf
[Evergreen.git] / Open-ILS / examples / fm_IDL.xml
1 <IDL xmlns="http://opensrf.org/spec/IDL/base/v1" xmlns:oils_persist="http://open-ils.org/spec/opensrf/IDL/persistence/v1" xmlns:oils_obj="http://open-ils.org/spec/opensrf/IDL/objects/v1" xmlns:reporter="http://open-ils.org/spec/opensrf/IDL/reporter/v1" xmlns:permacrud="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2
3         <!-- Virtual classes -->
4         <class id="mups" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_payment_summary" oils_persist:virtual="true">
5                 <fields>
6                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
7                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
8                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
9                         <field name="usr" oils_obj:array_position="3" oils_persist:virtual="true" />
10                         <field name="forgive_payment" oils_obj:array_position="4" oils_persist:virtual="true" />
11                         <field name="work_payment" oils_obj:array_position="5" oils_persist:virtual="true" />
12                         <field name="credit_payment" oils_obj:array_position="6" oils_persist:virtual="true" />
13                         <field name="goods_payment" oils_obj:array_position="7" oils_persist:virtual="true" />
14                 </fields>
15                 <links>
16                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
17                 </links>
18         </class>
19
20         <class id="mwps" controller="open-ils.cstore" oils_obj:fieldmapper="money::workstation_payment_summary" oils_persist:virtual="true">
21                 <fields>
22                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
23                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
24                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
25                         <field name="workstation" oils_obj:array_position="3" oils_persist:virtual="true" />
26                         <field name="cash_payment" oils_obj:array_position="4" oils_persist:virtual="true" />
27                         <field name="check_payment" oils_obj:array_position="5" oils_persist:virtual="true" />
28                         <field name="credit_card_payment" oils_obj:array_position="6" oils_persist:virtual="true" />
29                 </fields>
30                 <links>
31                         <link field="workstation" reltype="has_a" key="id" map="" class="aws"/>
32                 </links>
33         </class>
34
35         <class id="brn" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_node" oils_persist:virtual="true">
36                 <fields>
37                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
38                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
39                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
40                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="true" />
41                         <field name="children" oils_obj:array_position="3" oils_persist:virtual="true" />
42                         <field name="owner_doc" oils_obj:array_position="9" oils_persist:virtual="true" />
43                         <field name="intra_doc_id" oils_obj:array_position="5" oils_persist:virtual="true" />
44                         <field name="parent_node" oils_obj:array_position="10" oils_persist:virtual="true" />
45                         <field name="node_type" oils_obj:array_position="8" oils_persist:virtual="true" />
46                         <field name="namespace_uri" oils_obj:array_position="7" oils_persist:virtual="true" />
47                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="true" />
48                         <field name="value" oils_obj:array_position="11" oils_persist:virtual="true" />
49                 </fields>
50         </class>
51
52         <class id="mvr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::virtual_record" oils_persist:virtual="true">
53                 <fields>
54                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
55                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
56                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
57                         <field name="title" oils_obj:array_position="19" oils_persist:virtual="true" />
58                         <field name="author" oils_obj:array_position="3" oils_persist:virtual="true" />
59                         <field name="doc_id" oils_obj:array_position="6" oils_persist:virtual="true" />
60                         <field name="doc_type" oils_obj:array_position="7" oils_persist:virtual="true" />
61                         <field name="pubdate" oils_obj:array_position="12" oils_persist:virtual="true" />
62                         <field name="isbn" oils_obj:array_position="9" oils_persist:virtual="true" />
63                         <field name="publisher" oils_obj:array_position="13" oils_persist:virtual="true" />
64                         <field name="tcn" oils_obj:array_position="18" oils_persist:virtual="true" />
65                         <field name="subject" oils_obj:array_position="16" oils_persist:virtual="true" />
66                         <field name="types_of_resource" oils_obj:array_position="21" oils_persist:virtual="true" />
67                         <field name="call_numbers" oils_obj:array_position="4" oils_persist:virtual="true" />
68                         <field name="edition" oils_obj:array_position="8" oils_persist:virtual="true" />
69                         <field name="online_loc" oils_obj:array_position="10" oils_persist:virtual="true" />
70                         <field name="synopsis" oils_obj:array_position="17" oils_persist:virtual="true" />
71                         <field name="physical_description" oils_obj:array_position="11" oils_persist:virtual="true" />
72                         <field name="toc" oils_obj:array_position="20" oils_persist:virtual="true" />
73                         <field name="copy_count" oils_obj:array_position="5" oils_persist:virtual="true" />
74                         <field name="series" oils_obj:array_position="15" oils_persist:virtual="true" />
75                         <field name="serials" oils_obj:array_position="14" oils_persist:virtual="true" />
76                 </fields>
77         </class>
78
79         <class id="ex" controller="open-ils.cstore" oils_obj:fieldmapper="ex" oils_persist:virtual="true">
80                 <fields>
81                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
82                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
83                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
84                         <field name="err_msg" oils_obj:array_position="3" oils_persist:virtual="true" />
85                         <field name="type" oils_obj:array_position="4" oils_persist:virtual="true" />
86                 </fields>
87         </class>
88
89         <class id="perm_ex" controller="open-ils.cstore" oils_obj:fieldmapper="perm_ex" oils_persist:virtual="true">
90                 <fields>
91                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
92                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
93                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
94                         <field name="err_msg" oils_obj:array_position="3" oils_persist:virtual="true" />
95                         <field name="type" oils_obj:array_position="4" oils_persist:virtual="true" />
96                 </fields>
97         </class>
98
99         <class id="amtr" controller="open-ils.cstore" oils_obj:fieldmapper="action::matrix_test_result" oils_persist:virtual="true">
100                 <fields oils_persist:primary="matchpoint">
101                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
102                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
103                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
104                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
105                         <field reporter:label="Success" name="success" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
106                         <field reporter:label="Failure Part" name="fail_part" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
107                 </fields>
108                 <links>
109                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
110                 </links>
111         </class>
112
113
114         <!-- Actually in the DB -->
115         <class id="auoi" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_org_unit_opt_in" oils_persist:tablename="actor.usr_org_unit_opt_in" reporter:label="User Sharing Opt-in">
116                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_org_unit_opt_in_id_seq">
117                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
118                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
119                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
120                         <field reporter:label="Opt-in ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
121                         <field reporter:label="Workstation" name="opt_in_ws" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
122                         <field reporter:label="Staff Member" name="staff" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
123                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
124                         <field reporter:label="Allowed Org Unit" name="org_unit" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
125                         <field reporter:label="Opt-in Date/Time" name="opt_in_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
126                 </fields>
127                 <links>
128                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
129                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
130                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
131                         <link field="opt_in_ws" reltype="has_a" key="id" map="" class="aws"/>
132                 </links>
133         </class>
134
135         <class id="aws" controller="open-ils.cstore" oils_obj:fieldmapper="actor::workstation" oils_persist:tablename="actor.workstation" reporter:label="Workstation">
136                 <fields oils_persist:primary="id" oils_persist:sequence="actor.workstation_id_seq">
137                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
138                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
139                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
140                         <field reporter:label="Workstation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
141                         <field reporter:label="Workstation Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
142                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
143                 </fields>
144                 <links>
145                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
146                 </links>
147         </class>
148
149         <class id="ccm" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_modifier" oils_persist:tablename="config.circ_modifier" reporter:label="Circulation Modifier">
150                 <fields oils_persist:primary="code">
151                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
152                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
153                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
154                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
155                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
156                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
157                         <field reporter:label="SIP2 Media Type" name="sip2_media_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
158                         <field reporter:label="Magnetic Media" name="magnetic_media" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
159                 </fields>
160                 <links/>
161         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
162             <actions>
163                 <create permission="CREATE_CIRC_MOD" context_field="parent_ou"/>
164                 <retrieve/>
165                 <update permission="UPDATE_CIRC_MOD" context_field="parent_ou"/>
166                 <delete permission="DELETE_CIRC_MOD" context_field="parent_ou"/>
167             </actions>
168         </permacrud>
169         </class>
170
171         <class id="cvrfm" controller="open-ils.cstore" oils_obj:fieldmapper="config::videorecording_format_map" oils_persist:tablename="config.videorecording_format_map" reporter:label="Videorecording Format">
172                 <fields oils_persist:primary="code">
173                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
174                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
175                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
176                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
177                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
178                 </fields>
179                 <links/>
180         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
181             <actions>
182                 <create permission="CREATE_VR_FORMAT" global_required="true"/>
183                 <retrieve/>
184                 <update permission="UPDATE_VR_FORMAT" global_required="true"/>
185                 <delete permission="DELETE_VR_FORMAT" global_required="true"/>
186             </actions>
187         </permacrud>
188         </class>
189
190         <class id="chmm" controller="open-ils.cstore" oils_obj:fieldmapper="config::hold_matrix_matchpoint" oils_persist:tablename="config.hold_matrix_matchpoint" reporter:label="Hold Matrix Matchpoint">
191                 <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_matchpoint_id_seq">
192                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
193                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
194                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
195                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
196                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
197                         <field reporter:label="User Home Library" name="user_home_ou" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
198                         <field reporter:label="Request Library" name="request_ou" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
199                         <field reporter:label="Pickup Library" name="pickup_ou" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
200                         <field reporter:label="Owning Library" name="item_owning_ou" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
201                         <field reporter:label="Item Circ Library" name="item_circ_ou" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
202                         <field reporter:label="User Permission Group" name="usr_grp" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
203                         <field reporter:label="Requestor Permission Group" name="requestor_grp" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
204                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
205                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
206                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
207                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_obj:array_position="15" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
208                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
209                 </fields>
210                 <links>
211                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
212                         <link field="request_ou" reltype="has_a" key="id" map="" class="aou"/>
213                         <link field="pickup_ou" reltype="has_a" key="id" map="" class="aou"/>
214                         <link field="item_owning_ou" reltype="has_a" key="id" map="" class="aou"/>
215                         <link field="item_circ_ou" reltype="has_a" key="id" map="" class="aou"/>
216                         <link field="usr_grp" reltype="has_a" key="id" map="" class="pgt"/>
217                         <link field="requestor_grp" reltype="has_a" key="id" map="" class="pgt"/>
218                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
219                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
220                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
221                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
222                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
223                 </links>
224         </class>
225
226         <class id="ccmm" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_matchpoint" oils_persist:tablename="config.circ_matrix_matchpoint" reporter:label="Circulation Matrix Matchpoint">
227                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_matchpoint_id_seq">
228                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
229                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
230                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
231                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
232                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
233                         <field reporter:label="Org Unit" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
234                         <field reporter:label="Permission Group" name="grp" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
235                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
236                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
237                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="9" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
238                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_obj:array_position="10" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
239                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
240                         <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
241                         <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
242                 </fields>
243                 <links>
244                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
245                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
246                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
247                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
248                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
249                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
250                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
251                 </links>
252         </class>
253
254         <class id="chmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::hold_matrix_test" oils_persist:tablename="config.hold_matrix_test" reporter:label="Hold Matrix Test Set">
255                 <fields oils_persist:primary="matchpoint">
256                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
257                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
258                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
259                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
260                         <field reporter:label="Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
261                         <field reporter:label="Range is from Owning Lib?" name="distance_is_from_owner" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
262                         <field reporter:label="Transit Range" name="transit_range" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
263                         <field reporter:label="Max Holds" name="max_holds" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
264                         <field reporter:label="Max includes Frozen" name="include_frozen_holds" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
265                         <field reporter:label="Copy Age Hold Protection Rule" name="age_hold_protect_rule" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
266                 </fields>
267                 <links>
268                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
269                         <link field="age_hold_protect_rule" reltype="has_a" key="id" map="" class="crahp"/>
270                 </links>
271         </class>
272
273         <class id="ccmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_test" oils_persist:tablename="config.circ_matrix_test" reporter:label="Circulation Matrix Test Set">
274                 <fields oils_persist:primary="matchpoint">
275                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
276                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
277                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
278                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
279                         <field reporter:label="Circulate?" name="circulate" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
280                         <field reporter:label="Max Items Out" name="max_items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
281                         <field reporter:label="Max Overdue" name="max_overdue" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
282                         <field reporter:label="Max Fines" name="max_fines" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
283                         <field reporter:label="Test Script" name="script_test" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
284                 </fields>
285                 <links>
286                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
287                 </links>
288         </class>
289
290         <class id="ccmcmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_circ_mod_test" oils_persist:tablename="config.circ_matrix_circ_mod_test" reporter:label="Circulation Matrix Circulation Modifier Subtest">
291                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_circ_mod_test_id_seq">
292                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
293                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
294                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
295                         <field reporter:label="Test ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
296                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
297                         <field reporter:label="Items Out" name="items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
298                         <field reporter:label="Circulation Modifier" name="circ_mod" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
299                 </fields>
300                 <links>
301                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
302                         <link field="circ_mod" reltype="has_a" key="id" map="" class="ccm"/>
303                 </links>
304         </class>
305
306         <class id="ccmrs" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_ruleset" oils_persist:tablename="config.circ_matrix_ruleset" reporter:label="Circulation Matrix Rule Set">
307                 <fields oils_persist:primary="matchpoint">
308                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
309                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
310                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
311                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
312                         <field reporter:label="Duration Rule" name="duration_rule" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
313                         <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
314                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
315                 </fields>
316                 <links>
317                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
318                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
319                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
320                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
321                 </links>
322         </class>
323
324         <class id="cit" controller="open-ils.cstore" oils_obj:fieldmapper="config::identification_type" oils_persist:tablename="config.identification_type" reporter:label="Identification Type">
325                 <fields oils_persist:primary="id" oils_persist:sequence="config.identification_type_id_seq">
326                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
327                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
328                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
329                         <field reporter:label="Identification ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
330                         <field reporter:label="Identification Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
331                 </fields>
332                 <links/>
333         </class>
334
335         <class id="asvq" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_question" oils_persist:tablename="action.survey_question" reporter:label="User Survey Question">
336                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_question_id_seq">
337                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
338                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
339                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
340                         <field reporter:label="Answers" name="answers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
341                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
342                         <field reporter:label="Question ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
343                         <field reporter:label="Question" name="question" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
344                         <field reporter:label="Survey" name="survey" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
345                 </fields>
346                 <links>
347                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
348                         <link field="responses" reltype="has_many" key="question" map="" class="asvr"/>
349                         <link field="answers" reltype="has_many" key="question" map="" class="asva"/>
350                 </links>
351         </class>
352         <class id="mbts" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction_summary" oils_persist:tablename="money.billable_xact_summary" reporter:label="Billable Transaction Summary">
353                 <fields oils_persist:primary="id" oils_persist:sequence="">
354                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
355                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
356                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
357                         <field reporter:label="Balance Owed" name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
358                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id"/>
359                         <field reporter:label="Last Billing Note" name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
360                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
361                         <field reporter:label="Last Billing Type" name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
362                         <field reporter:label="Last Payment Note" name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
363                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
364                         <field reporter:label="Last Payment Type" name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
365                         <field reporter:label="Total Owed" name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
366                         <field reporter:label="Total Paid" name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
367                         <field reporter:label="Billed User" name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
368                         <field reporter:label="Transaction Finish Time" name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
369                         <field reporter:label="Transaction Start Time" name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
370                         <field reporter:label="Transaction Type" name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
371                 </fields>
372                 <links>
373                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
374                 </links>
375         </class>
376         <class id="aun" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_note" oils_persist:tablename="actor.usr_note" reporter:label="User Note">
377                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_note_id_seq">
378                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
379                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
380                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
381                         <field reporter:label="Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
382                         <field reporter:label="Creating Staff" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
383                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
384                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
385                         <field reporter:label="Note Title" name="title" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
386                         <field reporter:label="User" name="usr" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link" />
387                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
388                 </fields>
389                 <links>
390                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
391                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
392                 </links>
393         </class>
394         <class id="aus" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_setting" oils_persist:tablename="actor.usr_setting" reporter:label="User Setting">
395                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_setting_id_seq">
396                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
397                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
398                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
399                         <field reporter:label="Setting ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
400                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
401                         <field reporter:label="User" name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
402                         <field reporter:label="Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
403                 </fields>
404                 <links>
405                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
406                 </links>
407         </class>
408         <class id="mafe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::author_field_entry" oils_persist:tablename="metabib.author_field_entry">
409                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.author_field_entry_id_seq">
410                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
411                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
412                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
413                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
414                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
415                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
416                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
417                 </fields>
418                 <links>
419                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
420                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
421                 </links>
422         </class>
423         <class id="aihu" controller="open-ils.cstore" oils_obj:fieldmapper="action::in_house_use" oils_persist:tablename="action.in_house_use" reporter:core="true" reporter:label="In House Use">
424                 <fields oils_persist:primary="id" oils_persist:sequence="action.in_house_use_id_seq">
425                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
426                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
427                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
428                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
429                         <field reporter:label="Item" name="item" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
430                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
431                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
432                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
433                 </fields>
434                 <links>
435                         <link field="item" reltype="has_a" key="id" map="" class="acp"/>
436                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
437                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
438                 </links>
439         </class>
440         <class id="ancihu" controller="open-ils.cstore" oils_obj:fieldmapper="action::non_cat_in_house_use" oils_persist:tablename="action.non_cat_in_house_use" reporter:core="true" reporter:label="Non-cataloged In House Use">
441                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cat_in_house_use_id_seq">
442                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
443                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
444                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
445                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
446                         <field reporter:label="Item Type" name="item_type" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
447                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
448                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
449                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
450                 </fields>
451                 <links>
452                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
453                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
454                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
455                 </links>
456         </class>
457         <class id="atc" controller="open-ils.cstore" oils_obj:fieldmapper="action::transit_copy" oils_persist:tablename="action.transit_copy" reporter:core="true" reporter:label="Copy Transit">
458                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
459                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
460                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
461                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
462                         <field reporter:label="Pretransit Copy Status" name="copy_status" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
463                         <field reporter:label="Destination" name="dest" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
464                         <field reporter:label="Receive Date/Time" name="dest_recv_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
465                         <field reporter:label="Transit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
466                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
467                         <field reporter:label="Previous Hop (unused)" name="prev_hop" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
468                         <field reporter:label="Source" name="source" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
469                         <field reporter:label="Send Date/Time" name="source_send_time" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
470                         <field reporter:label="Transited Copy" name="target_copy" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
471                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
472                 </fields>
473                 <links>
474                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
475                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
476                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
477                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
478                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
479                 </links>
480         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
481             <actions>
482                 <create permission="TRANSIT_COPY"/>
483                 <retrieve/>
484                 <update permission="UPDATE_TRANSIT" context_field="dest|source"/>
485                 <delete permission="DELETE_TRANSIT" context_field="dest|source"/>
486             </actions>
487         </permacrud>
488         </class>
489         <class id="asvr" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_response" oils_persist:tablename="action.survey_response" reporter:label="Survey Response">
490                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_response_id_seq">
491                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
492                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
493                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
494                         <field reporter:label="Answer" name="answer" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
495                         <field reporter:label="Answer Date/Time" name="answer_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
496                         <field reporter:label="Effective Answer Date/Time" name="effective_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
497                         <field reporter:label="Answer ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
498                         <field reporter:label="Question" name="question" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
499                         <field reporter:label="Response Group ID" name="response_group_id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int" />
500                         <field reporter:label="Survey" name="survey" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
501                         <field reporter:label="Responding User" name="usr" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
502                 </fields>
503                 <links>
504                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
505                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
506                         <link field="answer" reltype="has_a" key="id" map="" class="asva"/>
507                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
508                 </links>
509         </class>
510         <class id="ccbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket_item" oils_persist:tablename="container.copy_bucket_item">
511                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_id_seq">
512                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
513                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
514                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
515                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" />
516                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
517                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
518                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
519                 </fields>
520                 <links>
521                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
522                         <link field="bucket" reltype="has_a" key="id" map="" class="ccb"/>
523                 </links>
524         </class>
525         <class id="are" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_entry" oils_persist:tablename="authority.record_entry">
526                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_entry_id_seq">
527                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
528                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
529                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
530                         <field name="active" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
531                         <field name="arn_source" oils_obj:array_position="4" oils_persist:virtual="false" />
532                         <field name="arn_value" oils_obj:array_position="5" oils_persist:virtual="false" />
533                         <field name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
534                         <field name="creator" oils_obj:array_position="7" oils_persist:virtual="false" />
535                         <field name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
536                         <field name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
537                         <field name="editor" oils_obj:array_position="10" oils_persist:virtual="false" />
538                         <field name="id" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="id" />
539                         <field name="last_xact_id" oils_obj:array_position="12" oils_persist:virtual="false" />
540                         <field name="marc" oils_obj:array_position="13" oils_persist:virtual="false" />
541                         <field name="source" oils_obj:array_position="14" oils_persist:virtual="false" />
542                         <field name="fixed_fields" oils_obj:array_position="15" oils_persist:virtual="true" />
543                         <field name="notes" oils_obj:array_position="16" oils_persist:virtual="true" />
544                 </fields>
545                 <links>
546                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
547                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
548                         <link field="notes" reltype="has_many" key="record" map="" class="arn"/>
549                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="ard"/>
550                 </links>
551         </class>
552         <class id="ard" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_descriptor" oils_persist:tablename="authority.rec_descriptor">
553                 <fields oils_persist:primary="id" oils_persist:sequence="authority.rec_descriptor_id_seq">
554                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
555                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
556                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
557                         <field name="char_encoding" oils_obj:array_position="3" oils_persist:virtual="false" />
558                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" />
559                         <field name="record" oils_obj:array_position="5" oils_persist:virtual="false" />
560                         <field name="record_status" oils_obj:array_position="6" oils_persist:virtual="false" />
561                 </fields>
562                 <links>
563                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
564                 </links>
565         </class>
566         <class id="clm" controller="open-ils.cstore" oils_obj:fieldmapper="config::language_map" oils_persist:tablename="config.language_map" reporter:label="Language Map">
567                 <fields oils_persist:primary="code" oils_persist:sequence="">
568                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
569                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
570                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
571                         <field reporter:label="Language Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
572                         <field reporter:label="Language" name="value" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
573                 </fields>
574                 <links/>
575         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
576             <actions>
577                 <create permission="CREATE_LANGUAGE" global_required="true"/>
578                 <retrieve/>
579                 <update permission="UPDATE_LANGUAGE" global_required="true"/>
580                 <delete permission="DELETE_LANGUAGE" global_required="true"/>
581             </actions>
582         </permacrud>
583         </class>
584         <class id="mccp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_card_payment" oils_persist:tablename="money.credit_card_payment">
585                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
586                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
587                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
588                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
589                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" />
590                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
591                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
592                         <field name="approval_code" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
593                         <field name="cash_drawer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
594                         <field name="cc_number" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
595                         <field name="cc_type" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
596                         <field name="expire_month" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int" />
597                         <field name="expire_year" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="int" />
598                         <field name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
599                         <field name="note" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
600                         <field name="payment_ts" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp"/>
601                         <field name="xact" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
602                         <field name="payment_type" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="text"/>
603                         <field name="payment" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
604                 </fields>
605                 <links>
606                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
607                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
608                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
609                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
610                 </links>
611         </class>
612         <class id="cxt" controller="open-ils.cstore" oils_obj:fieldmapper="config::xml_transform" oils_persist:tablename="config.xml_transform" reporter:label="XML/XSLT Transform Definition">
613                 <fields oils_persist:primary="name">
614                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
615                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
616                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
617                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
618                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" />
619                         <field reporter:label="Namespace URI" name="namespace_uri" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
620                         <field reporter:label="Namespace Prefix" name="prefix" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
621                         <field reporter:label="XSLT" name="xslt" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text" />
622                 </fields>
623                 <links/>
624         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
625             <actions>
626                 <create permission="CREATE_XML_TRANSFORM" global_required="true"/>
627                 <retrieve/>
628                 <update permission="UPDATE_XML_TRANSFORM" global_required="true"/>
629                 <delete permission="DELETE_XML_TRANSFORM" global_required="true"/>
630             </actions>
631         </permacrud>
632         </class>
633         <class id="cmf" controller="open-ils.cstore" oils_obj:fieldmapper="config::metabib_field" oils_persist:tablename="config.metabib_field">
634                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_id_seq">
635                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
636                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
637                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
638                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
639                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
640                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
641                         <field name="xpath" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
642                         <field name="weight" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int" />
643                         <field name="format" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
644                         <field name="search_field" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool" />
645                         <field name="facet_field" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool" />
646                 </fields>
647                 <links/>
648         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
649             <actions>
650                 <create permission="CREATE_METABIB_FIELD" global_required="true"/>
651                 <retrieve/>
652                 <update permission="UPDATE_METABIB_FIELD" global_required="true"/>
653                 <delete permission="DELETE_METABIB_FIELD" global_required="true"/>
654             </actions>
655         </permacrud>
656         </class>
657         <class id="cam" controller="open-ils.cstore" oils_obj:fieldmapper="config::audience_map" oils_persist:tablename="config.audience_map" reporter:label="Audience Map">
658                 <fields oils_persist:primary="code" oils_persist:sequence="">
659                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
660                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
661                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
662                         <field reporter:label="Audience Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
663                         <field reporter:label="Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true" />
664                         <field reporter:label="Audience" name="value" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
665                 </fields>
666                 <links/>
667         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
668             <actions>
669                 <create permission="CREATE_AUDIENCE" global_required="true"/>
670                 <retrieve/>
671                 <update permission="UPDATE_AUDIENCE" global_required="true"/>
672                 <delete permission="DELETE_AUDIENCE" global_required="true"/>
673             </actions>
674         </permacrud>
675         </class>
676         <class id="cifm" controller="open-ils.cstore" oils_obj:fieldmapper="config::item_form_map" oils_persist:tablename="config.item_form_map" reporter:label="Item Form Map">
677                 <fields oils_persist:primary="code" oils_persist:sequence="">
678                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
679                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
680                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
681                         <field reporter:label="Item Form Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
682                         <field reporter:label="Item Form" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
683                 </fields>
684                 <links/>
685         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
686             <actions>
687                 <create permission="CREATE_ITEM_FORM" global_required="true"/>
688                 <retrieve/>
689                 <update permission="UPDATE_ITEM_FORM" global_required="true"/>
690                 <delete permission="DELETE_ITEM_FORM" global_required="true"/>
691             </actions>
692         </permacrud>
693         </class>
694         <class id="acn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number" oils_persist:tablename="asset.call_number" reporter:label="Call Number/Volume">
695                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_id_seq">
696                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
697                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
698                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
699                         <field reporter:label="Copies" name="copies" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
700                         <field reporter:label="Create Date/Time" name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
701                         <field reporter:label="Creating User" name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
702                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
703                         <field reporter:label="Last Edit Date/Time" name="edit_date" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
704                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
705                         <field reporter:label="Call Number/Volume ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
706                         <field reporter:label="Call Number Label" name="label" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
707                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
708                         <field reporter:label="Bib Record" name="record" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
709                         <field reporter:label="Notes" name="notes" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
710                 </fields>
711                 <links>
712                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
713                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
714                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
715                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
716                         <link field="notes" reltype="has_many" key="call_number" map="" class="acnn"/>
717                         <link field="copies" reltype="has_many" key="call_number" map="" class="acp"/>
718                 </links>
719         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
720             <actions>
721                 <create permission="CREATE_VOLUME" context_field="owning_lib"/>
722                 <retrieve/>
723                 <update permission="UPDATE_VOLUME" context_field="owning_lib"/>
724                 <delete permission="DELETE_VOLUME" context_field="owning_lib"/>
725             </actions>
726         </permacrud>
727         </class>
728         <class id="cst" controller="open-ils.cstore" oils_obj:fieldmapper="config::standing" oils_persist:tablename="config.standing">
729                 <fields oils_persist:primary="id" oils_persist:sequence="config.standing_id_seq">
730                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
731                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
732                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
733                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
734                         <field name="value" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:i18n="true" />
735                 </fields>
736                 <links/>
737         </class>
738         <class id="mous" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_user_summary" oils_persist:tablename="money.open_usr_summary">
739                 <fields oils_persist:primary="usr" oils_persist:sequence="">
740                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
741                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
742                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
743                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
744                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
745                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
746                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
747                 </fields>
748                 <links/>
749         </class>
750         <class id="mct" controller="open-ils.cstore" oils_obj:fieldmapper="money::collections_tracker" oils_persist:tablename="money.collections_tracker">
751                 <fields oils_persist:primary="id" oils_persist:sequence="money.collections_tracker_id_seq">
752                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
753                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
754                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
755                         <field name="collector" oils_obj:array_position="3" oils_persist:virtual="false" />
756                         <field name="enter_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
757                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
758                         <field name="location" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
759                         <field name="usr" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
760                 </fields>
761                 <links>
762                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
763                         <link field="collector" reltype="has_a" key="id" map="" class="au"/>
764                         <link field="location" reltype="has_a" key="id" map="" class="aou"/>
765                 </links>
766         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
767             <actions>
768                 <create permission="money.collections_tracker.create" context_field="location"/>
769                 <retrieve/>
770                 <delete permission="money.collections_tracker.create" context_field="location"/>
771             </actions>
772         </permacrud>
773         </class>
774         <class id="bre" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_entry" oils_persist:tablename="biblio.record_entry" reporter:core="true" reporter:label="Bibliographic Record">
775                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_entry_id_seq">
776                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
777                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
778                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
779                         <field reporter:label="Call Numbers" name="call_numbers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
780                         <field reporter:label="Fixed Field Entry" name="fixed_fields" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
781                         <field reporter:label="Is Active?" name="active" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
782                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
783                         <field reporter:label="Record Creator" name="creator" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
784                         <field reporter:label="Is Deleted?" name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
785                         <field reporter:label="Last Edit Data/Time" name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
786                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
787                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
788                         <field reporter:label="Record ID" name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
789                         <field reporter:label="Last Transaction ID" name="last_xact_id" oils_obj:array_position="13" oils_persist:virtual="false"  reporter:datatype="text"/>
790                         <field reporter:label="MARC21Slim" name="marc" oils_obj:array_position="14" oils_persist:virtual="false"  reporter:datatype="text"/>
791                         <field reporter:label="Overall Quality" name="quality" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="int" />
792                         <field reporter:label="Record Source" name="source" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="link"/>
793                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="17" oils_persist:virtual="false"  reporter:datatype="text"/>
794                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="18" oils_persist:virtual="false"  reporter:datatype="text"/>
795                         <field reporter:label="Metarecord" name="metarecord" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
796                         <field reporter:label="Language Code" name="language" oils_obj:array_position="20" oils_persist:virtual="true" reporter:datatype="link"/>
797                         <field reporter:label="Non-MARC Record Notes" name="notes" oils_obj:array_position="21" oils_persist:virtual="true" reporter:datatype="link"/>
798                         <field reporter:label="Indexed Keyword Field Entries" name="keyword_field_entries" oils_obj:array_position="22" oils_persist:virtual="true" reporter:datatype="link"/>
799                         <field reporter:label="Indexed Subject Field Entries" name="subject_field_entries" oils_obj:array_position="23" oils_persist:virtual="true" reporter:datatype="link"/>
800                         <field reporter:label="Indexed Title Field Entries" name="title_field_entries" oils_obj:array_position="24" oils_persist:virtual="true" reporter:datatype="link"/>
801                         <field reporter:label="Indexed Author Field Entries" name="author_field_entries" oils_obj:array_position="25" oils_persist:virtual="true" reporter:datatype="link"/>
802                         <field reporter:label="Indexed Series Field Entries" name="series_field_entries" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="link"/>
803                         <field reporter:label="Flattened MARC Fields " name="full_record_entries" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
804                         <field reporter:label="Simple Record Extracts " name="simple_record" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
805                 </fields>
806                 <links>
807                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
808                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
809                         <link field="simple_record" reltype="might_have" key="id" map="" class="rssr"/>
810                         <link field="metarecord" reltype="might_have" key="source" map="metarecord" class="mmrsm"/>
811                         <link field="call_numbers" reltype="has_many" key="record" map="" class="acn"/>
812                         <link field="keyword_field_entries" reltype="has_many" key="source" map="" class="mkfe"/>
813                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="mrd"/>
814                         <link field="language" reltype="might_have" key="record" map="item_lang" class="mrd"/>
815                         <link field="subject_field_entries" reltype="has_many" key="source" map="" class="msfe"/>
816                         <link field="title_field_entries" reltype="has_many" key="source" map="" class="mtfe"/>
817                         <link field="notes" reltype="has_many" key="record" map="" class="bren"/>
818                         <link field="author_field_entries" reltype="has_many" key="source" map="" class="mafe"/>
819                         <link field="series_field_entries" reltype="has_many" key="source" map="" class="msefe"/>
820                         <link field="full_record_entries" reltype="has_many" key="record" map="" class="mfr"/>
821                 </links>
822         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
823             <actions>
824                 <create permission="CREATE_MARC|IMPORT_MARC" global_required="true"/>
825                 <retrieve/>
826                 <update permission="UPDATE_MARC" global_required="true"/>
827             </actions>
828         </permacrud>
829         </class>
830         <class id="aouhoo" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::hours_of_operation" oils_persist:tablename="actor.hours_of_operation">
831                 <fields oils_persist:primary="id" oils_persist:sequence="">
832                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
833                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
834                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
835                         <field name="dow_0_close" oils_obj:array_position="3" oils_persist:virtual="false" />
836                         <field name="dow_0_open" oils_obj:array_position="4" oils_persist:virtual="false" />
837                         <field name="dow_1_close" oils_obj:array_position="5" oils_persist:virtual="false" />
838                         <field name="dow_1_open" oils_obj:array_position="6" oils_persist:virtual="false" />
839                         <field name="dow_2_close" oils_obj:array_position="7" oils_persist:virtual="false" />
840                         <field name="dow_2_open" oils_obj:array_position="8" oils_persist:virtual="false" />
841                         <field name="dow_3_close" oils_obj:array_position="9" oils_persist:virtual="false" />
842                         <field name="dow_3_open" oils_obj:array_position="10" oils_persist:virtual="false" />
843                         <field name="dow_4_close" oils_obj:array_position="11" oils_persist:virtual="false" />
844                         <field name="dow_4_open" oils_obj:array_position="12" oils_persist:virtual="false" />
845                         <field name="dow_5_close" oils_obj:array_position="13" oils_persist:virtual="false" />
846                         <field name="dow_5_open" oils_obj:array_position="14" oils_persist:virtual="false" />
847                         <field name="dow_6_close" oils_obj:array_position="15" oils_persist:virtual="false" />
848                         <field name="dow_6_open" oils_obj:array_position="16" oils_persist:virtual="false" />
849                         <field name="id" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="id" />
850                         <field name="org_unit" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="org_unit"/>
851                 </fields>
852                 <links>
853                         <link field="org_unit" reltype="might_have" key="id" map="" class="aou"/>
854                 </links>
855         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
856             <actions>
857                 <create permission="CREATE_HOURS_OF_OPERATION" context_field="org_unit"/>
858                 <retrieve/>
859                 <update permission="UPDATE_HOURS_OF_OPERATION" context_field="org_unit"/>
860                 <delete permission="DELETE_HOURS_OF_OPERATION" context_field="org_unit"/>
861             </actions>
862         </permacrud>
863         </class>
864         <class id="aoucd" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::closed_date" oils_persist:tablename="actor.org_unit_closed">
865                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_closed_id_seq">
866                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
867                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
868                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
869                         <field name="close_end" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp" />
870                         <field name="close_start" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp" />
871                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
872                         <field name="org_unit" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
873                         <field name="reason" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
874                 </fields>
875                 <links>
876                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
877                 </links>
878         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
879             <actions>
880                 <create permission="CREATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
881                 <retrieve/>
882                 <update permission="UPDATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
883                 <delete permission="DELETE_ORG_UNIT_CLOSING" context_field="org_unit"/>
884             </actions>
885         </permacrud>
886         </class>
887         <class id="crcd" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::circ_duration" oils_persist:tablename="config.rule_circ_duration">
888                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_circ_duration_id_seq">
889                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
890                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
891                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
892                         <field name="extended" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
893                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
894                         <field name="max_renewals" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int" />
895                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
896                         <field name="normal" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="interval"/>
897                         <field name="shrt" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
898                 </fields>
899                 <links>
900                 </links>
901         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
902             <actions>
903                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
904                 <retrieve/>
905                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
906                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
907             </actions>
908         </permacrud>
909         </class>
910         <class id="mobts" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_billable_transaction_summary" oils_persist:tablename="money.open_billable_xact_summary">
911                 <fields oils_persist:primary="id" oils_persist:sequence="">
912                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
913                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
914                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
915                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
916                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
917                         <field name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
918                         <field name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
919                         <field name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
920                         <field name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
921                         <field name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
922                         <field name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
923                         <field name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
924                         <field name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
925                         <field name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
926                         <field name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
927                         <field name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
928                         <field name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
929                         <field name="xact" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
930                         <field name="grocery" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="link"/>
931                         <field name="circulation" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
932                         <field name="billing_location" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
933                 </fields>
934                 <links>
935                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
936                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
937                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
938                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
939                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
940                 </links>
941         </class>
942         <class id="au" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user" oils_persist:tablename="actor.usr" reporter:core="true" reporter:label="ILS User">
943                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_id_seq">
944                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
945                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
946                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
947                         <field reporter:label="All Addresses" name="addresses" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
948                         <field reporter:label="All Library Cards" name="cards" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
949                         <field reporter:label="All Circulations" name="checkouts" oils_obj:array_position="5" oils_persist:virtual="true" reporter:datatype="link"/>
950                         <field reporter:label="All Hold Requests" name="hold_requests" oils_obj:array_position="6" oils_persist:virtual="true" reporter:datatype="link"/>
951                         <field reporter:label="All Permissions" name="permissions" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
952                         <field reporter:label="All User Settings" name="settings" oils_obj:array_position="8" oils_persist:virtual="true" reporter:datatype="link"/>
953                         <field reporter:label="Standing Penalties" name="standing_penalties" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
954                         <field reporter:label="Statistical Category Entries" name="stat_cat_entries" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
955                         <field reporter:label="Survey Responses" name="survey_responses" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
956                         <field name="ws_ou" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
957                         <field name="wsid" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
958                         <field reporter:label="Active" name="active" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
959                         <field reporter:label="Alert Message" name="alert_message" oils_obj:array_position="15" oils_persist:virtual="false"  reporter:datatype="text"/>
960                         <field reporter:label="Barred" name="barred" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
961                         <field reporter:label="Physical Address" name="billing_address" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="link"/>
962                         <field reporter:label="Current Library Card" name="card" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="link"/>
963                         <field reporter:label="Claims-returned Count" name="claims_returned_count" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="int" />
964                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
965                         <field reporter:label="User Credit Balance" name="credit_forward_balance" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="money" />
966                         <field reporter:label="Daytime Phone" name="day_phone" oils_obj:array_position="22" oils_persist:virtual="false"  reporter:datatype="text"/>
967                         <field reporter:label="Date of Birth" name="dob" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="timestamp"/>
968                         <field reporter:label="Email Address" name="email" oils_obj:array_position="24" oils_persist:virtual="false"  reporter:datatype="text"/>
969                         <field reporter:label="Evening Phone" name="evening_phone" oils_obj:array_position="25" oils_persist:virtual="false"  reporter:datatype="text"/>
970                         <field reporter:label="Privilege Expiration Date" name="expire_date" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp"/>
971                         <field reporter:label="Last Name" name="family_name" oils_obj:array_position="27" oils_persist:virtual="false"  reporter:datatype="text"/>
972                         <field reporter:label="First Name" name="first_given_name" oils_obj:array_position="28" oils_persist:virtual="false"  reporter:datatype="text"/>
973                         <field reporter:label="Home Library" name="home_ou" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="org_unit"/>
974                         <field reporter:label="User ID" name="id" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="id" />
975                         <field reporter:label="Primary Identification Type" name="ident_type" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="link"/>
976                         <field reporter:label="Secondary Identification Type" name="ident_type2" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="link"/>
977                         <field reporter:label="Primary Identification" name="ident_value" oils_obj:array_position="33" oils_persist:virtual="false"  reporter:datatype="text"/>
978                         <field reporter:label="Secondary Identification" name="ident_value2" oils_obj:array_position="34" oils_persist:virtual="false"  reporter:datatype="text"/>
979                         <field name="last_xact_id" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="text"/>
980                         <field reporter:label="Mailing Address" name="mailing_address" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="link"/>
981                         <field reporter:label="Is Group Lead Account" name="master_account" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="bool"/>
982                         <field reporter:label="Internet Access Level" name="net_access_level" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
983                         <field reporter:label="Other Phone" name="other_phone" oils_obj:array_position="39" oils_persist:virtual="false"  reporter:datatype="text"/>
984                         <field reporter:label="Password (obfuscated)" name="passwd" oils_obj:array_position="40" oils_persist:virtual="false"  reporter:datatype="text"/>
985                         <field reporter:label="Photo URL" name="photo_url" oils_obj:array_position="41" oils_persist:virtual="false"  reporter:datatype="text"/>
986                         <field reporter:label="Prefix" name="prefix" oils_obj:array_position="42" oils_persist:virtual="false"  reporter:datatype="text"/>
987                         <field reporter:label="Main (Profile) Permission Group" name="profile" oils_obj:array_position="43" oils_persist:virtual="false" reporter:datatype="link"/>
988                         <field reporter:label="Middle Name" name="second_given_name" oils_obj:array_position="44" oils_persist:virtual="false"  reporter:datatype="text"/>
989                         <field reporter:label="Standing (unused)" name="standing" oils_obj:array_position="45" oils_persist:virtual="false" reporter:datatype="link"/>
990                         <field reporter:label="Suffix/Title" name="suffix" oils_obj:array_position="46" oils_persist:virtual="false"  reporter:datatype="text"/>
991                         <field reporter:label="Is Super User" name="super_user" oils_obj:array_position="47" oils_persist:virtual="false" reporter:datatype="bool"/>
992                         <field reporter:label="Family Linkage or other Group" name="usrgroup" oils_obj:array_position="48" oils_persist:virtual="false" reporter:datatype="int"/>
993                         <field reporter:label="OPAC/Staff Client User Name" name="usrname" oils_obj:array_position="49" oils_persist:virtual="false"  reporter:datatype="text"/>
994                         <field reporter:label="Additional Permission Groups" name="groups" oils_obj:array_position="50" oils_persist:virtual="true" reporter:datatype="link"/>
995                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="51" oils_persist:virtual="false" reporter:datatype="bool"/>
996                         <field reporter:label="User Notes" name="notes" oils_obj:array_position="52" oils_persist:virtual="true" reporter:datatype="link"/>
997                         <field reporter:label="Demographic Info" name="demographic" oils_obj:array_position="53" oils_persist:virtual="true" reporter:datatype="link"/>
998                         <field reporter:label="Billable Transactions" name="billable_transactions" oils_obj:array_position="54" oils_persist:virtual="true" reporter:datatype="link"/>
999                         <field reporter:label="Checkins" name="checkins" oils_obj:array_position="55" oils_persist:virtual="true" reporter:datatype="link"/>
1000                         <field reporter:label="Circulations Performed as Staff" name="performed_circulations" oils_obj:array_position="56" oils_persist:virtual="true" reporter:datatype="link"/>
1001                 </fields>
1002                 <links>
1003                         <link field="demographic" reltype="might_have" key="id" map="" class="rud"/>
1004                         <link field="net_access_level" reltype="has_a" key="id" map="" class="cnal"/>
1005                         <link field="profile" reltype="has_a" key="id" map="" class="pgt"/>
1006                         <link field="ident_type" reltype="has_a" key="id" map="" class="cit"/>
1007                         <link field="billing_address" reltype="has_a" key="id" map="" class="aua"/>
1008                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aua"/>
1009                         <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
1010                         <link field="standing" reltype="has_a" key="id" map="" class="cst"/>
1011                         <link field="card" reltype="has_a" key="id" map="" class="ac"/>
1012                         <link field="ident_type2" reltype="has_a" key="id" map="" class="cit"/>
1013                         <link field="stat_cat_entries" reltype="has_many" key="target_usr" map="" class="actscecm"/>
1014                         <link field="groups" reltype="has_many" key="usr" map="grp" class="pugm"/>
1015                         <link field="usrgroup" reltype="has_many" key="usrgroup" map="" class="au"/>
1016                         <link field="checkouts" reltype="has_many" key="usr" map="" class="circ"/>
1017                         <link field="hold_requests" reltype="has_many" key="usr" map="" class="circ"/>
1018                         <link field="permissions" reltype="has_many" key="usr" map="perm" class="pupm"/>
1019                         <link field="settings" reltype="has_many" key="usr" map="" class="aus"/>
1020                         <link reporter:label="Billable Transactions" field="billable_transactions" reltype="has_many" key="usr" map="" class="mbt"/>
1021                         <link field="standing_penalties" reltype="has_many" key="usr" map="" class="ausp"/>
1022                         <link field="addresses" reltype="has_many" key="usr" map="" class="aua"/>
1023                         <link field="survey_responses" reltype="has_many" key="usr" map="" class="asvr"/>
1024                         <link field="notes" reltype="has_many" key="usr" map="" class="aun"/>
1025                         <link reporter:label="Check-ins Performed as Staff" field="checkins" reltype="has_many" key="checkin_staff" map="" class="circ"/>
1026                         <link field="cards" reltype="has_many" key="usr" map="" class="ac"/>
1027                         <link reporter:label="Circulations Performed as Staff" field="performed_circulations" reltype="has_many" key="circ_staff" map="" class="circ"/>
1028                 </links>
1029         </class>
1030         <class id="aous" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_setting" oils_persist:tablename="actor.org_unit_setting">
1031                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_setting_id_seq">
1032                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1033                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1034                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1035                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" />
1036                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1037                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1038                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1039                 </fields>
1040                 <links>
1041                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1042                 </links>
1043         </class>
1044         <class id="acpn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_note" oils_persist:tablename="asset.copy_note" reporter:label="Copy Note">
1045                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_note_id_seq">
1046                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1047                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1048                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1049                         <field reporter:label="Note Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1050                         <field reporter:label="Note Creator" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1051                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1052                         <field reporter:label="Copy" name="owning_copy" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1053                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1054                         <field reporter:label="Note Title" name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1055                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1056                 </fields>
1057                 <links>
1058                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1059                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1060                 </links>
1061         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1062             <actions>
1063                 <create permission="CREATE_COPY_NOTE">
1064                     <context link="owning_copy" field="circ_lib"/>
1065                 </create>
1066                 <retrieve permission="VIEW_COPY_NOTES">
1067                     <context link="owning_copy" field="circ_lib"/>
1068                 </retrieve>
1069                 <update permission="UPDATE_COPY_NOTE">
1070                     <context link="owning_copy" field="circ_lib"/>
1071                 </update>
1072                 <delete permission="DELETE_COPY_NOTE">
1073                     <context link="owning_copy" field="circ_lib"/>
1074                 </delete>
1075             </actions>
1076         </permacrud>
1077         </class>
1078         <class id="mfr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::full_rec" oils_persist:tablename="metabib.full_rec" reporter:label="Flattened MARC Fields">
1079                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.full_rec_id_seq">
1080                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1081                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1082                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1083                         <field reporter:label="Field ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1084                         <field reporter:label="Indicator 1" name="ind1" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1085                         <field reporter:label="Indicator 2" name="ind2" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1086                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1087                         <field reporter:label="Subfield" name="subfield" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1088                         <field reporter:label="Tag" name="tag" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1089                         <field reporter:label="Normalized Value" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1090                 </fields>
1091                 <links>
1092                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1093                 </links>
1094         </class>
1095         <class id="mmr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::metarecord" oils_persist:tablename="metabib.metarecord">
1096                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_id_seq">
1097                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1098                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1099                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1100                         <field name="fingerprint" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1101                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1102                         <field name="master_record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1103                         <field name="mods" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1104                         <field name="source_records" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
1105                 </fields>
1106                 <links>
1107                         <link field="master_record" reltype="has_a" key="id" map="" class="bre"/>
1108                         <link field="source_records" reltype="has_many" key="metarecord" map="source" class="mmrsm"/>
1109                 </links>
1110         </class>
1111         <class id="cnal" controller="open-ils.cstore" oils_obj:fieldmapper="config::net_access_level" oils_persist:tablename="config.net_access_level">
1112                 <fields oils_persist:primary="id" oils_persist:sequence="config.net_access_level_id_seq">
1113                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1114                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1115                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1116                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1117                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1118                 </fields>
1119                 <links/>
1120         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1121             <actions>
1122                 <create permission="CREATE_NET_ACCESS_LEVEL" global_required="true"/>
1123                 <retrieve/>
1124                 <update permission="UPDATE_NET_ACCESS_LEVEL" global_required="true"/>
1125                 <delete permission="DELETE_NET_ACCESS_LEVEL" global_required="true"/>
1126             </actions>
1127         </permacrud>
1128         </class>
1129         <class id="ppl" controller="open-ils.cstore" oils_obj:fieldmapper="permission::perm_list" oils_persist:tablename="permission.perm_list">
1130                 <fields oils_persist:primary="id" oils_persist:sequence="permission.perm_list_id_seq">
1131                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1132                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1133                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1134                         <field name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1135                         <field name="description" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1136                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="code" reporter:datatype="id"/>
1137                 </fields>
1138                 <links/>
1139         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1140             <actions>
1141                 <create permission="CREATE_PERM" global_required="true"/>
1142                 <retrieve permission="CREATE_PERM|UPDATE_PERM|DELETE_PERM" global_required="true"/>
1143                 <update permission="UPDATE_PERM" global_required="true"/>
1144                 <delete permission="DELETE_PERM" global_required="true"/>
1145             </actions>
1146         </permacrud>
1147         </class>
1148         <class id="mmrsm" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::metarecord_source_map" oils_persist:tablename="metabib.metarecord_source_map">
1149                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_source_map_id_seq">
1150                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1151                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1152                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1153                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1154                         <field name="metarecord" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1155                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1156                 </fields>
1157                 <links>
1158                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1159                         <link field="metarecord" reltype="has_a" key="id" map="" class="mmr"/>
1160                 </links>
1161         </class>
1162         <class id="mkfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::keyword_field_entry" oils_persist:tablename="metabib.keyword_field_entry">
1163                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.keyword_field_entry_id_seq">
1164                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1165                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1166                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1167                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1168                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1169                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1170                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1171                 </fields>
1172                 <links>
1173                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1174                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1175                 </links>
1176         </class>
1177         <class id="mcp" controller="open-ils.cstore" oils_obj:fieldmapper="money::cash_payment" oils_persist:tablename="money.cash_payment">
1178                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1179                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1180                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1181                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1182                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1183                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1184                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1185                         <field name="cash_drawer" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1186                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1187                         <field name="note" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1188                         <field name="payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1189                         <field name="xact" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1190                         <field name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="text"/>
1191                         <field name="payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
1192                 </fields>
1193                 <links>
1194                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1195                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1196                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
1197                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1198                 </links>
1199         </class>
1200         <class id="mfp" controller="open-ils.cstore" oils_obj:fieldmapper="money::forgive_payment" oils_persist:tablename="money.forgive_payment">
1201                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1202                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1203                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1204                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1205                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1206                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1207                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1208                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1209                         <field name="note" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
1210                         <field name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1211                         <field name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
1212                         <field name="payment_type" oils_obj:array_position="10" oils_persist:virtual="true"  reporter:datatype="text"/>
1213                         <field name="payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1214                 </fields>
1215                 <links>
1216                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1217                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1218                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1219                 </links>
1220         </class>
1221         <class id="mrd" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::record_descriptor" oils_persist:tablename="metabib.rec_descriptor" reporter:label="Basic Record Descriptor">
1222                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.rec_descriptor_id_seq">
1223                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1224                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1225                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1226                         <field reporter:label="Audn" name="audience" oils_obj:array_position="3" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1227                         <field reporter:label="BLvl" name="bib_level" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1228                         <field reporter:label="Cat Form" name="cat_form" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1229                         <field reporter:label="Character Encoding" name="char_encoding" oils_obj:array_position="6" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1230                         <field reporter:label="Ctrl" name="control_type" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1231                         <field reporter:label="ELvl" name="enc_level" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1232                         <field reporter:label="Descriptor ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
1233                         <field reporter:label="Form" name="item_form" oils_obj:array_position="10" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1234                         <field reporter:label="Lang" name="item_lang" oils_obj:array_position="11" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1235                         <field reporter:label="Type" name="item_type" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1236                         <field reporter:label="LitF" name="lit_form" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1237                         <field reporter:label="Pub Status" name="pub_status" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1238                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1239                         <field reporter:label="TMat" name="type_mat" oils_obj:array_position="16" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1240                         <field reporter:label="Video Recording Format" name="vr_format" oils_obj:array_position="17" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1241                 </fields>
1242                 <links>
1243                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1244                         <link field="item_lang" reltype="has_a" key="code" map="" class="clm"/>
1245                         <link field="item_type" reltype="has_a" key="code" map="" class="citm"/>
1246                         <link field="item_form" reltype="has_a" key="code" map="" class="cifm"/>
1247                         <link field="audience" reltype="has_a" key="code" map="" class="cam"/>
1248                         <link field="lit_form" reltype="has_a" key="code" map="" class="clfm"/>
1249                 </links>
1250         </class>
1251         <class id="ccs" controller="open-ils.cstore" oils_obj:fieldmapper="config::copy_status" oils_persist:tablename="config.copy_status">
1252                 <fields oils_persist:primary="id" oils_persist:sequence="config.copy_status_id_seq">
1253                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1254                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1255                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1256                         <field name="holdable" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
1257                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1258                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1259                 </fields>
1260                 <links/>
1261         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1262             <actions>
1263                 <create permission="CREATE_COPY_STATUS" global_required="true"/>
1264                 <retrieve/>
1265                 <update permission="UPDATE_COPY_STATUS" global_required="true"/>
1266                 <delete permission="DELETE_COPY_STATUS" global_required="true"/>
1267             </actions>
1268         </permacrud>
1269         </class>
1270         <class id="ausp" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_standing_penalty" oils_persist:tablename="actor.usr_standing_penalty">
1271                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_standing_penalty_id_seq">
1272                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1273                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1274                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1275                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1276                         <field name="penalty_type" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1277                         <field name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1278                 </fields>
1279                 <links>
1280                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1281                 </links>
1282         </class>
1283         <class id="aua" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_address" oils_persist:tablename="actor.usr_address" reporter:label="User Address">
1284                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_address_id_seq">
1285                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1286                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1287                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1288                         <field reporter:label="Type" name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1289                         <field reporter:label="City" name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1290                         <field reporter:label="Country" name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1291                         <field reporter:label="County" name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1292                         <field reporter:label="Address ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1293                         <field reporter:label="Postal Code" name="post_code" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1294                         <field reporter:label="State" name="state" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1295                         <field reporter:label="Street (1)" name="street1" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
1296                         <field reporter:label="Street (2)" name="street2" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1297                         <field reporter:label="User" name="usr" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
1298                         <field reporter:label="Valid Address?" name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
1299                         <field reporter:label="Within City Limits?" name="within_city_limits" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1300                 </fields>
1301                 <links>
1302                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1303                 </links>
1304         </class>
1305         <class id="acnn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number_note" oils_persist:tablename="asset.call_number_note">
1306                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_note_id_seq">
1307                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1308                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1309                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1310                         <field name="call_number" oils_obj:array_position="3" oils_persist:virtual="false" />
1311                         <field name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1312                         <field name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1313                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1314                         <field name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1315                         <field name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1316                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1317                 </fields>
1318                 <links>
1319                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
1320                 </links>
1321         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1322             <actions>
1323                 <create permission="CREATE_VOLUME_NOTE">
1324                     <context link="call_number" field="owning_lib"/>
1325                 </create>
1326                 <retrieve permission="VIEW_VOLUME_NOTES">
1327                     <context link="call_number" field="owning_lib"/>
1328                 </retrieve>
1329                 <update permission="UPDATE_VOLUME_NOTE">
1330                     <context link="call_number" field="owning_lib"/>
1331                 </update>
1332                 <delete permission="DELETE_VOLUME_NOTE">
1333                     <context link="call_number" field="owning_lib"/>
1334                 </delete>
1335             </actions>
1336         </permacrud>
1337         </class>
1338         <class id="arn" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_note" oils_persist:tablename="authority.record_note">
1339                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_note_id_seq">
1340                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1341                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1342                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1343                         <field name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1344                         <field name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1345                         <field name="edit_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1346                         <field name="editor" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1347                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1348                         <field name="record" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
1349                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
1350                 </fields>
1351                 <links>
1352                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
1353                 </links>
1354         </class>
1355         <class id="circ" controller="open-ils.cstore" oils_obj:fieldmapper="action::circulation" oils_persist:tablename="action.circulation" reporter:core="true" reporter:label="Circulation">
1356                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1357                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1358                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1359                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1360                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1361                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1362                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1363                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1364                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1365                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1366                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1367                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1368                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1369                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1370                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1371                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1372                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1373                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1374                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1375                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1376                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1377                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1378                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1379                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1380                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1381                         <field reporter:label="Patron" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
1382                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1383                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1384                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1385                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1386                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1387                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1388                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1389                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1390                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1391                 </fields>
1392                 <links>
1393                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1394                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1395                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1396                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1397                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1398                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1399                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1400                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1401                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1402                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1403                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1404                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1405                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1406                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1407                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1408                 </links>
1409         </class>
1410         <class id="ccnbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::call_number_bucket_item" oils_persist:tablename="container.call_number_bucket_item">
1411                 <fields oils_persist:primary="id" oils_persist:sequence="container.call_number_bucket_item_id_seq">
1412                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1413                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1414                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1415                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1416                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1417                         <field name="target_call_number" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link" />
1418                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
1419                 </fields>
1420                 <links>
1421                         <link field="target_call_number" reltype="has_a" key="id" map="" class="acn"/>
1422                         <link field="bucket" reltype="has_a" key="id" map="" class="ccnb"/>
1423                 </links>
1424         </class>
1425         <class id="cbreb" controller="open-ils.cstore" oils_obj:fieldmapper="container::biblio_record_entry_bucket" oils_persist:tablename="container.biblio_record_entry_bucket">
1426                 <fields oils_persist:primary="id" oils_persist:sequence="container.biblio_record_entry_bucket_id_seq">
1427                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1428                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1429                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1430                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1431                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1432                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1433                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
1434                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1435                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1436                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
1437                 </fields>
1438                 <links>
1439                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
1440                         <link field="items" reltype="has_many" key="bucket" map="" class="cbrebi"/>
1441                 </links>
1442         </class>
1443         <class id="ahcm" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_copy_map" oils_persist:tablename="action.hold_copy_map">
1444                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_copy_map_id_seq">
1445                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1446                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1447                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1448                         <field name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1449                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1450                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1451                 </fields>
1452                 <links>
1453                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1454                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1455                 </links>
1456         </class>
1457         <class id="ahn" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_notification" oils_persist:tablename="action.hold_notification" reporter:label="Hold Notification">
1458                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_notification_id_seq">
1459                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1460                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1461                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1462                         <field reporter:label="Hold" name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1463                         <field reporter:label="Notification ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1464                         <field reporter:label="Notification Method" name="method" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1465                         <field reporter:label="Notification Note" name="note" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1466                         <field reporter:label="Notifying Staff" name="notify_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1467                         <field reporter:label="Notification Date/Time" name="notify_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1468                 </fields>
1469                 <links>
1470                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1471                         <link field="notify_staff" reltype="has_a" key="id" map="" class="au"/>
1472                 </links>
1473         </class>
1474         <class id="acpl" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_location" oils_persist:tablename="asset.copy_location" reporter:label="Copy/Shelving Location">
1475                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_location_id_seq">
1476                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1477                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1478                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1479                         <field reporter:label="Can Circulate?" name="circulate" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="bool"/>
1480                         <field reporter:label="Is Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
1481                         <field reporter:label="Location ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1482                         <field reporter:label="Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1483                         <field reporter:label="Is OPAC Visible?" name="opac_visible" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1484                         <field reporter:label="Owning Org Unit" name="owning_lib" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1485                 </fields>
1486                 <links>
1487                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1488                 </links>
1489         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1490             <actions>
1491                 <create permission="CREATE_COPY_LOCATION" context_field="owning_lib"/>
1492                 <retrieve/>
1493                 <update permission="UPDATE_COPY_LOCATION" context_field="owning_lib"/>
1494                 <delete permission="DELETE_COPY_LOCATION" context_field="owning_lib"/>
1495             </actions>
1496         </permacrud>
1497         </class>
1498         <class id="ascecm" controller="open-ils.cstore" oils_obj:fieldmapper="asset::stat_cat_entry_copy_map" oils_persist:tablename="asset.stat_cat_entry_copy_map">
1499                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_entry_copy_map_id_seq">
1500                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1501                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1502                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1503                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1504                         <field name="owning_copy" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1505                         <field name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1506                         <field name="stat_cat_entry" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1507                 </fields>
1508                 <links>
1509                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1510                         <link field="stat_cat_entry" reltype="has_a" key="id" map="" class="asce"/>
1511                         <link field="stat_cat" reltype="has_a" key="id" map="" class="asc"/>
1512                 </links>
1513         </class>
1514         <class id="citm" controller="open-ils.cstore" oils_obj:fieldmapper="config::item_type_map" oils_persist:tablename="config.item_type_map" reporter:label="Item Type Map">
1515                 <fields oils_persist:primary="code">
1516                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1517                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1518                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1519                         <field reporter:label="Item Type Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1520                         <field reporter:label="Item Type" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1521                 </fields>
1522                 <links/>
1523         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1524             <actions>
1525                 <create permission="CREATE_ITEM_TYPE" global_required="true"/>
1526                 <retrieve/>
1527                 <update permission="UPDATE_ITEM_TYPE" global_required="true"/>
1528                 <delete permission="DELETE_ITEM_TYPE" global_required="true"/>
1529             </actions>
1530         </permacrud>
1531         </class>
1532         <class id="sra" controller="open-ils.cstore" oils_obj:fieldmapper="search::relevance_adjustment" oils_persist:tablename="search.relevance_adjustment" reporter:label="Relevance Adjustment">
1533                 <fields oils_persist:primary="id" oils_persist:sequence="search.relevance_adjustment_id_seq">
1534                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1535                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1536                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1537                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="id"/>
1538                         <field reporter:label="Active" name="active" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="bool"/>
1539                         <field reporter:label="Index Field" name="field" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="link"/>
1540                         <field reporter:label="Bump Type" name="bump" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1541                         <field reporter:label="Multiplier" name="multiplier" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="number"/>
1542                 </fields>
1543                 <links>
1544             <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1545         </links>
1546         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1547             <actions>
1548                 <create permission="CREATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1549                 <retrieve permission="CREATE_RELEVANCE_ADJUSTMENT|UPDATE_RELEVANCE_ADJUSTMENT|DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1550                 <update permission="UPDATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1551                 <delete permission="DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1552             </actions>
1553         </permacrud>
1554         </class>
1555         <class id="lasso" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso" oils_persist:tablename="actor.org_lasso">
1556                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_id_seq">
1557                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1558                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1559                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1560                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1561                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1562                 </fields>
1563                 <links/>
1564         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1565             <actions>
1566                 <create permission="CREATE_LASSO" global_required="true"/>
1567                 <retrieve permission="CREATE_LASSO|UPDATE_LASSO|DELETE_LASSO" global_required="true"/>
1568                 <update permission="UPDATE_LASSO" global_required="true"/>
1569                 <delete permission="DELETE_LASSO" global_required="true"/>
1570             </actions>
1571         </permacrud>
1572         </class>
1573         <class id="lmap" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso_map" oils_persist:tablename="actor.org_lasso_map">
1574                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_map_id_seq">
1575                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1576                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1577                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1578                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1579                         <field name="lasso" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1580                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1581                 </fields>
1582                 <links>
1583                         <link field="lasso" reltype="has_a" key="id" map="" class="lasso"/>
1584                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1585                 </links>
1586         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1587             <actions>
1588                 <create permission="CREATE_LASSO_MAP" global_required="true"/>
1589                 <retrieve permission="CREATE_LASSO_MAP|UPDATE_LASSO_MAP|DELETE_LASSO_MAP" global_required="true"/>
1590                 <update permission="UPDATE_LASSO_MAP" global_required="true"/>
1591                 <delete permission="DELETE_LASSO_MAP" global_required="true"/>
1592             </actions>
1593         </permacrud>
1594         </class>
1595         <class id="aoup" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_proximity" oils_persist:tablename="actor.org_unit_proximity">
1596                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
1597                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1598                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1599                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1600                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1601                         <field name="from_org" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1602                         <field name="to_org" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1603                         <field name="prox" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
1604                 </fields>
1605                 <links>
1606                         <link field="from_org" reltype="has_a" key="id" map="" class="aou"/>
1607                         <link field="to_org" reltype="has_a" key="id" map="" class="aou"/>
1608                 </links>
1609         </class>
1610         <class id="ssr" controller="open-ils.cstore" oils_obj:fieldmapper="search::search_result" oils_persist:tablename="search.search_result" oils_persist:readonly="true">
1611                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
1612                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1613                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1614                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1615                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1616                         <field reporter:label="Relevance" name="rel" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="float"/>
1617                         <field reporter:label="Record" name="record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1618                         <field reporter:label="Total Results" name="total" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
1619                         <field reporter:label="Checked" name="checked" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
1620                         <field reporter:label="Visible" name="visible" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int"/>
1621                         <field reporter:label="Deleted" name="deleted" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="int"/>
1622                         <field reporter:label="Excluded" name="excluded" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int"/>
1623                 </fields>
1624                 <links/>
1625         </class>
1626         <class id="asv" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey" oils_persist:tablename="action.survey" reporter:label="Survey">
1627                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_id_seq">
1628                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1629                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1630                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1631                         <field reporter:label="Questions" name="questions" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1632                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
1633                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
1634                         <field reporter:label="Survey End Date/Time" name="end_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1635                         <field reporter:label="Survey ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id"/>
1636                         <field reporter:label="Name" name="name" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1637                         <field reporter:label="OPAC Surevey?" name="opac" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
1638                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1639                         <field reporter:label="Poll Style?" name="poll" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
1640                         <field reporter:label="Is Required?" name="required" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="bool"/>
1641                         <field reporter:label="Survey Start Date/Time" name="start_date" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1642                         <field reporter:label="Display in User Summary" name="usr_summary" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1643                 </fields>
1644                 <links>
1645                         <link field="owner" reltype="has_a" key="survey" map="" class="aou"/>
1646                         <link field="responses" reltype="has_many" key="survey" map="" class="asvr"/>
1647                         <link field="questions" reltype="has_many" key="survey" map="" class="asvq"/>
1648                 </links>
1649         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1650             <actions>
1651                 <create permission="CREATE_SURVEY" context_field="owner"/>
1652                 <retrieve/>
1653                 <update permission="UPDATE_SURVEY" context_field="owner"/>
1654                 <delete permission="DELETE_SURVEY" context_field="owner"/>
1655             </actions>
1656         </permacrud>
1657         </class>
1658         <class id="aoa" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_address" oils_persist:tablename="actor.org_address">
1659                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_address_id_seq">
1660                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1661                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1662                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1663                         <field name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1664                         <field name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1665                         <field name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1666                         <field name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1667                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1668                         <field name="org_unit" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1669                         <field name="post_code" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1670                         <field name="state" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
1671                         <field name="street1" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1672                         <field name="street2" oils_obj:array_position="12" oils_persist:virtual="false"  reporter:datatype="text"/>
1673                         <field name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
1674                 </fields>
1675                 <links>
1676                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1677                 </links>
1678         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1679             <actions>
1680                 <create permission="CREATE_ORG_ADDRESS" context_field="org_unit"/>
1681                 <retrieve/>
1682                 <update permission="UPDATE_ORG_ADDRESS" context_field="org_unit"/>
1683                 <delete permission="DELETE_ORG_ADDRESS" context_field="org_unit"/>
1684             </actions>
1685         </permacrud>
1686         </class>
1687         <class id="ahr" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_request" oils_persist:tablename="action.hold_request" reporter:core="true" reporter:label="Hold Request">
1688                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_request_id_seq">
1689                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1690                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1691                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1692                         <field name="status" oils_obj:array_position="3" oils_persist:virtual="true" />
1693                         <field reporter:label="Transit" name="transit" oils_obj:array_position="4" oils_persist:virtual="true" />
1694                         <field reporter:label="Capture Date/Time" name="capture_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1695                         <field reporter:label="Currently Targeted Copy" name="current_copy" oils_obj:array_position="6" oils_persist:virtual="false" />
1696                         <field reporter:label="Notify by Email?" name="email_notify" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1697                         <field reporter:label="Hold Expire Date/Time" name="expire_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1698                         <field reporter:label="Fulfilling Library" name="fulfillment_lib" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1699                         <field reporter:label="Fulfilling Staff" name="fulfillment_staff" oils_obj:array_position="10" oils_persist:virtual="false" />
1700                         <field reporter:label="Fulfillment Date/Time" name="fulfillment_time" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1701                         <field reporter:label="Hold Type" name="hold_type" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
1702                         <field reporter:label="Holdable Formats (for M-type hold)" name="holdable_formats" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
1703                         <field reporter:label="Hold ID" name="id" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="id" />
1704                         <field reporter:label="Notifications Phone Number" name="phone_notify" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
1705                         <field reporter:label="Pickup Library" name="pickup_lib" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1706                         <field reporter:label="Last Targeting Date/Time" name="prev_check_time" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1707                         <field reporter:label="Requesting Library" name="request_lib" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1708                         <field reporter:label="Request Date/Time" name="request_time" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1709                         <field reporter:label="Requesting User" name="requestor" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
1710                         <field reporter:label="Item Selection Depth" name="selection_depth" oils_obj:array_position="21" oils_persist:virtual="false" />
1711                         <field reporter:label="Selection Locus" name="selection_ou" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1712                         <field reporter:label="Target Object ID" name="target" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1713                         <field reporter:label="Hold User" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
1714                         <field reporter:label="Hold Cancel Date/Time" name="cancel_time" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1715                         <field name="notify_time" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="timestamp"/>
1716                         <field name="notify_count" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="int" />
1717                         <field reporter:label="Notifications" name="notifications" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1718                         <field reporter:label="Bib Record link" name="bib_rec" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1719                         <field reporter:label="Eligible Copies" name="eligible_copies" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1720                         <field reporter:label="Currently Frozen" name="frozen" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="bool"/>
1721                         <field reporter:label="Thaw Date (if frozen)" name="thaw_date" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1722                 </fields>
1723                 <links>
1724                         <link field="fulfillment_lib" reltype="has_a" key="id" map="" class="aou"/>
1725                         <link field="fulfillment_staff" reltype="has_a" key="id" map="" class="au"/>
1726                         <link field="pickup_lib" reltype="has_a" key="id" map="" class="aou"/>
1727                         <link field="selection_ou" reltype="has_a" key="id" map="" class="aou"/>
1728                         <link field="requestor" reltype="has_a" key="id" map="" class="au"/>
1729                         <link field="current_copy" reltype="has_a" key="id" map="" class="acp"/>
1730                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1731                         <link field="request_lib" reltype="has_a" key="id" map="" class="aou"/>
1732                         <link field="transit" reltype="might_have" key="hold" map="" class="ahtc"/>
1733                         <link field="notifications" reltype="has_many" key="hold" map="" class="ahn"/>
1734                         <link field="eligible_copies" reltype="has_many" key="hold" map="target_copy" class="ahcm"/>
1735                         <link field="bib_rec" reltype="might_have" key="id" map="" class="rhrr"/>
1736                 </links>
1737         </class>
1738         <class id="aou" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit" oils_persist:tablename="actor.org_unit" reporter:label="Organizational Unit">
1739                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_id_seq">
1740                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1741                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1742                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1743                         <field reporter:label="Subordinate Organizational Units" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="org_unit"/>
1744                         <field reporter:label="Billing Address" name="billing_address" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1745                         <field reporter:label="Holds Receiving Address" name="holds_address" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1746                         <field reporter:label="Organizational Unit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1747                         <field reporter:label="ILL Receiving Address" name="ill_address" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1748                         <field reporter:label="Mailing Address" name="mailing_address" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
1749                         <field reporter:label="Name" name="name" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
1750                         <field reporter:label="Organizational Unit Type" name="ou_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1751                         <field reporter:label="Parent Organizational Unit" name="parent_ou" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1752                         <field reporter:label="Short (Policy) Name" name="shortname" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
1753                         <field reporter:label="Email Address" name="email" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
1754                         <field reporter:label="Phone Number" name="phone" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
1755                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="bool"/>
1756                         <field reporter:label="Users" name="users" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="link"/>
1757                         <field reporter:label="Closed Dates" name="closed_dates" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
1758                         <field reporter:label="Circulations" name="circulations" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="link"/>
1759                         <field reporter:label="Settings" name="settings" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
1760                         <field reporter:label="Addresses" name="addresses" oils_obj:array_position="20" oils_persist:virtual="true" reporter:datatype="link"/>
1761                         <field reporter:label="Checkins" name="checkins" oils_obj:array_position="21" oils_persist:virtual="true" reporter:datatype="link"/>
1762                         <field reporter:label="Workstations" name="workstations" oils_obj:array_position="22" oils_persist:virtual="true" reporter:datatype="link"/>
1763                 </fields>
1764                 <links>
1765                         <link field="billing_address" reltype="has_a" key="id" map="" class="aoa"/>
1766                         <link field="holds_address" reltype="has_a" key="id" map="" class="aoa"/>
1767                         <link field="ou_type" reltype="has_a" key="id" map="" class="aout"/>
1768                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aoa"/>
1769                         <link field="parent_ou" reltype="has_a" key="id" map="" class="aou"/>
1770                         <link field="ill_address" reltype="has_a" key="id" map="" class="aoa"/>
1771                         <link field="users" reltype="has_many" key="home_ou" map="" class="au"/>
1772                         <link field="closed_dates" reltype="has_many" key="org_unit" map="" class="aoucd"/>
1773                         <link field="children" reltype="has_many" key="parent_ou" map="" class="aou"/>
1774                         <link field="circulations" reltype="has_many" key="circ_lib" map="" class="circ"/>
1775                         <link field="settings" reltype="has_many" key="org_unit" map="" class="aous"/>
1776                         <link field="addresses" reltype="has_many" key="org_unit" map="" class="aoa"/>
1777                         <link field="checkins" reltype="has_many" key="checkin_lib" map="" class="circ"/>
1778                         <link field="workstations" reltype="has_many" key="owning_lib" map="" class="aws"/>
1779                 </links>
1780         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1781             <actions>
1782                 <create permission="CREATE_ORG_UNIT" context_field="parent_ou"/>
1783                 <retrieve permission="CREATE_ORG_UNIT|UPDATE_ORG_UNIT|DELETE_ORG_UNIT">
1784                     <context field="id"/>
1785                     <context field="parent_ou"/>
1786                                 </retrieve>
1787                 <update permission="UPDATE_ORG_UNIT" context_field="id"/>
1788                 <delete permission="DELETE_ORG_UNIT" context_field="parent_ou"/>
1789             </actions>
1790         </permacrud>
1791         </class>
1792         <class id="ccnb" controller="open-ils.cstore" oils_obj:fieldmapper="container::call_number_bucket" oils_persist:tablename="container.call_number_bucket">
1793                 <fields oils_persist:primary="id" oils_persist:sequence="container.call_number_bucket_id_seq">
1794                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1795                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1796                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1797                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1798                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1799                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1800                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1801                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1802                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1803                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
1804                 </fields>
1805                 <links>
1806                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
1807                         <link field="items" reltype="has_many" key="bucket" map="" class="ccnbi"/>
1808                 </links>
1809         </class>
1810         <class id="asc" controller="open-ils.cstore" oils_obj:fieldmapper="asset::stat_cat" oils_persist:tablename="asset.stat_cat" reporter:label="Asset Statistical Category">
1811                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_id_seq">
1812                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1813                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1814                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1815                         <field reporter:label="Entries" name="entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1816                         <field reporter:label="Stat Cat ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" reporter:selector="name"/>
1817                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
1818                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
1819                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1820                 </fields>
1821                 <links>
1822                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
1823                         <link field="entries" reltype="has_many" key="stat_cat" map="" class="asce"/>
1824                 </links>
1825         </class>
1826         <class id="ac" controller="open-ils.cstore" oils_obj:fieldmapper="actor::card" oils_persist:tablename="actor.card" reporter:label="Library Card">
1827                 <fields oils_persist:primary="id" oils_persist:sequence="actor.card_id_seq">
1828                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1829                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1830                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1831                         <field reporter:label="IsActive?" name="active" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
1832                         <field reporter:label="Barcode" name="barcode" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1833                         <field reporter:label="Card ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1834                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1835                 </fields>
1836                 <links>
1837                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1838                 </links>
1839         </class>
1840         <class id="actsc" controller="open-ils.cstore" oils_obj:fieldmapper="actor::stat_cat" oils_persist:tablename="actor.stat_cat" reporter:label="User Statistical Category">
1841                 <fields oils_persist:primary="id" oils_persist:sequence="actor.stat_cat_id_seq">
1842                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1843                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1844                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1845                         <field reporter:label="Entries" name="entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1846                         <field reporter:label="Stat Cat ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" reporter:selector="name"/>
1847                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
1848                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
1849                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1850                 </fields>
1851                 <links>
1852                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
1853                         <link field="entries" reltype="has_many" key="stat_cat" map="" class="actsce"/>
1854                 </links>
1855         </class>
1856         <class id="msefe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::series_field_entry" oils_persist:tablename="metabib.series_field_entry">
1857                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.series_field_entry_id_seq">
1858                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1859                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1860                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1861                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1862                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1863                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1864                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1865                 </fields>
1866                 <links>
1867                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1868                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1869                 </links>
1870         </class>
1871         <class id="cub" controller="open-ils.cstore" oils_obj:fieldmapper="container::user_bucket" oils_persist:tablename="container.user_bucket">
1872                 <fields oils_persist:primary="id" oils_persist:sequence="container.user_bucket_id_seq">
1873                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1874                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1875                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1876                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1877                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1878                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1879                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1880                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1881                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1882                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
1883                 </fields>
1884                 <links>
1885                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
1886                         <link field="items" reltype="has_many" key="bucket" map="" class="cubi"/>
1887                 </links>
1888         </class>
1889         <class id="mcrp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_payment" oils_persist:tablename="money.credit_payment" reporter:label="House Credit Payment">
1890                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1891                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1892                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1893                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1894                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1895                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1896                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1897                         <field reporter:label="Pyament ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1898                         <field reporter:label="Payment Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
1899                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1900                         <field reporter:label="Transaction" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
1901                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="10" oils_persist:virtual="true"  reporter:datatype="text"/>
1902                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1903                 </fields>
1904                 <links>
1905                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1906                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1907                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1908                 </links>
1909         </class>
1910         <class id="afr" controller="open-ils.cstore" oils_obj:fieldmapper="authority::full_rec" oils_persist:tablename="authority.full_rec">
1911                 <fields oils_persist:primary="id" oils_persist:sequence="authority.full_rec_id_seq">
1912                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1913                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1914                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1915                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1916                         <field name="ind1" oils_obj:array_position="4" oils_persist:virtual="false" />
1917                         <field name="ind2" oils_obj:array_position="5" oils_persist:virtual="false" />
1918                         <field name="record" oils_obj:array_position="6" oils_persist:virtual="false" />
1919                         <field name="subfield" oils_obj:array_position="7" oils_persist:virtual="false" />
1920                         <field name="tag" oils_obj:array_position="8" oils_persist:virtual="false" />
1921                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false" />
1922                 </fields>
1923                 <links>
1924                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
1925                 </links>
1926         </class>
1927         <class id="cnct" controller="open-ils.cstore" oils_obj:fieldmapper="config::non_cataloged_type" oils_persist:tablename="config.non_cataloged_type" reporter:label="Non-cataloged Type">
1928                 <fields oils_persist:primary="id" oils_persist:sequence="config.non_cataloged_type_id_seq">
1929                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1930                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1931                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1932                         <field reporter:label="Circulation Duration" name="circ_duration" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
1933                         <field reporter:label="Non-cat Type ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1934                         <field reporter:label="In House?" name="in_house" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
1935                         <field reporter:label="Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1936                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1937                 </fields>
1938                 <links>
1939                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1940                 </links>
1941         </class>
1942         <class id="aout" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_type" oils_persist:tablename="actor.org_unit_type" reporter:label="Organizational Unit Type">
1943                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_type_id_seq">
1944                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1945                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1946                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1947                         <field reporter:label="Subordinate Types" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1948                         <field reporter:label="Can Have Users?" name="can_have_users" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
1949                         <field reporter:label="Can Have Volumes?" name="can_have_vols" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
1950                         <field reporter:label="Type Depth" name="depth" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
1951                         <field reporter:label="Type ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1952                         <field reporter:label="Type Name" name="name" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1953                         <field reporter:label="OPAC Label" name="opac_label" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1954                         <field reporter:label="Parent Type" name="parent" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1955                         <field reporter:label="Org Units" name="org_units" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="org_unit"/>
1956                 </fields>
1957                 <links>
1958                         <link field="parent" reltype="has_a" key="id" map="" class="aout"/>
1959                         <link field="children" reltype="has_many" key="parent" map="" class="aout"/>
1960                         <link field="org_units" reltype="has_many" key="ou_type" map="" class="aou"/>
1961                 </links>
1962         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1963             <actions>
1964                 <create permission="CREATE_ORG_TYPE" global_required="true"/>
1965                 <retrieve permission="CREATE_ORG_UNIT|UPDATE_ORG_UNIT|DELETE_ORG_UNIT" global_required="true"/>
1966                 <update permission="UPDATE_ORG_TYPE" global_required="true"/>
1967                 <delete permission="DELETE_ORG_TYPE" global_required="true"/>
1968             </actions>
1969         </permacrud>
1970         </class>
1971         <class id="bren" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_note" oils_persist:tablename="biblio.record_note">
1972                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_note_id_seq">
1973                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1974                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1975                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1976                         <field name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1977                         <field name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1978                         <field name="edit_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1979                         <field name="editor" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1980                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1981                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1982                         <field name="record" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
1983                         <field name="value" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
1984                 </fields>
1985                 <links>
1986                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1987                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1988                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1989                 </links>
1990         </class>
1991         <class id="mucs" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_circulation_summary" oils_persist:tablename="money.usr_circulation_summary">
1992                 <fields oils_persist:primary="usr" oils_persist:sequence="">
1993                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1994                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1995                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1996                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
1997                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1998                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1999                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2000                 </fields>
2001                 <links>
2002                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2003                 </links>
2004         </class>
2005         <class id="mg" controller="open-ils.cstore" oils_obj:fieldmapper="money::grocery" oils_persist:tablename="money.grocery" reporter:label="Grocery Transaction">
2006                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
2007                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2008                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2009                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2010                         <field reporter:label="Billing Location" name="billing_location" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2011                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2012                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
2013                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2014                         <field reporter:label="Transaction Finish Timestamp" name="xact_finish" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp" />
2015                         <field reporter:label="Transaction Start Timestamp" name="xact_start" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp" />
2016                         <field reporter:label="Billings" name="billings" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
2017                         <field reporter:label="Payments" name="payments" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2018                         <field reporter:label="Billable Transaction link" name="billable_transaction" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
2019                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="money"/>
2020                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="money"/>
2021                 </fields>
2022                 <links>
2023                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2024                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
2025                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
2026                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
2027                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
2028                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
2029                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
2030                 </links>
2031         </class>
2032         <class id="cbs" controller="open-ils.cstore" oils_obj:fieldmapper="config::bib_source" oils_persist:tablename="config.bib_source">
2033                 <fields oils_persist:primary="id" oils_persist:sequence="config.bib_source_id_seq">
2034                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2035                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2036                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2037                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="source" reporter:datatype="id"/>
2038                         <field name="quality" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
2039                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2040                         <field name="transcendant" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
2041                 </fields>
2042                 <links/>
2043         </class>
2044         <class id="mbt" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction" oils_persist:tablename="money.billable_xact" reporter:label="Billable Transaction">
2045                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
2046                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2047                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2048                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2049                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2050                         <field reporter:label="User" name="usr" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2051                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2052                         <field reporter:label="Transaction Start Date/Time" name="xact_start" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2053                         <field reporter:label="Grocery Billing link" name="grocery" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
2054                         <field reporter:label="Circulation Billing link" name="circulation" oils_obj:array_position="8" oils_persist:virtual="true" reporter:datatype="link"/>
2055                         <field reporter:label="Billing Line Items" name="billings" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
2056                         <field reporter:label="Payment Line Items" name="payments" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2057                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="money"/>
2058                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="money"/>
2059                 </fields>
2060                 <links>
2061                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
2062                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2063                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2064                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
2065                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
2066                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
2067                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
2068                 </links>
2069         </class>
2070         <class id="actsce" controller="open-ils.cstore" oils_obj:fieldmapper="actor::stat_cat_entry" oils_persist:tablename="actor.stat_cat_entry" reporter:label="User Stat Cat Entry">
2071                 <fields oils_persist:primary="id" oils_persist:sequence="actor.stat_cat_entry_id_seq">
2072                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2073                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2074                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2075                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2076                         <field reporter:label="Entry Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2077                         <field reporter:label="Stat Cat" name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2078                         <field reporter:label="Entry Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2079                 </fields>
2080                 <links>
2081                         <link field="stat_cat" reltype="has_a" key="id" map="" class="actsc"/>
2082                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2083                 </links>
2084         </class>
2085         <class id="cubi" controller="open-ils.cstore" oils_obj:fieldmapper="container::user_bucket_item" oils_persist:tablename="container.user_bucket_item">
2086                 <fields oils_persist:primary="id" oils_persist:sequence="container.user_bucket_item_id_seq">
2087                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2088                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2089                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2090                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2091                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2092                         <field name="target_user" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2093                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
2094                 </fields>
2095                 <links>
2096                         <link field="target_user" reltype="has_a" key="id" map="" class="au"/>
2097                         <link field="bucket" reltype="has_a" key="id" map="" class="cub"/>
2098                 </links>
2099         </class>
2100         <class id="mus" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_summary" oils_persist:tablename="money.usr_summary">
2101                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2102                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2103                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2104                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2105                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2106                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2107                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2108                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2109                 </fields>
2110                 <links>
2111                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2112                 </links>
2113         </class>
2114         <class id="clfm" controller="open-ils.cstore" oils_obj:fieldmapper="config::lit_form_map" oils_persist:tablename="config.lit_form_map" reporter:label="Literary Form">
2115                 <fields oils_persist:primary="code" oils_persist:sequence="">
2116                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2117                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2118                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2119                         <field reporter:label="LitF Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="text"/>
2120                         <field reporter:label="LitF Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2121                         <field reporter:label="LitF Name" name="value" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2122                 </fields>
2123                 <links/>
2124         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2125             <actions>
2126                 <create permission="CREATE_LIT_FORM" global_required="true"/>
2127                 <retrieve/>
2128                 <update permission="UPDATE_LIT_FORM" global_required="true"/>
2129                 <delete permission="DELETE_LIT_FORM" global_required="true"/>
2130             </actions>
2131         </permacrud>
2132         </class>
2133         <class id="mwp" controller="open-ils.cstore" oils_obj:fieldmapper="money::work_payment" oils_persist:tablename="money.work_payment" reporter:label="Work Payment">
2134                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2135                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2136                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2137                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2138                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2139                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2140                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2141                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2142                         <field reporter:label="Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
2143                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2144                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2145                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2146                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
2147                 </fields>
2148                 <links>
2149                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2150                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2151                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2152                 </links>
2153         </class>
2154         <class id="mgp" controller="open-ils.cstore" oils_obj:fieldmapper="money::goods_payment" oils_persist:tablename="money.goods_payment" reporter:label="Goods Payment">
2155                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2156                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2157                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2158                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2159                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2160                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2161                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2162                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2163                         <field reporter:label="Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
2164                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2165                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2166                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2167                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
2168                 </fields>
2169                 <links>
2170                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2171                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2172                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2173                 </links>
2174         </class>
2175         <class id="aoc" controller="open-ils.cstore" oils_obj:fieldmapper="action::open_circulation" oils_persist:tablename="action.open_circulation">
2176                 <fields oils_persist:primary="id" oils_persist:sequence="">
2177                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2178                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2179                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2180                         <field name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2181                         <field name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2182                         <field name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2183                         <field name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2184                         <field name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2185                         <field name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2186                         <field name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2187                         <field name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
2188                         <field name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
2189                         <field name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
2190                         <field name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
2191                         <field name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
2192                         <field name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
2193                         <field name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
2194                         <field name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
2195                         <field name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
2196                         <field name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
2197                         <field name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
2198                         <field name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
2199                         <field name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2200                         <field name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
2201                         <field name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
2202                         <field name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
2203                         <field name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
2204                         <field name="circulation" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
2205                 </fields>
2206                 <links>
2207                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2208                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
2209                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
2210                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
2211                 </links>
2212         </class>
2213         <class id="msfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::subject_field_entry" oils_persist:tablename="metabib.subject_field_entry">
2214                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.subject_field_entry_id_seq">
2215                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2216                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2217                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2218                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2219                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2220                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2221                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2222                 </fields>
2223                 <links>
2224                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
2225                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2226                 </links>
2227         </class>
2228         <class id="crrf" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::recuring_fine" oils_persist:tablename="config.rule_recuring_fine">
2229                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_recuring_fine_id_seq">
2230                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2231                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2232                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2233                         <field name="high" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2234                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2235                         <field name="low" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2236                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2237                         <field name="normal" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money" />
2238                         <field name="recurance_interval" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
2239                 </fields>
2240                 <links/>
2241         </class>
2242         <class id="mckp" controller="open-ils.cstore" oils_obj:fieldmapper="money::check_payment" oils_persist:tablename="money.check_payment" reporter:label="Check Payment">
2243                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2244                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2245                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2246                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2247                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2248                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2249                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2250                         <field reporter:label="Workstation link" name="cash_drawer" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2251                         <field reporter:label="Check Number" name="check_number" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int" />
2252                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="id" />
2253                         <field reporter:label="Note" name="note" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
2254                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2255                         <field reporter:label="Transaction link" name="xact" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
2256                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
2257                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="text"/>
2258                 </fields>
2259                 <links>
2260                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2261                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2262                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
2263                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2264                 </links>
2265         </class>
2266         <class id="acp" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy" oils_persist:tablename="asset.copy" reporter:core="true" reporter:label="Item">
2267                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_id_seq">
2268                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2269                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2270                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2271                         <field reporter:label="Statistical Catagory Entries" name="stat_cat_entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2272                         <field reporter:label="Age Hold Protection" name="age_protect" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2273                         <field reporter:label="Alert Message" name="alert_message" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2274                         <field reporter:label="Barcode" name="barcode" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2275                         <field reporter:label="Call Number/Volume" name="call_number" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2276                         <field reporter:label="Circulation Type (MARC)" name="circ_as_type" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
2277                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2278                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
2279                         <field reporter:label="Can Circulate" name="circulate" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
2280                         <field reporter:label="Copy Number on Volume" name="copy_number" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
2281                         <field reporter:label="Creation Date/Time" name="create_date" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2282                         <field reporter:label="Creating User" name="creator" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="link"/>
2283                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="bool"/>
2284                         <field reporter:label="Is Deposit Required" name="deposit" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
2285                         <field reporter:label="Deposit Amount" name="deposit_amount" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="money" />
2286                         <field reporter:label="Precat Dummy Author" name="dummy_author" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
2287                         <field reporter:label="Precat Dummy Title" name="dummy_title" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="text"/>
2288                         <field reporter:label="Last Edit Date/Time" name="edit_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2289                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="link"/>
2290                         <field reporter:label="Fine Level" name="fine_level" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="int"/>
2291                         <field reporter:label="Is Holdable" name="holdable" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="bool" />
2292                         <field reporter:label="Copy ID" name="id" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="id"/>
2293                         <field reporter:label="Loan Duration" name="loan_duration" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="int"/>
2294                         <field reporter:label="Shelving Location" name="location" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="link"/>
2295                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="bool" />
2296                         <field reporter:label="Price" name="price" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="money" />
2297                         <field reporter:label="Is Reference" name="ref" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="bool"/>
2298                         <field reporter:label="Copy Status" name="status" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="link"/>
2299                         <field reporter:label="Copy Notes" name="notes" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="link"/>
2300                         <field reporter:label="Stat-Cat entry maps" name="stat_cat_entry_copy_maps" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="link"/>
2301                         <field reporter:label="Circulations" name="circulations" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="link"/>
2302                         <field reporter:label="Holds" name="holds" oils_obj:array_position="34" oils_persist:virtual="true" reporter:datatype="link"/>
2303                 </fields>
2304                 <links>
2305                         <link field="age_protect" reltype="has_a" key="id" map="" class="crahp"/>
2306                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
2307                         <link field="location" reltype="has_a" key="id" map="" class="acpl"/>
2308                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2309                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2310                         <link field="status" reltype="has_a" key="id" map="" class="ccs"/>
2311                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
2312                         <link field="holds" reltype="has_many" key="target_copy" map="hold" class="ahcm"/>
2313                         <link field="stat_cat_entry_copy_maps" reltype="has_many" key="owning_copy" map="" class="ascecm"/>
2314                         <link field="notes" reltype="has_many" key="owning_copy" map="" class="acpn"/>
2315                         <link field="stat_cat_entries" reltype="has_many" key="owning_copy" map="stat_cat_entry" class="ascecm"/>
2316                         <link field="circulations" reltype="has_many" key="target_copy" map="" class="circ"/>
2317                 </links>
2318         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2319             <actions>
2320                 <create permission="CREATE_COPY">
2321                     <context link="call_number" field="owning_lib"/>
2322                 </create>
2323                 <retrieve/>
2324                 <update permission="UPDATE_COPY">
2325                     <context link="call_number" field="owning_lib"/>
2326                 </update>
2327                 <delete permission="DELETE_COPY">
2328                     <context link="call_number" field="owning_lib"/>
2329                 </delete>
2330             </actions>
2331         </permacrud>
2332         </class>
2333         <class id="crahp" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::age_hold_protect" oils_persist:tablename="config.rule_age_hold_protect" reporter:label="Age Hold Protection Rule">
2334                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_age_hold_protect_id_seq">
2335                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2336                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2337                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2338                         <field reporter:label="Item Age" name="age" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
2339                         <field reporter:label="Rule ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2340                         <field reporter:label="Rule Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2341                         <field reporter:label="Allowed Proximity" name="prox" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2342                 </fields>
2343                 <links/>
2344         </class>
2345         <class id="crmf" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::max_fine" oils_persist:tablename="config.rule_max_fine" reporter:label="Max Fine Rule">
2346                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_max_fine_id_seq">
2347                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2348                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2349                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2350                         <field reporter:label="Max Fine Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2351                         <field reporter:label="Rule ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2352                         <field reporter:label="Rule Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2353                 </fields>
2354                 <links/>
2355         </class>
2356         <class id="pgt" controller="open-ils.cstore" oils_obj:fieldmapper="permission::grp_tree" oils_persist:tablename="permission.grp_tree" reporter:label="Permission Group">
2357                 <fields oils_persist:primary="id" oils_persist:sequence="permission.grp_tree_id_seq">
2358                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2359                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2360                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2361                         <field reporter:label="Child Groups" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2362                         <field reporter:label="Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2363                         <field reporter:label="Group ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2364                         <field reporter:label="Group Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2365                         <field reporter:label="Parent Group" name="parent" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2366                         <field reporter:label="User Expiration Interval" name="perm_interval" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
2367                         <field reporter:label="Required Permission" name="application_perm" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
2368                         <field reporter:label="Is User Group" name="usergroup" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool"/>
2369                 </fields>
2370                 <links>
2371                         <link field="parent" reltype="has_a" key="id" map="" class="pgt"/>
2372                         <link field="children" reltype="has_many" key="parent" map="" class="pgt"/>
2373                 </links>
2374         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2375             <actions>
2376                 <create permission="CREATE_PERM" global_required="true"/>
2377                 <retrieve permission="CREATE_PERM|UPDATE_PERM|DELETE_PERM" global_required="true"/>
2378                 <update permission="UPDATE_PERM" global_required="true"/>
2379                 <delete permission="DELETE_PERM" global_required="true"/>
2380             </actions>
2381         </permacrud>
2382         </class>
2383         <class id="asva" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_answer" oils_persist:tablename="action.survey_answer" reporter:label="Survey Answer">
2384                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_answer_id_seq">
2385                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2386                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2387                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2388                         <field reporter:label="Responses using this Answer" name="responses" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2389                         <field reporter:label="Answer Text" name="answer" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2390                         <field reporter:label="Answer ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2391                         <field reporter:label="Question" name="question" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2392                 </fields>
2393                 <links>
2394                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
2395                         <link field="responses" reltype="has_many" key="answer" map="" class="asvr"/>
2396                 </links>
2397         </class>
2398         <class id="ancc" controller="open-ils.cstore" oils_obj:fieldmapper="action::non_cataloged_circulation" oils_persist:tablename="action.non_cataloged_circulation" reporter:core="true" reporter:label="Non-cataloged Circulation">
2399                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cataloged_circulation_id_seq">
2400                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2401                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2402                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2403                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2404                         <field reporter:label="Circulation Date/Time" name="circ_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2405                         <field reporter:label="Non-cat Circulation ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2406                         <field reporter:label="Non-cat Item Type" name="item_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2407                         <field reporter:label="Patron" name="patron" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2408                         <field reporter:label="Circulating Staff" name="staff" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
2409                 </fields>
2410                 <links>
2411                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
2412                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
2413                         <link field="patron" reltype="has_a" key="id" map="" class="au"/>
2414                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
2415                 </links>
2416         </class>
2417         <class id="moucs" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_user_circulation_summary" oils_persist:tablename="money.open_usr_circulation_summary">
2418                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2419                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2420                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2421                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2422                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2423                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2424                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2425                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2426                 </fields>
2427                 <links>
2428                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2429                 </links>
2430         </class>
2431         <class id="aufh" controller="open-ils.cstore" oils_obj:fieldmapper="action::unfulfilled_hold_list" oils_persist:tablename="action.unfulfilled_hold_list" reporter:label="Unfulfilled Hold Targets">
2432                 <fields oils_persist:primary="id" oils_persist:sequence="action.unfulfilled_hold_list_id_seq">
2433                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2434                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2435                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2436                         <field reporter:label="Non-fulfilling Library" name="circ_lib" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2437                         <field reporter:label="Non-fulfilling Copy" name="current_copy" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2438                         <field reporter:label="Retargeting Date/Time" name="fail_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2439                         <field reporter:label="Hold" name="hold" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2440                         <field reporter:label="Record ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
2441                 </fields>