f9b824b0642f9acec21e419b130c2e549e459a65
[working/Evergreen.git] / Open-ILS / examples / fm_IDL.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!--
3
4 Copyright (C) 2006-2008 Georgia Public Library Service
5 Copyright (C) 2008 Equinox Software, Inc
6 Author: Mike Rylander <miker@esilibrary.com>
7
8 This program is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public License
10 as published by the Free Software Foundation; either version 2
11 of the License, or (at your option) any later version.
12
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
21
22 -->
23
24 <IDL xmlns="http://opensrf.org/spec/IDL/base/v1" xmlns:idl="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">
25
26         <!-- Virtual classes -->
27         <class id="mups" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_payment_summary" oils_persist:virtual="true" reporter:label="User Payment Summary">
28                 <fields>
29                         <field name="usr" oils_persist:virtual="true" />
30                         <field name="forgive_payment" oils_persist:virtual="true" />
31                         <field name="work_payment" oils_persist:virtual="true" />
32                         <field name="credit_payment" oils_persist:virtual="true" />
33                         <field name="goods_payment" oils_persist:virtual="true" />
34                 </fields>
35                 <links>
36                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
37                 </links>
38         </class>
39
40         <class id="mwps" controller="open-ils.cstore" oils_obj:fieldmapper="money::workstation_payment_summary" oils_persist:virtual="true" reporter:label="Workstation Payment Summary">
41                 <fields>
42                         <field name="workstation" oils_persist:virtual="true" />
43                         <field name="cash_payment" oils_persist:virtual="true" />
44                         <field name="check_payment" oils_persist:virtual="true" />
45                         <field name="credit_card_payment" oils_persist:virtual="true" />
46                 </fields>
47                 <links>
48                         <link field="workstation" reltype="has_a" key="id" map="" class="aws"/>
49                 </links>
50         </class>
51
52         <class id="brn" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_node" oils_persist:virtual="true" reporter:label="Record Node">
53                 <fields>
54                         <field name="id" oils_persist:virtual="true" />
55                         <field name="children" oils_persist:virtual="true" />
56                         <field name="owner_doc" oils_persist:virtual="true" />
57                         <field name="intra_doc_id" oils_persist:virtual="true" />
58                         <field name="parent_node" oils_persist:virtual="true" />
59                         <field name="node_type" oils_persist:virtual="true" />
60                         <field name="namespace_uri" oils_persist:virtual="true" />
61                         <field name="name" oils_persist:virtual="true" />
62                         <field name="value" oils_persist:virtual="true" />
63                 </fields>
64         </class>
65
66         <class id="mvr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::virtual_record" oils_persist:virtual="true" reporter:label="Virtual Record">
67                 <fields>
68                         <field name="title" oils_persist:virtual="true" />
69                         <field name="author" oils_persist:virtual="true" />
70                         <field name="doc_id" oils_persist:virtual="true" />
71                         <field name="doc_type" oils_persist:virtual="true" />
72                         <field name="pubdate" oils_persist:virtual="true" />
73                         <field name="isbn" oils_persist:virtual="true" />
74                         <field name="publisher" oils_persist:virtual="true" />
75                         <field name="tcn" oils_persist:virtual="true" />
76                         <field name="subject" oils_persist:virtual="true" />
77                         <field name="types_of_resource" oils_persist:virtual="true" />
78                         <field name="call_numbers" oils_persist:virtual="true" />
79                         <field name="edition" oils_persist:virtual="true" />
80                         <field name="online_loc" oils_persist:virtual="true" />
81                         <field name="synopsis" oils_persist:virtual="true" />
82                         <field name="physical_description" oils_persist:virtual="true" />
83                         <field name="toc" oils_persist:virtual="true" />
84                         <field name="copy_count" oils_persist:virtual="true" />
85                         <field name="series" oils_persist:virtual="true" />
86                         <field name="serials" oils_persist:virtual="true" />
87                         <field name="foreign_copy_maps" oils_persist:virtual="true" />
88                 </fields>
89         </class>
90
91         <class id="ex" controller="open-ils.cstore" oils_obj:fieldmapper="ex" oils_persist:virtual="true">
92                 <fields>
93                         <field name="err_msg" oils_persist:virtual="true" />
94                         <field name="type" oils_persist:virtual="true" />
95                 </fields>
96         </class>
97
98         <class id="perm_ex" controller="open-ils.cstore" oils_obj:fieldmapper="perm_ex" oils_persist:virtual="true">
99                 <fields>
100                         <field name="err_msg" oils_persist:virtual="true" />
101                         <field name="type" oils_persist:virtual="true" />
102                 </fields>
103         </class>
104
105         <class id="amtr" controller="open-ils.cstore" oils_obj:fieldmapper="action::matrix_test_result" oils_persist:virtual="true" reporter:label="Matrix Test Result">
106                 <fields oils_persist:primary="matchpoint">
107                         <field reporter:label="Matchpoint ID" name="matchpoint" reporter:datatype="id"/>
108                         <field reporter:label="Success" name="success" reporter:datatype="bool"/>
109                         <field reporter:label="Failure Part" name="fail_part" reporter:datatype="text"/>
110                 </fields>
111                 <links>
112                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
113                 </links>
114         </class>
115
116         <class id="accs" controller="open-ils.cstore" oils_obj:fieldmapper="action::circ_chain_summary" oils_persist:virtual="true" reporter:label="Circulation Chain Summary">
117         <!-- when the time is right, turn me into a view.  -->
118                 <fields>
119             <field reporter:label="Total Circs" name="num_circs" datatype="int"/>
120             <field reporter:label="Start Time" name="start_time" datatype="timestamp"/>
121             <field reporter:label="Checkout Workstation" name="checkout_workstation" datatype="text"/>
122             <field reporter:label="Last Renewal Time" name="last_renewal_time" datatype="timestamp"/>
123             <field reporter:label="Last Stop Fines" name="last_stop_fines" datatype="text"/>
124             <field reporter:label="Last Stop Fines Time" name="last_stop_fines_time" datatype="timestamp"/>
125             <field reporter:label="Last Renewal Workstation" name="last_renewal_workstation" datatype="text"/>
126             <field reporter:label="Last Checkin Workstation" name="last_checkin_workstation" datatype="text"/>
127             <field reporter:label="Last Checkin Time" name="last_checkin_time" datatype="timestamp"/>
128             <field reporter:label="Last Checkin Scan Time" name="last_checkin_scan_time" datatype="timestamp"/>
129                 </fields>
130         </class>
131
132         <class id="rhr" oils_obj:fieldmapper="resolver::holdings_record" oils_persist:virtual="true">
133                 <fields>
134                         <field name="public_name" oils_persist:virtual="true" />
135                         <field name="target_url" oils_persist:virtual="true" />
136                         <field name="target_coverage" oils_persist:virtual="true" />
137                         <field name="target_embargo" oils_persist:virtual="true" />
138                 </fields>
139         </class>
140
141         <!-- Actually in the DB -->
142         <class id="vmp" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::merge_profile" oils_persist:tablename="vandelay.merge_profile" reporter:label="Bib Import Merge Profile">
143                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.merge_profile_id_seq">
144                         <field reporter:label="Field ID" name="id" reporter:selector="name" reporter:datatype="id"/>
145                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
146                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
147                         <field reporter:label="Add Specification" name="add_spec" reporter:datatype="text"/>
148                         <field reporter:label="Replace Specification" name="replace_spec" reporter:datatype="text"/>
149                         <field reporter:label="Remove Specification" name="strip_spec" reporter:datatype="text"/>
150                         <field reporter:label="Preserve Specification" name="preserve_spec" reporter:datatype="text"/>
151                 </fields>
152                 <links>
153                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
154                 </links>
155                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
156                         <actions>
157                                 <create permission="ADMIN_MERGE_PROFILE CREATE_MERGE_PROFILE" context_field="owner"/>
158                                 <retrieve permission="ADMIN_MERGE_PROFILE CREATE_MERGE_PROFILE UPDATE_MERGE_PROFILE DELETE_MERGE_PROFILE VIEW_MERGE_PROFILE" context_field="owner"/>
159                                 <update permission="ADMIN_MERGE_PROFILE UPDATE_MERGE_PROFILE" context_field="owner"/>
160                                 <delete permission="ADMIN_MERGE_PROFILE DELETE_MERGE_PROFILE" context_field="owner"/>
161                         </actions>
162                 </permacrud>
163         </class>
164
165         <class id="vibtf" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_bib_trash_fields" oils_persist:tablename="vandelay.import_bib_trash_fields" reporter:label="Import/Overlay Fields for Removal">
166                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_bib_trash_fields_id_seq">
167                         <field reporter:label="Field ID" name="id" reporter:datatype="id"/>
168                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
169                         <field reporter:label="Field" name="field" reporter:datatype="text"/>
170                 </fields>
171                 <links>
172                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
173                 </links>
174                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
175                         <actions>
176                                 <create permission="CREATE_IMPORT_TRASH_FIELD" context_field="owner"/>
177                                 <retrieve permission="CREATE_IMPORT_TRASH_FIELD UPDATE_IMPORT_TRASH_FIELD DELETE_IMPORT_TRASH_FIELD" context_field="owner"/>
178                                 <update permission="UPDATE_IMPORT_TRASH_FIELD" context_field="owner"/>
179                                 <delete permission="DELETE_IMPORT_TRASH_FIELD" context_field="owner"/>
180                         </actions>
181                 </permacrud>
182         </class>
183
184         <class id="vii" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_item" oils_persist:tablename="vandelay.import_item" reporter:label="Import Item">
185                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_item_id_seq">
186                         <field reporter:label="Import Item ID" name="id" reporter:datatype="id"/>
187                         <field reporter:label="Import Record" name="record" reporter:datatype="link"/>
188                         <field reporter:label="Attribute Definition" name="definition" reporter:datatype="link"/>
189                         <field reporter:label="Owning Library" name="owning_lib" reporter:datatype="int"/>
190                         <field reporter:label="Circulating Library" name="circ_lib" reporter:datatype="int"/>
191                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
192                         <field reporter:label="Copy Number" name="copy_number" reporter:datatype="int"/>
193                         <field reporter:label="Status" name="status" reporter:datatype="int"/>
194                         <field reporter:label="Shelving Location" name="location" reporter:datatype="int"/>
195                         <field reporter:label="Circulate" name="circulate" reporter:datatype="bool"/>
196                         <field reporter:label="Deposit" name="deposit" reporter:datatype="bool"/>
197                         <field reporter:label="Deposit Amount" name="deposit_amount" reporter:datatype="money"/>
198                         <field reporter:label="Reference" name="ref" reporter:datatype="bool"/>
199                         <field reporter:label="Holdable" name="holdable" reporter:datatype="bool"/>
200                         <field reporter:label="Price" name="price" reporter:datatype="money"/>
201                         <field reporter:label="Barcode" name="barcode" reporter:datatype="text"/>
202                         <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="text"/>
203                         <field reporter:label="Circulate As MARC Type" name="circ_as_type" reporter:datatype="text"/>
204                         <field reporter:label="Alert Message" name="alert_message" reporter:datatype="text"/>
205                         <field reporter:label="Public Note" name="pub_note" reporter:datatype="text"/>
206                         <field reporter:label="Private Note" name="priv_note" reporter:datatype="text"/>
207                         <field reporter:label="OPAC Visible" name="opac_visible" reporter:datatype="bool"/>
208                 </fields>
209                 <links>
210                         <link field="record" reltype="has_a" key="id" map="" class="vqbr"/>
211                         <link field="definition" reltype="has_a" key="id" map="" class="viiad"/>
212                 </links>
213                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
214                         <actions>
215                                 <create permission="CREATE_IMPORT_ITEM">
216                     <context link="definition" field="owner"/>
217                                 </create>
218                                 <retrieve permission="CREATE_IMPORT_ITEM UPDATE_IMPORT_ITEM DELETE_IMPORT_ITEM">
219                     <context link="definition" field="owner"/>
220                                 </retrieve>
221                                 <update permission="UPDATE_IMPORT_ITEM">
222                     <context link="definition" field="owner"/>
223                                 </update>
224                                 <delete permission="DELETE_IMPORT_ITEM">
225                     <context link="definition" field="owner"/>
226                                 </delete>
227                         </actions>
228                 </permacrud>
229         </class>
230
231         <class id="viiad" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_item_attr_definition" oils_persist:tablename="vandelay.import_item_attr_definition" reporter:label="Import Item Attribute Definition">
232                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_item_attr_definition_id_seq">
233                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
234                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
235                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
236                         <field reporter:label="Tag" name="tag" reporter:datatype="text"/>
237                         <field reporter:label="Keep" name="keep" reporter:datatype="bool"/>
238                         <field reporter:label="Owning Library" name="owning_lib" reporter:datatype="text"/>
239                         <field reporter:label="Circulating Library" name="circ_lib" reporter:datatype="text"/>
240                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
241                         <field reporter:label="Status" name="status" reporter:datatype="text"/>
242                         <field reporter:label="Shelving Location" name="location" reporter:datatype="text"/>
243                         <field reporter:label="Circulate" name="circulate" reporter:datatype="text"/>
244                         <field reporter:label="Deposit" name="deposit" reporter:datatype="text"/>
245                         <field reporter:label="Deposit Amount" name="deposit_amount" reporter:datatype="text"/>
246                         <field reporter:label="Reference" name="ref" reporter:datatype="text"/>
247                         <field reporter:label="Holdable" name="holdable" reporter:datatype="text"/>
248                         <field reporter:label="Price" name="price" reporter:datatype="text"/>
249                         <field reporter:label="Barcode" name="barcode" reporter:datatype="text"/>
250                         <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="text"/>
251                         <field reporter:label="Circulate As MARC Type" name="circ_as_type" reporter:datatype="text"/>
252                         <field reporter:label="Alert Message" name="alert_message" reporter:datatype="text"/>
253                         <field reporter:label="Public Note" name="pub_note" reporter:datatype="text"/>
254                         <field reporter:label="Private Note" name="priv_note" reporter:datatype="text"/>
255                         <field reporter:label="OPAC Visible" name="opac_visible" reporter:datatype="text"/>
256                         <field reporter:label="Copy Number" name="copy_number" reporter:datatype="text"/>
257                 </fields>
258                 <links>
259                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
260                 </links>
261                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
262                         <actions>
263                                 <create permission="CREATE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
264                                 <retrieve permission="CREATE_IMPORT_ITEM_ATTR_DEF UPDATE_IMPORT_ITEM_ATTR_DEF DELETE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
265                                 <update permission="UPDATE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
266                                 <delete permission="DELETE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
267                         </actions>
268                 </permacrud>
269         </class>
270
271         <class id="vbq" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::bib_queue" oils_persist:tablename="vandelay.bib_queue" reporter:label="Import/Overlay Bib Queue">
272                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
273                         <field reporter:label="Queue ID" name="id" reporter:selector="name" reporter:datatype="id"/>
274                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
275                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
276                         <field reporter:label="Complete" name="complete" reporter:datatype="bool"/>
277                         <field reporter:label="Type" name="queue_type" reporter:datatype="text"/>
278                         <field reporter:label="Item Import Attribute Definition" name="item_attr_def" reporter:datatype="link"/>
279                 </fields>
280                 <links>
281                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
282                         <link field="item_attr_def" reltype="has_a" key="id" map="" class="viiad"/>
283                 </links>
284                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
285                         <actions>
286                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
287                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
288                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
289                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
290                         </actions>
291                 </permacrud>
292         </class>
293
294         <class id="vqbr" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::queued_bib_record" oils_persist:tablename="vandelay.queued_bib_record" reporter:label="Queued Bib Record">
295                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
296                         <field reporter:label="Record ID" name="id" reporter:datatype="id"/>
297                         <field reporter:label="Create Time" name="create_time" reporter:datatype="timestamp"/>
298                         <field reporter:label="Import Time" name="import_time" reporter:datatype="timestamp"/>
299                         <field reporter:label="MARC" name="marc" reporter:datatype="text"/>
300                         <field reporter:label="Queue" name="queue" reporter:datatype="link"/>
301                         <field reporter:label="Bib Source" name="bib_source" reporter:datatype="link"/>
302                         <field reporter:label="Final Target Record" name="imported_as" reporter:datatype="link"/>
303                         <field reporter:label="Purpose" name="purpose" reporter:datatype="text"/>
304                         <field reporter:label="Attributes" name="attributes" oils_persist:virtual="true" reporter:datatype="link"/>
305                         <field reporter:label="Matches" name="matches" oils_persist:virtual="true" reporter:datatype="link"/>
306                 </fields>
307                 <links>
308                         <link field="queue" reltype="has_a" key="id" map="" class="vbq"/>
309                         <link field="bib_source" reltype="has_a" key="id" map="" class="cbs"/>
310                         <link field="imported_as" reltype="has_a" key="id" map="" class="bre"/>
311             <link field="attributes" reltype="has_many" key="record" map="" class="vqbra"/>
312             <link field="matches" reltype="has_many" key="queued_record" map="" class="vbm"/>
313                 </links>
314                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
315                         <actions>
316                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
317                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
318                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
319                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
320                         </actions>
321                 </permacrud>
322         </class>
323
324         <class id="vqbrad" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::bib_attr_definition" oils_persist:tablename="vandelay.bib_attr_definition" reporter:label="Queued Bib Record Attribute Definition">
325                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_attr_definition_id_seq">
326                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
327                         <field reporter:label="Code" name="code" reporter:datatype="text"/>
328                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
329                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
330                         <field reporter:label="Remove RegExp" name="remove" reporter:datatype="text"/>
331                         <field reporter:label="Is Identifier?" name="ident" reporter:datatype="bool"/>
332                 </fields>
333                 <links/>
334                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
335                         <actions>
336                                 <create permission="CREATE_BIB_IMPORT_FIELD_DEF" global_required="true"/>
337                 <retrieve/>
338                                 <update permission="UPDATE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
339                                 <delete permission="DELETE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
340                         </actions>
341                 </permacrud>
342         </class>
343
344         <class id="vqbra" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::queued_bib_record_attr" oils_persist:tablename="vandelay.queued_bib_record_attr" reporter:label="Queued Bib Record Attribute">
345                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_bib_record_attr_id_seq">
346                         <field reporter:label="Attribute ID" name="id" reporter:datatype="id"/>
347                         <field reporter:label="Record" name="record" reporter:datatype="link"/>
348                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
349                         <field reporter:label="Value" name="attr_value" reporter:datatype="text"/>
350                 </fields>
351                 <links>
352                         <link field="record" reltype="has_a" key="id" map="" class="vqbr"/>
353                         <link field="field" reltype="has_a" key="id" map="" class="vqbrad"/>
354                 </links>
355                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
356                         <actions>
357                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
358                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
359                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
360                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
361                         </actions>
362                 </permacrud>
363         </class>
364
365         <class id="vbm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::bib_match" oils_persist:tablename="vandelay.bib_match" reporter:label="Queued Bib Record Match">
366                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_match_id_seq">
367                         <field reporter:label="Match ID" name="id" reporter:datatype="id"/>
368                         <field reporter:label="Queued Record" name="queued_record" reporter:datatype="link"/>
369                         <field reporter:label="Matched Attribute" name="matched_attr" reporter:datatype="link"/>
370                         <field reporter:label="Evergreen Record" name="eg_record" reporter:datatype="link"/>
371                         <field reporter:label="Field Type" name="field_type" reporter:datatype="text"/>
372                 </fields>
373                 <links>
374                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
375                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
376                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
377                 </links>
378                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
379                         <actions>
380                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
381                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
382                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
383                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
384                         </actions>
385                 </permacrud>
386         </class>
387
388         <class id="vaq" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::authority_queue" oils_persist:tablename="vandelay.authority_queue" reporter:label="Import/Overlay Authority Queue">
389                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
390                         <field reporter:label="Queue ID" name="id" reporter:selector="name" reporter:datatype="id"/>
391                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
392                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
393                         <field reporter:label="Complete" name="complete" reporter:datatype="bool"/>
394                         <field reporter:label="Type" name="queue_type" reporter:datatype="text"/>
395                 </fields>
396                 <links>
397                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
398                 </links>
399                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
400                         <actions>
401                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
402                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
403                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
404                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
405                         </actions>
406                 </permacrud>
407         </class>
408
409         <class id="vqar" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::queued_authority_record" oils_persist:tablename="vandelay.queued_authority_record" reporter:label="Queued Authority Record">
410                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
411                         <field reporter:label="Record ID" name="id" reporter:datatype="id"/>
412                         <field reporter:label="Create Time" name="create_time" reporter:datatype="timestamp"/>
413                         <field reporter:label="Import Time" name="import_time" reporter:datatype="timestamp"/>
414                         <field reporter:label="MARC" name="marc" reporter:datatype="text"/>
415                         <field reporter:label="Queue" name="queue" reporter:datatype="link"/>
416                         <field reporter:label="Final Target Record" name="imported_as" reporter:datatype="link"/>
417                         <field reporter:label="Purpose" name="purpose" reporter:datatype="text"/>
418                         <field reporter:label="Attributes" name="attributes" oils_persist:virtual="true" reporter:datatype="link"/>
419                         <field reporter:label="Matches" name="matches" oils_persist:virtual="true" reporter:datatype="link"/>
420                 </fields>
421                 <links>
422                         <link field="queue" reltype="has_a" key="id" map="" class="vaq"/>
423                         <link field="imported_as" reltype="has_a" key="id" map="" class="are"/>
424             <link field="attributes" reltype="has_many" key="record" map="" class="vqara"/>
425             <link field="matches" reltype="has_many" key="queued_record" map="" class="vam"/>
426                 </links>
427                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
428                         <actions>
429                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
430                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
431                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
432                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
433                         </actions>
434                 </permacrud>
435         </class>
436
437         <class id="vqarad" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::authority_attr_definition" oils_persist:tablename="vandelay.authority_attr_definition" reporter:label="Queued Authority Record Attribute Definition">
438                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_attr_definition_id_seq">
439                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
440                         <field reporter:label="Code" name="code" reporter:datatype="text"/>
441                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
442                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
443                         <field reporter:label="Remove RegExp" name="remove" reporter:datatype="text"/>
444                         <field reporter:label="Is Identifier?" name="ident" reporter:datatype="bool"/>
445                 </fields>
446                 <links/>
447                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
448                         <actions>
449                                 <create permission="CREATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
450                 <retrieve/>
451                                 <update permission="UPDATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
452                                 <delete permission="DELETE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
453                         </actions>
454                 </permacrud>
455         </class>
456
457         <class id="vqara" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::queued_authority_record_attr" oils_persist:tablename="vandelay.queued_authority_record_attr" reporter:label="Queued Authority Record Attribute">
458                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_authority_record_attr_id_seq">
459                         <field reporter:label="Attribute ID" name="id" reporter:datatype="id"/>
460                         <field reporter:label="Record" name="record" reporter:datatype="link"/>
461                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
462                         <field reporter:label="Value" name="attr_value" reporter:datatype="text"/>
463                 </fields>
464                 <links>
465                         <link field="record" reltype="has_a" key="id" map="" class="vqar"/>
466                         <link field="field" reltype="has_a" key="id" map="" class="vqarad"/>
467                 </links>
468                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
469                         <actions>
470                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
471                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
472                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
473                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
474                         </actions>
475                 </permacrud>
476         </class>
477
478         <class id="vam" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::authority_match" oils_persist:tablename="vandelay.authority_match" reporter:label="Queued Authority Record Match">
479                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_match_id_seq">
480                         <field reporter:label="Match ID" name="id" reporter:datatype="id"/>
481                         <field reporter:label="Queued Record" name="queued_record" reporter:datatype="link"/>
482                         <field reporter:label="Matched Attribute" name="matched_attr" reporter:datatype="link"/>
483                         <field reporter:label="Evergreen Record" name="eg_record" reporter:datatype="link"/>
484                 </fields>
485                 <links>
486                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
487                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
488                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
489                 </links>
490                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
491                         <actions>
492                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
493                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
494                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
495                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
496                         </actions>
497                 </permacrud>
498         </class>
499
500
501         <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">
502                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_org_unit_opt_in_id_seq">
503                         <field reporter:label="Opt-in ID" name="id" reporter:datatype="id"/>
504                         <field reporter:label="Workstation" name="opt_in_ws" reporter:datatype="link"/>
505                         <field reporter:label="Staff Member" name="staff" reporter:datatype="link"/>
506                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
507                         <field reporter:label="Allowed Org Unit" name="org_unit" reporter:datatype="link"/>
508                         <field reporter:label="Opt-in Date/Time" name="opt_in_ts" reporter:datatype="timestamp"/>
509                 </fields>
510                 <links>
511                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
512                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
513                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
514                         <link field="opt_in_ws" reltype="has_a" key="id" map="" class="aws"/>
515                 </links>
516         </class>
517
518     <class id="cgf" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::global_flag" oils_persist:tablename="config.global_flag" reporter:label="Global Flags and Settings" oils_persist:field_safe="true">
519         <fields oils_persist:primary="name">
520             <field reporter:label="Name" name="name" reporter:datatype="text"/>
521             <field reporter:label="Label" name="label"  reporter:datatype="text" oils_persist:i18n="true"/>
522             <field reporter:label="Value" name="value"  reporter:datatype="text"/>
523             <field reporter:label="Enabled" name="enabled"  reporter:datatype="bool"/>
524         </fields>
525         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
526             <actions>
527                 <create   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
528                 <retrieve permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
529                 <update   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
530                 <delete   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
531             </actions>
532         </permacrud>
533     </class>
534
535     <class id="cin" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::index_normalizer" oils_persist:tablename="config.index_normalizer" reporter:label="Indexing Normalizer" oils_persist:field_safe="true">
536         <fields oils_persist:primary="id">
537             <field reporter:label="ID" name="id" reporter:datatype="id"/>
538             <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
539             <field reporter:label="Description" name="description"  reporter:datatype="text" oils_persist:i18n="true"/>
540             <field reporter:label="Function" name="func"  reporter:datatype="text"/>
541             <field reporter:label="Required Parameter Count" name="param_count"  reporter:datatype="int"/>
542         </fields>
543         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
544             <actions>
545                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
546                 <retrieve/>
547                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
548                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
549             </actions>
550         </permacrud>
551     </class>
552
553         <class id="cmfinm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::metabib_field_index_norm_map" oils_persist:tablename="config.metabib_field_index_norm_map" reporter:label="Metabib Field to Indexing Normalizer Map" oils_persist:field_safe="true">
554                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_index_norm_map_id_seq">
555                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
556                         <field reporter:label="Metabib Field" name="field" reporter:datatype="link"/>
557                         <field reporter:label="Normalizer" name="norm" reporter:datatype="link"/>
558                         <field reporter:label="Parameters (JSON Array)" name="params" reporter:datatype="text"/>
559                         <field reporter:label="Order of Application" name="pos" reporter:datatype="int"/>
560                 </fields>
561                 <links>
562                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
563                         <link field="norm" reltype="has_a" key="id" map="" class="cin"/>
564                 </links>
565         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
566             <actions>
567                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
568                 <retrieve/>
569                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
570                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
571             </actions>
572         </permacrud>
573         </class>
574
575         <class id="crad" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::record_attr_definition" oils_persist:tablename="config.record_attr_definition" reporter:label="SVF Record Attribute Defintion" oils_persist:field_safe="true">
576                 <fields oils_persist:primary="name">
577                         <field reporter:label="Name" name="name" reporter:datatype="id" reporter:selector="label"  oils_obj:required="true"/>
578                         <field reporter:label="Label" name="label" reporter:datatype="text"  oils_obj:required="true"/>
579                         <field reporter:label="Description" name="description" reporter:datatype="text" />
580                         <field reporter:label="Filter?" name="filter" reporter:datatype="bool"/>
581                         <field reporter:label="Sorter?" name="sorter" reporter:datatype="bool"/>
582                         <field reporter:label="MARC Tag" name="tag" reporter:datatype="text"/>
583                         <field reporter:label="MARC Subfields" name="sf_list" reporter:datatype="text"/>
584                         <field reporter:label="Joiner" name="joiner" reporter:datatype="text"/>
585                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
586                         <field reporter:label="Format" name="format" reporter:datatype="link"/>
587                         <field reporter:label="Starting Position" name="start_pos" reporter:datatype="int"/>
588                         <field reporter:label="String Length" name="string_len" reporter:datatype="int"/>
589                         <field reporter:label="Fixed Field" name="fixed_field" reporter:datatype="text"/>
590                         <field reporter:label="Physical Characteristic" name="phys_char_sf" reporter:datatype="text"/>
591                         <field reporter:label="Normalizers" name="normalizers" reporter:datatype="link" oils_persist:virtual="true"/>
592                 </fields>
593                 <links>
594                         <link field="format" reltype="has_a" key="name" map="" class="cxt"/>
595                         <link field="normalizers" reltype="has_many" key="name" map="" class="crainm"/>
596                 </links>
597         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
598             <actions>
599                 <create permission="ADMIN_SVF" global_required="true"/>
600                 <retrieve/>
601                 <update permission="ADMIN_SVF" global_required="true"/>
602                 <delete permission="ADMIN_SVF" global_required="true"/>
603             </actions>
604         </permacrud>
605         </class>
606
607         <class id="mra" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="metabib::record_attr" oils_persist:tablename="metabib.record_attr" reporter:label="SVF Record Attribute" oils_persist:field_safe="true">
608                 <fields oils_persist:primary="id">
609                         <field reporter:label="Record ID" name="id" reporter:datatype="id" oils_obj:required="true"/>
610                         <field reporter:label="Attributes" name="attrs" reporter:datatype="text"  oils_obj:required="true"/>
611                 </fields>
612                 <links>
613                         <link field="id" reltype="has_a" key="id" map="" class="bre"/>
614                 </links>
615         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
616             <actions>
617                 <retrieve/>
618             </actions>
619         </permacrud>
620         </class>
621
622         <class id="crainm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::record_attr_index_norm_map" oils_persist:tablename="config.record_attr_index_norm_map" reporter:label="SVF Record Attribute to Indexing Normalizer Map" oils_persist:field_safe="true">
623                 <fields oils_persist:primary="id" oils_persist:sequence="config.record_attr_index_norm_map_id_seq">
624                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
625                         <field reporter:label="SVF Attribute" name="attr" reporter:datatype="link"/>
626                         <field reporter:label="Normalizer" name="norm" reporter:datatype="link"/>
627                         <field reporter:label="Parameters (JSON Array)" name="params" reporter:datatype="text"/>
628                         <field reporter:label="Order of Application" name="pos" reporter:datatype="int"/>
629                 </fields>
630                 <links>
631                         <link field="attr" reltype="has_a" key="name" map="" class="crad"/>
632                         <link field="norm" reltype="has_a" key="id" map="" class="cin"/>
633                 </links>
634         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
635             <actions>
636                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
637                 <retrieve/>
638                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
639                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
640             </actions>
641         </permacrud>
642         </class>
643
644         <class id="ccvm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::coded_value_map" oils_persist:tablename="config.coded_value_map" reporter:label="SVF Record Attribute Coded Value Map" oils_persist:field_safe="true">
645                 <fields oils_persist:primary="id" oils_persist:sequence="config.coded_value_map_id_seq">
646                         <field reporter:label="ID" name="id" reporter:datatype="id"  oils_obj:required="true"/>
647                         <field reporter:label="SVF Attribute" name="ctype" reporter:datatype="link"  oils_obj:required="true"/>
648                         <field reporter:label="Code" name="code" reporter:datatype="text"  oils_obj:required="true"/>
649                         <field reporter:label="Value" name="value" reporter:datatype="text"  oils_obj:required="true"/>
650                         <field reporter:label="Description" name="description" reporter:datatype="text"/>
651                 </fields>
652                 <links>
653                         <link field="ctype" reltype="has_a" key="name" map="" class="crad"/>
654                 </links>
655         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
656             <actions>
657                 <create permission="ADMIN_CODED_VALUE" global_required="true"/>
658                 <retrieve/>
659                 <update permission="ADMIN_CODED_VALUE" global_required="true"/>
660                 <delete permission="ADMIN_CODED_VALUE" global_required="true"/>
661             </actions>
662         </permacrud>
663         </class>
664
665         <class id="cracct" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::remote_account" oils_persist:tablename="config.remote_account" reporter:label="Remote (3rd party) Account">
666                 <fields oils_persist:primary="id" oils_persist:sequence="config.remote_account_id_seq">
667                         <field name="id"            reporter:datatype="id"   reporter:label="ID"/>
668                         <field name="label"         reporter:datatype="text" reporter:label="Label"/>
669                         <field name="host"          reporter:datatype="text" reporter:label="Host"/>
670                         <field name="username"      reporter:datatype="text" reporter:label="Username"/>
671                         <field name="password"      reporter:datatype="text" reporter:label="Password"/>
672                         <field name="account"       reporter:datatype="text" reporter:label="Account"/>
673                         <field name="path"          reporter:datatype="text" reporter:label="Path"/>
674                         <field name="owner"         reporter:datatype="link" reporter:label="Owner"/>
675                         <field name="last_activity" reporter:datatype="timestamp" reporter:label="Last Activity"/>
676                 </fields>
677                 <links>
678                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
679                 </links>
680         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
681             <actions>
682                 <create   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
683                 <retrieve permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
684                 <update   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
685                 <delete   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
686             </actions>
687         </permacrud>
688         </class>
689
690     <class id="czs" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::z3950_source" oils_persist:tablename="config.z3950_source" reporter:label="Z39.50 Source">
691         <fields oils_persist:primary="name">
692             <field reporter:label="Z39.50 Source" name="name" reporter:datatype="id"/>
693             <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
694             <field reporter:label="Host" name="host"  reporter:datatype="text"/>
695             <field reporter:label="Port" name="port"  reporter:datatype="int"/>
696             <field reporter:label="DB" name="db"  reporter:datatype="text"/>
697             <field reporter:label="Record Format" name="record_format"  reporter:datatype="text"/>
698             <field reporter:label="Transmission Format" name="transmission_format"  reporter:datatype="text"/>
699             <field reporter:label="Auth" name="auth"  reporter:datatype="bool"/>
700             <field reporter:label="Attrs" name="attrs" oils_persist:virtual="true"  reporter:datatype="link"/>
701         </fields>
702         <links>
703             <link field="attrs" reltype="has_many" key="source" map="" class="cza"/>
704         </links>
705         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
706             <actions>
707                 <create permission="ADMIN_Z3950_SOURCE" global_required="true"/>
708                 <retrieve/>
709                 <update permission="ADMIN_Z3950_SOURCE" global_required="true"/>
710                 <delete permission="ADMIN_Z3950_SOURCE" global_required="true"/>
711             </actions>
712         </permacrud>
713     </class>
714
715     <class id="cza" controller="open-ils.cstore" oils_obj:fieldmapper="config::z3950_attr" oils_persist:tablename="config.z3950_attr" reporter:label="Z39.50 Attribute">
716         <fields oils_persist:primary="id" oils_persist:sequence="config.z3950_attr_id_seq">
717             <field reporter:label="Z39.50 Attribute ID" name="id" reporter:datatype="id"/>
718             <field reporter:label="Z39.50 Source" name="source" reporter:datatype="link"/>
719             <field reporter:label="Name" name="name" reporter:datatype="text"/>
720             <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
721             <field reporter:label="Code" name="code"  reporter:datatype="int"/>
722             <field reporter:label="Format" name="format"  reporter:datatype="int"/>
723             <field reporter:label="Truncation" name="truncation"  reporter:datatype="int"/>
724         </fields>
725         <links>
726             <link field="source" reltype="has_a" key="name" map="" class="czs"/>
727         </links>
728     </class>
729
730         <class id="ateo" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::event_output" oils_persist:tablename="action_trigger.event_output" reporter:label="Event Output">
731                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_output_id_seq">
732                         <field reporter:label="Output ID" name="id" reporter:datatype="id"/>
733                         <field reporter:label="Create Date/Time" name="create_time" reporter:datatype="timestamp"/>
734                         <field reporter:label="Data" name="data" reporter:datatype="text"/>
735                         <field reporter:label="Is Error" name="is_error" reporter:datatype="bool"/>
736                         <field reporter:label="Events" name="events" oils_persist:virtual="true"  reporter:datatype="link"/>
737                         <field reporter:label="Error Events" name="error_events" oils_persist:virtual="true"  reporter:datatype="link"/>
738                 </fields>
739                 <links>
740             <link field="events" reltype="has_many" key="template_output" map="" class="atev"/>
741             <link field="error_events" reltype="has_many" key="error_output" map="" class="atev"/>
742                 </links>
743                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
744                         <actions>
745                                 <retrieve/>
746                                 <delete permission="ADMIN_TRIGGER_TEMPLATE_OUTPUT DELETE_TRIGGER_TEMPLATE_OUTPUT" global_required="true"/>
747                         </actions>
748                 </permacrud>
749         </class>
750
751         <class id="ath" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::hook" oils_persist:tablename="action_trigger.hook" reporter:label="Trigger Hook Point">
752                 <fields oils_persist:primary="key">
753                         <field reporter:label="Hook Key" name="key" reporter:datatype="text"/>
754                         <field reporter:label="Core Type" name="core_type" reporter:datatype="text"/>
755                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
756                         <field reporter:label="Passive" name="passive"  reporter:datatype="bool"/>
757                 </fields>
758                 <links/>
759                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
760                         <actions>
761                                 <create permission="ADMIN_TRIGGER_HOOK CREATE_TRIGGER_HOOK" global_required="true"/>
762                                 <retrieve/>
763                                 <update permission="ADMIN_TRIGGER_HOOK UPDATE_TRIGGER_HOOK" global_required="true"/>
764                                 <delete permission="ADMIN_TRIGGER_HOOK DELETE_TRIGGER_HOOK" global_required="true"/>
765                         </actions>
766                 </permacrud>
767         </class>
768
769         <class id="atcol" controller="open-ils.cstore" oils_obj:fieldmapper="action_trigger::collector" oils_persist:tablename="action_trigger.collector" reporter:label="Trigger Environment Collector">
770                 <fields oils_persist:primary="module">
771                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
772                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
773                 </fields>
774                 <links/>
775         </class>
776
777         <class id="atval" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::validator" oils_persist:tablename="action_trigger.validator" reporter:label="Trigger Condition Validator">
778                 <fields oils_persist:primary="module">
779                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
780                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
781                 </fields>
782                 <links/>
783                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
784                         <actions>
785                                 <create permission="ADMIN_TRIGGER_VALIDATOR CREATE_TRIGGER_VALIDATOR" global_required="true"/>
786                                 <retrieve/>
787                                 <update permission="ADMIN_TRIGGER_VALIDATOR UPDATE_TRIGGER_VALIDATOR" global_required="true"/>
788                                 <delete permission="ADMIN_TRIGGER_VALIDATOR DELETE_TRIGGER_VALIDATOR" global_required="true"/>
789                         </actions>
790                 </permacrud>
791         </class>
792
793         <class id="atreact" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::reactor" oils_persist:tablename="action_trigger.reactor" reporter:label="Trigger Event Reactor">
794                 <fields oils_persist:primary="module">
795                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
796                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
797                 </fields>
798                 <links/>
799                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
800                         <actions>
801                                 <create permission="ADMIN_TRIGGER_REACTOR CREATE_TRIGGER_REACTOR" global_required="true"/>
802                                 <retrieve/>
803                                 <update permission="ADMIN_TRIGGER_REACTOR UPDATE_TRIGGER_REACTOR" global_required="true"/>
804                                 <delete permission="ADMIN_TRIGGER_REACTOR DELETE_TRIGGER_REACTOR" global_required="true"/>
805                         </actions>
806                 </permacrud>
807         </class>
808
809         <class id="atclean" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::cleanup" oils_persist:tablename="action_trigger.cleanup" reporter:label="Trigger Event Cleanup">
810                 <fields oils_persist:primary="module">
811                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
812                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
813                 </fields>
814                 <links/>
815                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
816                         <actions>
817                                 <create permission="ADMIN_TRIGGER_CLEANUP CREATE_TRIGGER_CLEANUP" global_required="true"/>
818                                 <retrieve/>
819                                 <update permission="ADMIN_TRIGGER_CLEANUP UPDATE_TRIGGER_CLEANUP" global_required="true"/>
820                                 <delete permission="ADMIN_TRIGGER_CLEANUP DELETE_TRIGGER_CLEANUP" global_required="true"/>
821                         </actions>
822                 </permacrud>
823         </class>
824
825         <class id="atenv" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::environment" oils_persist:tablename="action_trigger.environment" reporter:label="Trigger Event Environment Entry">
826                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.environment_id_seq">
827                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
828                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
829                         <field reporter:label="Field Path" name="path" reporter:datatype="text"/>
830                         <field reporter:label="Collector" name="collector" reporter:datatype="link"/>
831                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
832                 </fields>
833                 <links>
834                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
835                         <link field="collector" reltype="has_a" key="id" map="" class="atcol"/>
836                 </links>
837                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
838                         <actions>
839                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF">
840                     <context link="event_def" field="owner"/>
841                 </create>
842                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF">
843                     <context link="event_def" field="owner"/>
844                 </retrieve>
845                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF">
846                     <context link="event_def" field="owner"/>
847                 </update>
848                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF">
849                     <context link="event_def" field="owner"/>
850                 </delete>
851                         </actions>
852                 </permacrud>
853         </class>
854
855         <class id="atevdef" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::event_definition" oils_persist:tablename="action_trigger.event_definition" reporter:label="Trigger Event Definition">
856                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_definition_id_seq">
857                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
858                         <field reporter:label="Enabled" name="active" reporter:datatype="bool"/>
859                         <field reporter:label="Owning Library" name="owner"  reporter:datatype="org_unit"/>
860                         <field reporter:label="Hook" name="hook"  reporter:datatype="link"/>
861                         <field reporter:label="Validator" name="validator"  reporter:datatype="link"/>
862                         <field reporter:label="Reactor" name="reactor"  reporter:datatype="link"/>
863                         <field reporter:label="Success Cleanup" name="cleanup_success"  reporter:datatype="link"/>
864                         <field reporter:label="Failure Cleanup" name="cleanup_failure"  reporter:datatype="link"/>
865                         <field reporter:label="Processing Delay" name="delay"  reporter:datatype="interval"/>
866                         <field reporter:label="Max Event Validity Delay" name="max_delay"  reporter:datatype="interval"/>
867                         <field reporter:label="Processing Delay Context Field" name="delay_field"  reporter:datatype="text"/>
868                         <field reporter:label="Processing Group Context Field" name="group_field"  reporter:datatype="text"/>
869                         <field reporter:label="Template" name="template"  reporter:datatype="text"/>
870                         <field reporter:label="Name" name="name"  reporter:datatype="text"/>
871                         <field reporter:label="Granularity" name="granularity"  reporter:datatype="text"/>
872                         <field reporter:label="Opt-In User Field" name="usr_field"  reporter:datatype="text"/>
873                         <field reporter:label="Opt-In Setting Type" name="opt_in_setting"  reporter:datatype="link"/>
874                         <field reporter:label="Environment Entries" name="env" oils_persist:virtual="true"  reporter:datatype="link"/>
875                         <field reporter:label="Parameters" name="params" oils_persist:virtual="true"  reporter:datatype="link"/>
876                 </fields>
877                 <links>
878                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
879                         <link field="hook" reltype="has_a" key="key" map="" class="ath"/>
880                         <link field="validator" reltype="has_a" key="module" map="" class="atval"/>
881                         <link field="reactor" reltype="has_a" key="module" map="" class="atreact"/>
882                         <link field="cleanup_success" reltype="has_a" key="module" map="" class="atclean"/>
883                         <link field="cleanup_failure" reltype="has_a" key="module" map="" class="atclean"/>
884                         <link field="env" reltype="has_many" key="event_def" map="" class="atenv"/>
885                         <link field="params" reltype="has_many" key="event_def" map="" class="atevparam"/>
886                         <link field="opt_in_setting" reltype="has_a" key="name" map="" class="cust"/>
887                 </links>
888                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
889                         <actions>
890                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF" context_field="owner"/>
891                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF" context_field="owner"/>
892                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF" context_field="owner"/>
893                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF" context_field="owner"/>
894                         </actions>
895                 </permacrud>
896         </class>
897
898         <class id="atev" controller="open-ils.cstore" oils_obj:fieldmapper="action_trigger::event" oils_persist:tablename="action_trigger.event" reporter:label="Trigger Event Entry">
899                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_id_seq">
900                         <field reporter:label="Event ID" name="id" reporter:datatype="id"/>
901                         <field reporter:label="Target ID" name="target" reporter:datatype="int"/>
902                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
903                         <field reporter:label="Add Time" name="add_time" reporter:datatype="timestamp"/>
904                         <field reporter:label="Run Time" name="run_time" reporter:datatype="timestamp"/>
905                         <field reporter:label="Start Time" name="start_time" reporter:datatype="timestamp"/>
906                         <field reporter:label="Update Time" name="update_time" reporter:datatype="timestamp"/>
907                         <field reporter:label="Complete Time" name="complete_time" reporter:datatype="timestamp"/>
908                         <field reporter:label="State" name="state" reporter:datatype="text"/>
909                         <field reporter:label="User Data" name="user_data" reporter:datatype="text"/>
910                         <field reporter:label="Template Output" name="template_output" reporter:datatype="link"/>
911                         <field reporter:label="Error Output" name="error_output" reporter:datatype="text"/>
912                         <field reporter:label="Asynchronous Output" name="async_output" reporter:datatype="link"/>
913                         <field reporter:label="Update Process" name="update_process" reporter:datatype="int"/>
914                 </fields>
915                 <links>
916                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
917                         <link field="template_output" reltype="has_a" key="id" map="" class="ateo"/>
918                         <link field="error_output" reltype="has_a" key="id" map="" class="ateo"/>
919                         <link field="async_output" reltype="has_a" key="id" map="" class="ateo"/>
920                 </links>
921         </class>
922
923         <class id="atevparam" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action_trigger::event_param" oils_persist:tablename="action_trigger.event_params" reporter:label="Trigger Event Parameter">
924                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_params_id_seq">
925                         <field reporter:label="Event ID" name="id" reporter:datatype="id"/>
926                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
927                         <field reporter:label="Parameter Name" name="param" reporter:datatype="text"/>
928                         <field reporter:label="Parameter Value" name="value" reporter:datatype="text"/>
929                 </fields>
930                 <links>
931                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
932                 </links>
933                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
934                         <actions>
935                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF">
936                     <context link="event_def" field="owner"/>
937                 </create>
938                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF">
939                     <context link="event_def" field="owner"/>
940                 </retrieve>
941                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF">
942                     <context link="event_def" field="owner"/>
943                 </update>
944                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF">
945                     <context link="event_def" field="owner"/>
946                 </delete>
947                         </actions>
948                 </permacrud>
949         </class>
950
951         <class id="aws" controller="open-ils.cstore" oils_obj:fieldmapper="actor::workstation" oils_persist:tablename="actor.workstation" reporter:label="Workstation">
952                 <fields oils_persist:primary="id" oils_persist:sequence="actor.workstation_id_seq">
953                         <field reporter:label="Workstation ID" name="id" reporter:datatype="id"/>
954                         <field reporter:label="Workstation Name" name="name" reporter:datatype="text"/>
955                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
956                         <field reporter:label="Circulations" name="circulations" oils_persist:virtual="true" reporter:datatype="link"/>
957                 </fields>
958                 <links>
959                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
960                         <link field="circulations" reltype="has_many" key="workstation" map="" class="circ"/>
961                 </links>
962         </class>
963
964         <class id="ccm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_modifier" oils_persist:tablename="config.circ_modifier" reporter:label="Circulation Modifier">
965                 <fields oils_persist:primary="code">
966                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
967                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
968                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
969                         <field reporter:label="SIP2 Media Type" name="sip2_media_type" reporter:datatype="text" oils_persist:i18n="true"/>
970                         <field reporter:label="Magnetic Media" name="magnetic_media" reporter:datatype="bool"/>
971                         <field reporter:label="Average Wait Time" name="avg_wait_time" reporter:datatype="interval"/>
972                 </fields>
973                 <links/>
974         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
975             <actions>
976                 <create permission="ADMIN_CIRC_MOD" global_required="true"/>
977                 <retrieve/>
978                 <update permission="ADMIN_CIRC_MOD" global_required="true"/>
979                 <delete permission="ADMIN_CIRC_MOD" global_required="true"/>
980             </actions>
981         </permacrud>
982         </class>
983
984         <class id="aiit" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="acq::invoice_item_type" oils_persist:tablename="acq.invoice_item_type" reporter:label="Non-bibliographic Invoice Item Type" oils_persist:field_safe="true">
985                 <fields oils_persist:primary="code">
986                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
987                         <field reporter:label="Label" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
988                         <field reporter:label="Prorate?" name="prorate" reporter:datatype="bool"/>
989                 </fields>
990                 <links/>
991         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
992             <actions>
993                 <create permission="CREATE_INVOICE_ITEM_TYPE" global_required="true"/>
994                 <retrieve/>
995                 <update permission="UPDATE_INVOICE_ITEM_TYPE" global_required="true"/>
996                 <delete permission="DELETE_INVOICE_ITEM_TYPE" global_required="true"/>
997             </actions>
998         </permacrud>
999         </class>
1000
1001         <class id="acqim" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="acq::invoice_method" oils_persist:tablename="acq.invoice_method" reporter:label="Invoice Method used by Vendor" oils_persist:field_safe="true">
1002                 <fields oils_persist:primary="code">
1003                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1004                         <field reporter:label="Label" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1005                 </fields>
1006                 <links/>
1007         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1008             <actions>
1009                 <create permission="ADMIN_INVOICE_METHOD CREATE_INVOICE_METHOD" global_required="true"/>
1010                 <retrieve/>
1011                 <update permission="ADMIN_INVOICE_METHOD UPDATE_INVOICE_METHOD" global_required="true"/>
1012                 <delete permission="ADMIN_INVOICE_METHOD DELETE_INVOICE_METHOD" global_required="true"/>
1013             </actions>
1014         </permacrud>
1015         </class>
1016
1017         <class id="ccpbt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="container::copy_bucket_type" oils_persist:tablename="container.copy_bucket_type" reporter:label="Copy Bucket Type" oils_persist:field_safe="true">
1018                 <fields oils_persist:primary="code">
1019                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1020                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1021                 </fields>
1022                 <links/>
1023         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1024             <actions>
1025                 <create permission="CREATE_COPY_BTYPE" global_required="true"/>
1026                 <retrieve/>
1027                 <update permission="UPDATE_COPY_BTYPE" global_required="true"/>
1028                 <delete permission="DELETE_COPY_BTYPE" global_required="true"/>
1029             </actions>
1030         </permacrud>
1031         </class>
1032
1033         <class id="ccnbt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="container::call_number_bucket_type" oils_persist:tablename="container.call_number_bucket_type" reporter:label="Call Number Bucket Type" oils_persist:field_safe="true">
1034                 <fields oils_persist:primary="code">
1035                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1036                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1037                 </fields>
1038                 <links/>
1039         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1040             <actions>
1041                 <create permission="CREATE_CN_BTYPE" global_required="true"/>
1042                 <retrieve/>
1043                 <update permission="UPDATE_CN_BTYPE" global_required="true"/>
1044                 <delete permission="DELETE_CN_BTYPE" global_required="true"/>
1045             </actions>
1046         </permacrud>
1047         </class>
1048
1049         <class id="bpt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="biblio::peer_type" oils_persist:tablename="biblio.peer_type" reporter:label="Bibliographic Record Peer Type" oils_persist:field_safe="true">
1050                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.peer_type_id_seq">
1051                         <field reporter:label="ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1052                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1053                 </fields>
1054                 <links/>
1055         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1056             <actions>
1057                 <create permission="CREATE_BIB_PTYPE" global_required="true"/>
1058                 <retrieve/>
1059                 <update permission="UPDATE_BIB_PTYPE" global_required="true"/>
1060                 <delete permission="DELETE_BIB_PTYPE" global_required="true"/>
1061             </actions>
1062         </permacrud>
1063         </class>
1064
1065         <class id="bpbcm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="biblio::peer_bib_copy_map" oils_persist:tablename="biblio.peer_bib_copy_map" reporter:label="Bibliographic Record Peer Copy Map">
1066                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.peer_bib_copy_map_id_seq">
1067                         <field reporter:label="ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1068                         <field reporter:label="Peer Type" name="peer_type" reporter:datatype="link"/>
1069                         <field reporter:label="Peer Record" name="peer_record" reporter:datatype="link"/>
1070                         <field reporter:label="Target Copy" name="target_copy" reporter:datatype="link"/>
1071                 </fields>
1072         <links>
1073             <link field="peer_type" reltype="has_a" key="id" map="" class="bpt"/>
1074             <link field="peer_record" reltype="has_a" key="id" map="" class="bre"/>
1075             <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1076         </links>
1077         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1078             <actions>
1079                 <create permission="UPDATE_COPY">
1080                     <context link="target_copy" field="circ_lib"/>
1081                 </create>
1082                 <retrieve/>
1083                 <update permission="UPDATE_COPY">
1084                     <context link="target_copy" field="circ_lib"/>
1085                 </update>
1086                 <delete permission="UPDATE_COPY">
1087                     <context link="target_copy" field="circ_lib"/>
1088                 </delete>
1089             </actions>
1090         </permacrud>
1091         </class>
1092
1093         <class id="cbrebt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="container::biblio_record_entry_bucket_type" oils_persist:tablename="container.biblio_record_entry_bucket_type" reporter:label="Bibliographic Record Bucket Type" oils_persist:field_safe="true">
1094                 <fields oils_persist:primary="code">
1095                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1096                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1097                 </fields>
1098                 <links/>
1099         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1100             <actions>
1101                 <create permission="CREATE_BIB_BTYPE" global_required="true"/>
1102                 <retrieve/>
1103                 <update permission="UPDATE_BIB_BTYPE" global_required="true"/>
1104                 <delete permission="DELETE_BIB_BTYPE" global_required="true"/>
1105             </actions>
1106         </permacrud>
1107         </class>
1108
1109         <class id="cubt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="container::user_bucket_type" oils_persist:tablename="container.user_bucket_type" reporter:label="User Bucket Type" oils_persist:field_safe="true">
1110                 <fields oils_persist:primary="code">
1111                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1112                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1113                 </fields>
1114                 <links/>
1115         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1116             <actions>
1117                 <create permission="CREATE_USER_BTYPE" global_required="true"/>
1118                 <retrieve/>
1119                 <update permission="UPDATE_USER_BTYPE" global_required="true"/>
1120                 <delete permission="DELETE_USER_BTYPE" global_required="true"/>
1121             </actions>
1122         </permacrud>
1123         </class>
1124
1125         <class id="cvrfm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::videorecording_format_map" oils_persist:tablename="config.videorecording_format_map" reporter:label="Videorecording Format" oils_persist:field_safe="true">
1126                 <fields oils_persist:primary="code">
1127                         <field reporter:label="Code" name="code" reporter:selector="value" reporter:datatype="id"/>
1128                         <field reporter:label="Format" name="value" reporter:datatype="text" oils_persist:i18n="true"/>
1129                 </fields>
1130                 <links/>
1131         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1132             <actions>
1133                 <create permission="ADMIN_MARC_CODE" global_required="true"/>
1134                 <retrieve/>
1135                 <update permission="ADMIN_MARC_CODE" global_required="true"/>
1136                 <delete permission="ADMIN_MARC_CODE" global_required="true"/>
1137             </actions>
1138         </permacrud>
1139         </class>
1140
1141     <class id="chmw" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::hold_matrix_weights" oils_persist:tablename="config.hold_matrix_weights" reporter:label="Hold Matrix Weights">
1142         <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_weights_id_seq">
1143             <field reporter:label="Hold Weights ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1144             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1145             <field reporter:label="User Home Library" name="user_home_ou" reporter:datatype="float"/>
1146             <field reporter:label="Request Library" name="request_ou" reporter:datatype="float"/>
1147             <field reporter:label="Pickup Library" name="pickup_ou" reporter:datatype="float"/>
1148             <field reporter:label="Owning Library" name="item_owning_ou" reporter:datatype="float"/>
1149             <field reporter:label="Item Circ Library" name="item_circ_ou" reporter:datatype="float"/>
1150             <field reporter:label="User Permission Group" name="usr_grp" reporter:datatype="float"/>
1151             <field reporter:label="Requestor Permission Group" name="requestor_grp" reporter:datatype="float"/>
1152             <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="float"/>
1153             <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="float"/>
1154             <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="float"/>
1155             <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="float"/>
1156             <field reporter:label="Reference?" name="ref_flag" reporter:datatype="float"/>
1157             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="float"/>
1158         </fields>
1159         <links/>
1160         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1161             <actions>
1162                 <create permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1163                 <retrieve/>
1164                 <update permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1165                 <delete permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1166             </actions>
1167         </permacrud>
1168     </class>
1169
1170     <class id="ccmw" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_matrix_weights" oils_persist:tablename="config.circ_matrix_weights" reporter:label="Circ Matrix Weights">
1171         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_weights_id_seq">
1172             <field reporter:label="Circ Weights ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1173             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1174             <field reporter:label="Org Unit" name="org_unit" reporter:datatype="float"/>
1175             <field reporter:label="Copy Circ Lib" name="copy_circ_lib" reporter:datatype="float"/>
1176             <field reporter:label="Copy Owning Lib" name="copy_owning_lib" reporter:datatype="float"/>
1177             <field reporter:label="User Home Lib" name="user_home_ou" reporter:datatype="float"/>
1178             <field reporter:label="Permission Group" name="grp" reporter:datatype="float"/>
1179             <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="float"/>
1180             <field reporter:label="MARC Type" name="marc_type" reporter:datatype="float"/>
1181             <field reporter:label="MARC Form" name="marc_form" reporter:datatype="float"/>
1182             <field reporter:label="Videorecording Format" name="marc_vr_format" reporter:datatype="float"/>
1183             <field reporter:label="Reference?" name="ref_flag" reporter:datatype="float"/>
1184             <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" reporter:datatype="float"/>
1185             <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" reporter:datatype="float"/>
1186             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="float"/>
1187         </fields>
1188         <links/>
1189         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1190             <actions>
1191                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1192                 <retrieve/>
1193                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1194                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1195             </actions>
1196         </permacrud>
1197     </class>
1198
1199     <class id="cwa" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::weight_assoc" oils_persist:tablename="config.weight_assoc" reporter:label="Matrix Weight Association">
1200         <fields oils_persist:primary="id" oils_persist:sequence="config.weight_assoc_id_seq">
1201             <field reporter:label="Assoc ID" name="id" reporter:datatype="id"/>
1202             <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1203             <field reporter:label="Org Unit" name="org_unit" reporter:datatype="org_unit"/>
1204             <field reporter:label="Circ Weights" name="circ_weights" reporter:datatype="link"/>
1205             <field reporter:label="Hold Weights" name="hold_weights" reporter:datatype="link"/>
1206         </fields>
1207         <links>
1208             <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1209             <link field="circ_weights" reltype="has_a" key="id" map="" class="ccmw"/>
1210             <link field="hold_weights" reltype="has_a" key="id" map="" class="chmw"/>
1211         </links>
1212         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1213             <actions>
1214                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1215                 <retrieve permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT VIEW_CIRC_MATRIX_MATCHPOINT VIEW_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1216                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1217                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1218             </actions>
1219         </permacrud>
1220     </class>
1221
1222         <class id="chmm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::hold_matrix_matchpoint" oils_persist:tablename="config.hold_matrix_matchpoint" reporter:label="Hold Matrix Matchpoint">
1223                 <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_matchpoint_id_seq">
1224                         <field reporter:label="Matchpoint ID" name="id" reporter:datatype="id"/>
1225                         <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1226                         <field reporter:label="Strict OU matches?" name="strict_ou_match" reporter:datatype="bool"/>
1227                         <field reporter:label="User Home Library" name="user_home_ou" reporter:datatype="org_unit"/>
1228                         <field reporter:label="Request Library" name="request_ou" reporter:datatype="org_unit"/>
1229                         <field reporter:label="Pickup Library" name="pickup_ou" reporter:datatype="org_unit"/>
1230                         <field reporter:label="Owning Library" name="item_owning_ou" reporter:datatype="org_unit"/>
1231                         <field reporter:label="Item Circ Library" name="item_circ_ou" reporter:datatype="org_unit"/>
1232                         <field reporter:label="User Permission Group" name="usr_grp" reporter:datatype="link"/>
1233                         <field reporter:label="Requestor Permission Group" name="requestor_grp" reporter:datatype="link"/>
1234                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="link"/>
1235                         <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="link"/>
1236                         <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="link"/>
1237                         <field reporter:label="MARC Bib Level" name="marc_bib_level" oils_persist:primitive="string" reporter:datatype="link"/>
1238                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="link"/>
1239                         <field reporter:label="Reference?" name="ref_flag" reporter:datatype="bool"/>
1240             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="text"/>
1241                         <field reporter:label="Holdable?" name="holdable" reporter:datatype="bool"/>
1242                         <field reporter:label="Range is from Owning Lib?" name="distance_is_from_owner" reporter:datatype="bool"/>
1243                         <field reporter:label="Transit Range" name="transit_range" reporter:datatype="link"/>
1244                         <field reporter:label="Max Holds" name="max_holds" reporter:datatype="int"/>
1245                         <field reporter:label="Max includes Frozen" name="include_frozen_holds" reporter:datatype="bool"/>
1246                         <field reporter:label="Copy Age Hold Protection Rule" name="age_hold_protect_rule" reporter:datatype="link"/>
1247                 </fields>
1248                 <links>
1249                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
1250                         <link field="request_ou" reltype="has_a" key="id" map="" class="aou"/>
1251                         <link field="pickup_ou" reltype="has_a" key="id" map="" class="aou"/>
1252                         <link field="item_owning_ou" reltype="has_a" key="id" map="" class="aou"/>
1253                         <link field="item_circ_ou" reltype="has_a" key="id" map="" class="aou"/>
1254                         <link field="usr_grp" reltype="has_a" key="id" map="" class="pgt"/>
1255                         <link field="requestor_grp" reltype="has_a" key="id" map="" class="pgt"/>
1256                         <link field="circ_modifier" reltype="has_a" key="code" map="" class="ccm"/>
1257                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
1258                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
1259                         <link field="marc_bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1260                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
1261                         <link field="age_hold_protect_rule" reltype="has_a" key="id" map="" class="crahp"/>
1262             <link field="transit_range" reltype="has_a" key="id" map="" class="aout"/>
1263                 </links>
1264         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1265             <actions>
1266                 <create permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1267                 <retrieve permission="ADMIN_HOLD_MATRIX_MATCHPOINT VIEW_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1268                 <update permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1269                 <delete permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1270             </actions>
1271         </permacrud>
1272         </class>
1273
1274         <class id="ccmm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_matrix_matchpoint" oils_persist:tablename="config.circ_matrix_matchpoint" reporter:label="Circulation Matrix Matchpoint">
1275                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_matchpoint_id_seq">
1276                         <field reporter:label="Matchpoint ID" name="id" reporter:datatype="id"/>
1277                         <field reporter:label="Renewal?" name="is_renewal" reporter:datatype="bool"/>
1278                         <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1279                         <field reporter:label="Org Unit" name="org_unit" reporter:datatype="org_unit" oils_obj:required="true"/>
1280                         <field reporter:label="Copy Circ Lib" name="copy_circ_lib" reporter:datatype="org_unit"/>
1281                         <field reporter:label="Copy Owning Lib" name="copy_owning_lib" reporter:datatype="org_unit"/>
1282                         <field reporter:label="User Home Lib" name="user_home_ou" reporter:datatype="org_unit"/>
1283                         <field reporter:label="Permission Group" name="grp" reporter:datatype="link" oils_obj:required="true"/>
1284                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="link"/>
1285                         <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="link"/>
1286                         <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="link"/>
1287                         <field reporter:label="MARC Bib Level" name="marc_bib_level" oils_persist:primitive="string" reporter:datatype="link"/>
1288                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="link"/>
1289                         <field reporter:label="Reference?" name="ref_flag" reporter:datatype="bool"/>
1290             <field reporter:label="Juvenile?" name="juvenile_flag" reporter:datatype="bool"/>
1291                         <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" reporter:datatype="text"/>
1292                         <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" reporter:datatype="text"/>
1293             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="text"/>
1294                         <field reporter:label="Circulate?" name="circulate" reporter:datatype="bool"/>
1295                         <field reporter:label="Duration Rule" name="duration_rule" reporter:datatype="link"/>
1296                         <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" reporter:datatype="link"/>
1297                         <field reporter:label="Max Fine Rule" name="max_fine_rule" reporter:datatype="link"/>
1298             <field reporter:label="Hard Due Date" name="hard_due_date" reporter:datatype="link"/>
1299             <field reporter:label="Renewals Override" name="renewals" reporter:datatype="int"/>
1300             <field reporter:label="Grace Period Override" name="grace_period" reporter:datatype="interval"/>
1301                         <field reporter:label="Script Test" name="script_test" reporter:datatype="text"/>
1302                         <field name="total_copy_hold_ratio" reporter:datatype="float" reporter:label="Minimum Total Copy/Hold Ratio"/>
1303                         <field name="available_copy_hold_ratio" reporter:datatype="float" reporter:label="Minimum Available Copy/Hold Ratio"/>
1304                 </fields>
1305                 <links>
1306                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1307                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1308                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1309                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
1310                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
1311                         <link field="circ_modifier" reltype="has_a" key="code" map="" class="ccm"/>
1312                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
1313                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
1314                         <link field="marc_bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1315                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
1316                         <link field="duration_rule" reltype="has_a" key="id" map="" class="crcd"/>
1317                         <link field="max_fine_rule" reltype="has_a" key="id" map="" class="crmf"/>
1318                         <link field="recurring_fine_rule" reltype="has_a" key="id" map="" class="crrf"/>
1319             <link field="hard_due_date" reltype="has_a" key="id" map="" class="chdd"/>
1320                 </links>
1321         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1322             <actions>
1323                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1324                 <retrieve permission="ADMIN_CIRC_MATRIX_MATCHPOINT VIEW_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1325                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1326                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1327             </actions>
1328         </permacrud>
1329         </class>
1330
1331         <class id="ccmcmt" controller="open-ils.cstore open-ils.pcrud" 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">
1332                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_circ_mod_test_id_seq">
1333                         <field reporter:label="Test ID" name="id" reporter:datatype="id"/>
1334                         <field reporter:label="Matchpoint ID" name="matchpoint" reporter:datatype="link"/>
1335                         <field reporter:label="Items Out" name="items_out" reporter:datatype="int"/>
1336                 </fields>
1337                 <links>
1338                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
1339                 </links>
1340         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1341             <actions>
1342                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1343                     <context link="matchpoint" field="org_unit"/>
1344                 </create>
1345                 <retrieve/>
1346                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1347                     <context link="matchpoint" field="org_unit"/>
1348                 </update>
1349                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1350                     <context link="matchpoint" field="org_unit"/>
1351                 </delete>
1352             </actions>
1353         </permacrud>
1354         </class>
1355
1356         <class id="ccmcmtm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_matrix_circ_mod_test_map" oils_persist:tablename="config.circ_matrix_circ_mod_test_map" reporter:label="Circulation Matrix Circulation Modifier Subtest Circulation Modifier Set">
1357                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_circ_mod_test_map_id_seq">
1358                         <field reporter:label="Entry ID" name="id" reporter:datatype="id"/>
1359                         <field reporter:label="Circulation Modifier Subtest ID" name="circ_mod_test" reporter:datatype="link"/>
1360                         <field reporter:label="Circulation Modifier" name="circ_mod" reporter:datatype="link"/>
1361                 </fields>
1362                 <links>
1363                         <link field="circ_mod_test" reltype="has_a" key="id" map="" class="ccmcmt"/>
1364                         <link field="circ_mod" reltype="has_a" key="code" map="" class="ccm"/>
1365                 </links>
1366         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1367             <actions>
1368                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1369                     <context link="circ_mod_test" jump="matchpoint" field="org_unit"/>
1370                 </create>
1371                 <retrieve/>
1372                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1373                     <context link="circ_mod_test" jump="matchpoint" field="org_unit"/>
1374                 </update>
1375                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1376                     <context link="circ_mod_test" jump="matchpoint" field="org_unit"/>
1377                 </delete>
1378             </actions>
1379         </permacrud>
1380         </class>
1381
1382         <class id="cit" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::identification_type" oils_persist:tablename="config.identification_type" reporter:label="Identification Type">
1383                 <fields oils_persist:primary="id" oils_persist:sequence="config.identification_type_id_seq">
1384                         <field reporter:label="Identification ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1385                         <field reporter:label="Identification Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1386                 </fields>
1387                 <links/>
1388         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1389             <actions>
1390                 <create permission="ADMIN_IDENT_TYPE" global_required="true"/>
1391                 <retrieve/>
1392                 <update permission="ADMIN_IDENT_TYPE" global_required="true"/>
1393                 <delete permission="ADMIN_IDENT_TYPE" global_required="true"/>
1394             </actions>
1395         </permacrud>
1396         </class>
1397
1398         <class id="asvq" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action::survey_question" oils_persist:tablename="action.survey_question" reporter:label="User Survey Question">
1399                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_question_id_seq">
1400                         <field reporter:label="Answers" name="answers" oils_persist:virtual="true" reporter:datatype="link"/>
1401                         <field reporter:label="Responses" name="responses" oils_persist:virtual="true" reporter:datatype="link"/>
1402                         <field reporter:label="Question ID" name="id" reporter:datatype="id" />
1403                         <field reporter:label="Question" name="question" reporter:datatype="text"/>
1404                         <field reporter:label="Survey" name="survey" reporter:datatype="link"/>
1405                 </fields>
1406                 <links>
1407                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
1408                         <link field="responses" reltype="has_many" key="question" map="" class="asvr"/>
1409                         <link field="answers" reltype="has_many" key="question" map="" class="asva"/>
1410                 </links>
1411         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1412             <actions>
1413                 <create permission="ADMIN_SURVEY">
1414                     <context link="survey" field="owner"/>
1415                 </create>
1416                 <retrieve/>
1417                 <update permission="ADMIN_SURVEY">
1418                     <context link="survey" field="owner"/>
1419                 </update>
1420                 <delete permission="ADMIN_SURVEY">
1421                     <context link="survey" field="owner"/>
1422                 </delete>
1423             </actions>
1424         </permacrud>
1425         </class>
1426         <class id="mbts" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction_summary" oils_persist:tablename="money.materialized_billable_xact_summary" reporter:label="Billable Transaction Summary" oils_persist:readonly="true">
1427                 <fields oils_persist:primary="id" oils_persist:sequence="">
1428                         <field reporter:label="Balance Owed" name="balance_owed" reporter:datatype="money"/>
1429                         <field reporter:label="Transaction ID" name="id" reporter:datatype="id"/>
1430                         <field reporter:label="Last Billing Note" name="last_billing_note" reporter:datatype="text"/>
1431                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" reporter:datatype="timestamp"/>
1432                         <field reporter:label="Last Billing Type" name="last_billing_type" reporter:datatype="text"/>
1433                         <field reporter:label="Last Payment Note" name="last_payment_note" reporter:datatype="text"/>
1434                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" reporter:datatype="timestamp"/>
1435                         <field reporter:label="Last Payment Type" name="last_payment_type" reporter:datatype="text"/>
1436                         <field reporter:label="Total Owed" name="total_owed" reporter:datatype="money"/>
1437                         <field reporter:label="Total Paid" name="total_paid" reporter:datatype="money"/>
1438                         <field reporter:label="Billed User" name="usr" reporter:datatype="link"/>
1439                         <field reporter:label="Transaction Finish Time" name="xact_finish" reporter:datatype="timestamp" />
1440                         <field reporter:label="Transaction Start Time" name="xact_start" reporter:datatype="timestamp" />
1441                         <field reporter:label="Transaction Type" name="xact_type" reporter:datatype="text"/>
1442                 </fields>
1443                 <links>
1444                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1445                 </links>
1446         </class>
1447         <class id="mbtslv" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction_summary_location_view" oils_persist:tablename="money.billable_xact_summary_location_view" reporter:label="Billable Transaction Summary with Billing Location" oils_persist:readonly="true" reporter:core="true">
1448                 <fields oils_persist:primary="id" oils_persist:sequence="">
1449                         <field reporter:label="Balance Owed" name="balance_owed" reporter:datatype="money"/>
1450                         <field reporter:label="Transaction ID" name="id" reporter:datatype="id"/>
1451                         <field reporter:label="Last Billing Note" name="last_billing_note" reporter:datatype="text"/>
1452                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" reporter:datatype="timestamp"/>
1453                         <field reporter:label="Last Billing Type" name="last_billing_type" reporter:datatype="text"/>
1454                         <field reporter:label="Last Payment Note" name="last_payment_note" reporter:datatype="text"/>
1455                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" reporter:datatype="timestamp"/>
1456                         <field reporter:label="Last Payment Type" name="last_payment_type" reporter:datatype="text"/>
1457                         <field reporter:label="Total Owed" name="total_owed" reporter:datatype="money"/>
1458                         <field reporter:label="Total Paid" name="total_paid" reporter:datatype="money"/>
1459                         <field reporter:label="Billed User" name="usr" reporter:datatype="link"/>
1460                         <field reporter:label="Transaction Finish Time" name="xact_finish" reporter:datatype="timestamp" />
1461                         <field reporter:label="Transaction Start Time" name="xact_start" reporter:datatype="timestamp" />
1462                         <field reporter:label="Transaction Type" name="xact_type" reporter:datatype="text"/>
1463                         <field reporter:label="Billing Location" name="billing_location" reporter:datatype="link"/>
1464                 </fields>
1465                 <links>
1466                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1467                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
1468                 </links>
1469         </class>
1470         <class id="aun" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_note" oils_persist:tablename="actor.usr_note" reporter:label="User Note">
1471                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_note_id_seq">
1472                         <field reporter:label="Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
1473                         <field reporter:label="Creating Staff" name="creator" reporter:datatype="link"/>
1474                         <field reporter:label="Note ID" name="id" reporter:datatype="id" />
1475                         <field reporter:label="Is OPAC Visible?" name="pub" reporter:datatype="bool"/>
1476                         <field reporter:label="Note Title" name="title" reporter:datatype="text"/>
1477                         <field reporter:label="User" name="usr" reporter:datatype="link" />
1478                         <field reporter:label="Note Content" name="value" reporter:datatype="text"/>
1479                 </fields>
1480                 <links>
1481                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1482                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1483                 </links>
1484         </class>
1485         <class id="aupr" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_password_reset" oils_persist:tablename="actor.usr_password_reset" reporter:label="User password reset requests">
1486                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_password_reset_id_seq">
1487                         <field reporter:label="Request ID" name="id" reporter:datatype="id"/>
1488                         <field reporter:label="UUID" name="uuid" reporter:datatype="text"/>
1489                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
1490                         <field reporter:label="Request Time" name="request_time" reporter:datatype="timestamp"/>
1491                         <field reporter:label="Was Reset?" name="has_been_reset" reporter:datatype="bool"/>
1492                 </fields>
1493                 <links>
1494                         <link field="usr" reltype="has_a" key="id" class="au"/>
1495                 </links>
1496         </class>
1497         <class id="aus" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_setting" oils_persist:tablename="actor.usr_setting" reporter:label="User Setting">
1498                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_setting_id_seq">
1499                         <field reporter:label="Setting ID" name="id" reporter:datatype="id" />
1500                         <field reporter:label="Name" name="name" reporter:datatype="link"/>
1501                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
1502                         <field reporter:label="Value" name="value" reporter:datatype="text"/>
1503                 </fields>
1504                 <links>
1505                         <link field="name" reltype="has_a" key="name" map="" class="cust"/>
1506                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1507                 </links>
1508         </class>
1509         <class id="mafe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::author_field_entry" oils_persist:tablename="metabib.author_field_entry" reporter:label="Author Field Entry">
1510                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.author_field_entry_id_seq">
1511                         <field name="field" reporter:datatype="link"/>
1512                         <field name="id" reporter:datatype="id" />
1513                         <field name="source" reporter:datatype="link"/>
1514                         <field name="value" reporter:datatype="text"/>
1515                 </fields>
1516                 <links>
1517                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1518                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1519                 </links>
1520         </class>
1521         <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">
1522                 <fields oils_persist:primary="id" oils_persist:sequence="action.in_house_use_id_seq">
1523                         <field reporter:label="Use ID" name="id" reporter:datatype="id" />
1524                         <field reporter:label="Item" name="item" reporter:datatype="int" />
1525                         <field reporter:label="Using Library" name="org_unit" reporter:datatype="org_unit"/>
1526                         <field reporter:label="Recording Staff" name="staff" reporter:datatype="link"/>
1527                         <field reporter:label="Use Date/Time" name="use_time" reporter:datatype="timestamp"/>
1528                 </fields>
1529                 <links>
1530                         <link field="item" reltype="has_a" key="id" map="" class="acp"/>
1531                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
1532                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1533                 </links>
1534         </class>
1535         <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">
1536                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cat_in_house_use_id_seq">
1537                         <field reporter:label="Use ID" name="id" reporter:datatype="id" />
1538                         <field reporter:label="Item Type" name="item_type" reporter:datatype="link"/>
1539                         <field reporter:label="Using Library" name="org_unit" reporter:datatype="org_unit"/>
1540                         <field reporter:label="Recording Staff" name="staff" reporter:datatype="link"/>
1541                         <field reporter:label="Use Date/Time" name="use_time" reporter:datatype="timestamp"/>
1542                 </fields>
1543                 <links>
1544                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
1545                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
1546                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1547                 </links>
1548         </class>
1549         <class id="atc" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action::transit_copy" oils_persist:tablename="action.transit_copy" reporter:core="true" reporter:label="Copy Transit">
1550                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
1551                         <field reporter:label="Pretransit Copy Status" name="copy_status" reporter:datatype="bool"/>
1552                         <field reporter:label="Destination" name="dest" reporter:datatype="link"/>
1553                         <field reporter:label="Receive Date/Time" name="dest_recv_time" reporter:datatype="timestamp"/>
1554                         <field reporter:label="Transit ID" name="id" reporter:datatype="id"/>
1555                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" reporter:datatype="bool"/>
1556                         <field reporter:label="Previous Hop (unused)" name="prev_hop" reporter:datatype="link"/>
1557                         <field reporter:label="Source" name="source" reporter:datatype="link"/>
1558                         <field reporter:label="Prev Destination" name="prev_dest" reporter:datatype="org_unit"/>
1559                         <field reporter:label="Send Date/Time" name="source_send_time" reporter:datatype="timestamp"/>
1560                         <field reporter:label="Transited Copy" name="target_copy" reporter:datatype="link"/>
1561                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_persist:virtual="true" reporter:datatype="link"/>
1562                 </fields>
1563                 <links>
1564                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
1565                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
1566                         <link field="prev_dest" reltype="has_a" key="id" map="" class="aou"/>
1567                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
1568                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
1569                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1570                 </links>
1571         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1572             <actions>
1573                 <create permission="TRANSIT_COPY" context_field="owner">
1574                     <context link="target_copy" field="circ_lib"/>
1575                 </create>
1576                 <retrieve/>
1577                 <update permission="UPDATE_TRANSIT" context_field="dest source"/>
1578                 <delete permission="DELETE_TRANSIT" context_field="dest source"/>
1579             </actions>
1580         </permacrud>
1581         </class>
1582         <class id="asvr" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="action::survey_response" oils_persist:tablename="action.survey_response" reporter:label="Survey Response">
1583                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_response_id_seq">
1584                         <field reporter:label="Answer" name="answer" reporter:datatype="link"/>
1585                         <field reporter:label="Answer Date/Time" name="answer_date" reporter:datatype="timestamp"/>
1586                         <field reporter:label="Effective Answer Date/Time" name="effective_date" reporter:datatype="timestamp"/>
1587                         <field reporter:label="Answer ID" name="id" reporter:datatype="id" />
1588                         <field reporter:label="Question" name="question" reporter:datatype="link"/>
1589                         <field reporter:label="Response Group ID" name="response_group_id" reporter:datatype="int" />
1590                         <field reporter:label="Survey" name="survey" reporter:datatype="link"/>
1591                         <field reporter:label="Responding User" name="usr" reporter:datatype="link"/>
1592                 </fields>
1593                 <links>
1594                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
1595                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
1596                         <link field="answer" reltype="has_a" key="id" map="" class="asva"/>
1597                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1598                 </links>
1599         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1600             <actions>
1601                 <create permission="ADMIN_SURVEY">
1602                     <context link="survey" field="owner"/>
1603                 </create>
1604                 <retrieve/>
1605                 <update permission="ADMIN_SURVEY">
1606                     <context link="survey" field="owner"/>
1607                 </update>
1608                 <delete permission="ADMIN_SURVEY">
1609                     <context link="survey" field="owner"/>
1610                 </delete>
1611             </actions>
1612         </permacrud>
1613         </class>
1614         <class id="ccbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket_item" oils_persist:tablename="container.copy_bucket_item" reporter:label="Copy Bucket Item">
1615                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_id_seq">
1616                         <field name="bucket" />
1617                         <field name="id" reporter:datatype="id" />
1618                         <field name="target_copy" reporter:datatype="link"/>
1619                         <field name="create_time" reporter:datatype="timestamp" />
1620                         <field name="pos" reporter:datatype="int" />
1621                         <field name="notes" oils_persist:virtual="true" reporter:datatype="link" />
1622                 </fields>
1623                 <links>
1624                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1625                         <link field="bucket" reltype="has_a" key="id" map="" class="ccb"/>
1626             <link field="notes" reltype="has_many" map="" key="item" class="ccbin"/>
1627                 </links>
1628         </class>
1629         <class id="ccbin" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket_item_note" oils_persist:tablename="container.copy_bucket_item_note" reporter:label="Copy Bucket Item Note">
1630                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_note_id_seq">
1631                         <field name="id" reporter:datatype="id" />
1632                         <field name="item" reporter:datatype="link"/>
1633                         <field name="note" reporter:datatype="text" />
1634                 </fields>
1635                 <links>
1636                         <link field="item" reltype="has_a" key="id" map="" class="ccbi"/>
1637                 </links>
1638         </class>
1639         <class id="are" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::record_entry" oils_persist:tablename="authority.record_entry" reporter:label="Authority Record Entry">
1640                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_entry_id_seq">
1641                         <field name="active" reporter:datatype="bool"/>
1642                         <field name="create_date" reporter:datatype="timestamp"/>
1643                         <field name="creator" />
1644                         <field name="deleted" reporter:datatype="bool"/>
1645                         <field name="edit_date" reporter:datatype="timestamp"/>
1646                         <field name="editor" />
1647                         <field name="id" reporter:datatype="id" />
1648                         <field name="last_xact_id" />
1649                         <field name="marc" />
1650                         <field name="source" />
1651                         <field reporter:label="Owner" name="owner"  reporter:datatype="org_unit"/>
1652                         <field name="fixed_fields" oils_persist:virtual="true" reporter:datatype="link"/>
1653                         <field name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
1654                         <field name="bib_links" oils_persist:virtual="true" reporter:datatype="link"/>
1655                 </fields>
1656                 <links>
1657                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
1658                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1659                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1660                         <link field="notes" reltype="has_many" key="record" map="" class="arn"/>
1661                         <link field="bib_links" reltype="has_many" key="authority" map="" class="abl"/>
1662                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="ard"/>
1663                 </links>
1664                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1665                         <actions>
1666                                 <create permission="CREATE_MARC IMPORT_MARC" global_required="true"/>
1667                                 <retrieve/>
1668                                 <update permission="UPDATE_MARC" global_required="true"/>
1669                                 <delete permission="UPDATE_MARC" global_required="true"/>
1670                         </actions>
1671                 </permacrud>
1672         </class>
1673         <class id="ard" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_descriptor" oils_persist:tablename="authority.rec_descriptor" reporter:label="Authority Record Descriptor">
1674                 <fields oils_persist:primary="id" oils_persist:sequence="authority.rec_descriptor_id_seq">
1675                         <field name="char_encoding" />
1676                         <field name="id" />
1677                         <field name="record" />
1678                         <field name="record_status" />
1679                 </fields>
1680                 <links>
1681                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
1682                 </links>
1683         </class>
1684         <class id="abl" controller="open-ils.cstore" oils_obj:fieldmapper="authority::bib_linking" oils_persist:tablename="authority.bib_linking" reporter:label="Authority-Bibliographic Record Link">
1685                 <fields oils_persist:primary="id" oils_persist:sequence="authority.bib_linking_id_seq">
1686                         <field name="id" reporter:datatype="id" />
1687                         <field name="bib" reporter:datatype="link" />
1688                         <field name="authority" reporter:datatype="link" />
1689                 </fields>
1690                 <links>
1691                         <link field="bib" reltype="has_a" key="id" map="" class="bre"/>
1692                         <link field="authority" reltype="has_a" key="id" map="" class="are"/>
1693                 </links>
1694         </class>
1695         <class id="clm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::language_map" oils_persist:tablename="config.language_map" reporter:label="Language Map" oils_persist:field_safe="true">
1696                 <fields oils_persist:primary="code" oils_persist:sequence="">
1697                         <field reporter:label="Language Code" name="code" reporter:selector="value" reporter:datatype="text"/>
1698                         <field reporter:label="Language" name="value" reporter:datatype="text" oils_persist:i18n="true"/>
1699                 </fields>
1700                 <links/>
1701         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1702             <actions>
1703                 <create permission="CREATE_MARC_CODE" global_required="true"/>
1704                 <retrieve/>
1705                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
1706                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1707             </actions>
1708         </permacrud>
1709         </class>
1710         <class id="mccp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_card_payment" oils_persist:tablename="money.credit_card_payment" reporter:label="Credit Card Payment">
1711                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1712                         <field name="accepting_usr" />
1713                         <field name="amount" reporter:datatype="money" />
1714                         <field name="amount_collected" reporter:datatype="money" />
1715                         <field name="approval_code" reporter:datatype="text"/>
1716                         <field name="cash_drawer" reporter:datatype="link"/>
1717                         <field name="cc_first_name" reporter:datatype="text"/>
1718                         <field name="cc_last_name" reporter:datatype="text"/>
1719                         <field name="cc_number" reporter:datatype="text"/>
1720                         <field name="cc_order_number" reporter:datatype="text"/>
1721                         <field name="cc_type" reporter:datatype="text"/>
1722                         <field name="cc_processor" reporter:datatype="text"/>
1723                         <field name="expire_month" reporter:datatype="int" />
1724                         <field name="expire_year" reporter:datatype="int" />
1725                         <field name="id" reporter:datatype="id" />
1726                         <field name="note" reporter:datatype="text"/>
1727                         <field name="payment_ts" reporter:datatype="timestamp"/>
1728                         <field name="xact" reporter:datatype="link"/>
1729                         <field name="payment_type" oils_persist:virtual="true" reporter:datatype="text"/>
1730                         <field name="payment" oils_persist:virtual="true" reporter:datatype="link"/>
1731                 </fields>
1732                 <links>
1733                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1734                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1735                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
1736                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1737                 </links>
1738         </class>
1739         <class id="cxt" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::xml_transform" oils_persist:tablename="config.xml_transform" reporter:label="XML/XSLT Transform Definition">
1740                 <fields oils_persist:primary="name">
1741                         <field reporter:label="Name" name="name" reporter:datatype="text" />
1742                         <field reporter:label="Namespace URI" name="namespace_uri" reporter:datatype="text"/>
1743                         <field reporter:label="Namespace Prefix" name="prefix" reporter:datatype="text"/>
1744                         <field reporter:label="XSLT" name="xslt" reporter:datatype="text" />
1745                 </fields>
1746                 <links/>
1747         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1748             <actions>
1749                 <create permission="CREATE_XML_TRANSFORM" global_required="true"/>
1750                 <retrieve/>
1751                 <update permission="UPDATE_XML_TRANSFORM" global_required="true"/>
1752                 <delete permission="DELETE_XML_TRANSFORM" global_required="true"/>
1753             </actions>
1754         </permacrud>
1755         </class>
1756
1757         <class id="cmsa" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::metabib_search_alias" oils_persist:tablename="config.metabib_search_alias" reporter:label="Metabib Search Alias" oils_persist:field_safe="true">
1758                 <fields oils_persist:primary="alias">
1759                         <field reporter:label="Alias (RegExp)" name="alias" reporter:datatype="text"/>
1760                         <field reporter:label="Class" name="field_class" reporter:datatype="link"/>
1761                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
1762                 </fields>
1763                 <links>
1764                         <link field="field_class" reltype="has_a" key="name" map="" class="cmc"/>
1765                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1766                 </links>
1767         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1768             <actions>
1769                 <create permission="CREATE_METABIB_SEARCH_ALIAS" global_required="true"/>
1770                 <retrieve/>
1771                 <update permission="UPDATE_METABIB_SEARCH_ALIAS" global_required="true"/>
1772                 <delete permission="DELETE_METABIB_SEARCH_ALIAS" global_required="true"/>
1773             </actions>
1774         </permacrud>
1775         </class>
1776
1777         <class id="cmc" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::metabib_class" oils_persist:tablename="config.metabib_class" reporter:label="Metabib Class" oils_persist:field_safe="true">
1778                 <fields oils_persist:primary="name">
1779                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
1780                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1781                         <field reporter:label="Fields" name="fields" reporter:datatype="link" oils_persist:virtual="true"/>
1782                 </fields>
1783                 <links>
1784                         <link field="fields" reltype="has_many" key="name" map="" class="cmf"/>
1785                 </links>
1786         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1787             <actions>
1788                 <create permission="CREATE_METABIB_CLASS" global_required="true"/>
1789                 <retrieve/>
1790                 <update permission="UPDATE_METABIB_CLASS" global_required="true"/>
1791                 <delete permission="DELETE_METABIB_CLASS" global_required="true"/>
1792             </actions>
1793         </permacrud>
1794         </class>
1795
1796         <class id="cmf" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::metabib_field" oils_persist:tablename="config.metabib_field" reporter:label="Metabib Field" oils_persist:field_safe="true">
1797                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_id_seq">
1798                         <field reporter:label="Class" name="field_class" reporter:datatype="link"/>
1799                         <field reporter:label="ID" name="id" reporter:datatype="id" />
1800                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
1801                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1802                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
1803                         <field reporter:label="Weight" name="weight" reporter:datatype="int" />
1804                         <field reporter:label="Format" name="format" reporter:datatype="link"/>
1805                         <field reporter:label="Search Field" name="search_field" reporter:datatype="bool" />
1806                         <field reporter:label="Facet Field" name="facet_field" reporter:datatype="bool" />
1807                         <field reporter:label="Facet XPath" name="facet_xpath" reporter:datatype="text" />
1808                 </fields>
1809                 <links>
1810                         <link field="field_class" reltype="has_a" key="name" map="" class="cmc"/>
1811                 </links>
1812         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1813             <actions>
1814                 <create permission="CREATE_METABIB_FIELD" global_required="true"/>
1815                 <retrieve/>
1816                 <update permission="UPDATE_METABIB_FIELD" global_required="true"/>
1817                 <delete permission="DELETE_METABIB_FIELD" global_required="true"/>
1818             </actions>
1819         </permacrud>
1820         </class>
1821         <class id="cbfp" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::biblio_fingerprint" oils_persist:tablename="config.biblio_fingerprint" reporter:label="Fingerprint Definition">
1822                 <fields oils_persist:primary="id" oils_persist:sequence="config.biblio_fingerprint_id_seq">
1823                         <field name="id" reporter:datatype="id" />
1824                         <field name="name" reporter:datatype="text"/>
1825                         <field name="xpath" reporter:datatype="text"/>
1826                         <field name="format" reporter:datatype="link"/>
1827                         <field name="first_word" reporter:datatype="bool" />
1828                 </fields>
1829                 <links/>
1830         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1831             <actions>
1832                 <create permission="CREATE_BIBLIO_FINGERPRINT" global_required="true"/>
1833                 <retrieve/>
1834                 <update permission="UPDATE_BIBLIO_FINGERPRINT" global_required="true"/>
1835                 <delete permission="DELETE_BIBLIO_FINGERPRINT" global_required="true"/>
1836             </actions>
1837         </permacrud>
1838         </class>
1839         <class id="cam" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::audience_map" oils_persist:tablename="config.audience_map" reporter:label="Audience Map" oils_persist:field_safe="true">
1840                 <fields oils_persist:primary="code" oils_persist:sequence="">
1841                         <field reporter:label="Audience Code" name="code" reporter:selector="value" reporter:datatype="text"/>
1842                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true" />
1843                         <field reporter:label="Audience" name="value"  reporter:datatype="text" oils_persist:i18n="true"/>
1844                 </fields>
1845                 <links/>
1846         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1847             <actions>
1848                 <create permission="CREATE_MARC_CODE" global_required="true"/>
1849                 <retrieve/>
1850                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
1851                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1852             </actions>
1853         </permacrud>
1854         </class>
1855         <class id="cifm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::item_form_map" oils_persist:tablename="config.item_form_map" reporter:label="Item Form Map" oils_persist:field_safe="true">
1856                 <fields oils_persist:primary="code" oils_persist:sequence="">
1857                         <field reporter:label="Item Form Code" name="code" reporter:selector="value" reporter:datatype="text"/>
1858                         <field reporter:label="Item Form" name="value"  reporter:datatype="text" oils_persist:i18n="true"/>
1859                 </fields>
1860                 <links/>
1861         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1862             <actions>
1863                 <create permission="ADMIN_MARC_CODE" global_required="true"/>
1864                 <retrieve/>
1865                 <update permission="ADMIN_MARC_CODE" global_required="true"/>
1866                 <delete permission="ADMIN_MARC_CODE" global_required="true"/>
1867             </actions>
1868         </permacrud>
1869         </class>
1870     <class id="acnc" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="asset::call_number_class" oils_persist:tablename="asset.call_number_class" reporter:label="Call number classification scheme">
1871         <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_class_id_seq">
1872             <field reporter:label="Call number class ID" name="id" reporter_datatype="id"/>
1873             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1874             <field reporter:label="Normalizer function" name="normalizer" reporter:datatype="text"/>
1875             <field reporter:label="Call number fields" name="field" reporter:datatype="text"/>
1876         </fields>
1877         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1878             <actions>
1879                 <retrieve/>
1880             </actions>
1881         </permacrud>
1882     </class>
1883         <class id="acns" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="asset::call_number_suffix" oils_persist:tablename="asset.call_number_suffix" reporter:label="Call Number/Volume Suffix">
1884                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_suffix_id_seq">
1885                         <field reporter:label="ID" name="id" reporter:datatype="id" />
1886                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
1887                         <field reporter:label="Label Sort Key" name="label_sortkey" reporter:datatype="text"/>
1888                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
1889                 </fields>
1890                 <links>
1891                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1892                 </links>
1893         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1894             <actions>
1895                 <create permission="CREATE_VOLUME_SUFFIX" context_field="owning_lib"/>
1896                 <retrieve/>
1897                 <update permission="UPDATE_VOLUME_SUFFIX" context_field="owning_lib"/>
1898                 <delete permission="DELETE_VOLUME_SUFFIX" context_field="owning_lib"/>
1899             </actions>
1900         </permacrud>
1901         </class>
1902         <class id="acnp" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="asset::call_number_prefix" oils_persist:tablename="asset.call_number_prefix" reporter:label="Call Number/Volume Prefix">
1903                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_prefix_id_seq">
1904                         <field reporter:label="ID" name="id" reporter:datatype="id" />
1905                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
1906                         <field reporter:label="Label Sort Key" name="label_sortkey" reporter:datatype="text"/>
1907                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
1908                 </fields>
1909                 <links>
1910                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1911                 </links>
1912         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1913             <actions>
1914                 <create permission="CREATE_VOLUME_PREFIX" context_field="owning_lib"/>
1915                 <retrieve/>
1916                 <update permission="UPDATE_VOLUME_PREFIX" context_field="owning_lib"/>
1917                 <delete permission="DELETE_VOLUME_PREFIX" context_field="owning_lib"/>
1918             </actions>
1919         </permacrud>
1920         </class>
1921         <class id="acn" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="asset::call_number" oils_persist:tablename="asset.call_number" reporter:label="Call Number/Volume">
1922                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_id_seq">
1923                         <field reporter:label="Copies" name="copies" oils_persist:virtual="true" reporter:datatype="link"/>
1924                         <field reporter:label="Create Date/Time" name="create_date" reporter:datatype="timestamp"/>
1925                         <field reporter:label="Creating User" name="creator" reporter:datatype="link"/>
1926                         <field reporter:label="Is Deleted" name="deleted" reporter:datatype="bool"/>
1927                         <field reporter:label="Last Edit Date/Time" name="edit_date" reporter:datatype="timestamp"/>
1928                         <field reporter:label="Last Editing User" name="editor" reporter:datatype="link"/>
1929                         <field reporter:label="Call Number/Volume ID" name="id" reporter:datatype="id" />
1930                         <field reporter:label="Call Number Label" name="label" reporter:datatype="text"/>
1931                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
1932                         <field reporter:label="Bib Record" name="record" reporter:datatype="link"/>
1933                         <field reporter:label="Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
1934                         <field reporter:label="URI Maps" name="uri_maps" oils_persist:virtual="true" reporter:datatype="link"/>
1935                         <field reporter:label="URIs" name="uris" oils_persist:virtual="true" reporter:datatype="link"/>
1936                         <field reporter:label="Sort Key" name="label_sortkey" reporter:datatype="text"/>
1937                         <field reporter:label="Classification Scheme" name="label_class" reporter:datatype="link"/>
1938                         <field reporter:label="Prefix" name="prefix" reporter:datatype="link"/>
1939                         <field reporter:label="Suffix" name="suffix" reporter:datatype="link"/>
1940                 </fields>
1941                 <links>
1942                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1943                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1944                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1945                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1946                         <link field="notes" reltype="has_many" key="call_number" map="" class="acnn"/>
1947                         <link field="copies" reltype="has_many" key="call_number" map="" class="acp"/>
1948                         <link field="uris" reltype="has_many" key="call_number" map="uri" class="auricnm"/>
1949                         <link field="uri_maps" reltype="has_many" key="call_number" map="" class="auricnm"/>
1950                         <link field="label_class" reltype="has_a" key="id" map="" class="acnc"/>
1951                         <link field="prefix" reltype="has_a" key="id" map="" class="acnp"/>
1952                         <link field="suffix" reltype="has_a" key="id" map="" class="acns"/>
1953                 </links>
1954         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1955             <actions>
1956                 <create permission="CREATE_VOLUME" context_field="owning_lib"/>
1957                 <retrieve/>
1958                 <update permission="UPDATE_VOLUME" context_field="owning_lib"/>
1959                 <delete permission="DELETE_VOLUME" context_field="owning_lib"/>
1960             </actions>
1961         </permacrud>
1962         </class>
1963         <class id="auri" controller="open-ils.cstore" oils_obj:fieldmapper="asset::uri" oils_persist:tablename="asset.uri" reporter:label="Electronic Access URI">
1964                 <fields oils_persist:primary="id" oils_persist:sequence="asset.uri_id_seq">
1965                         <field reporter:label="URI ID" name="id" reporter:datatype="id"/>
1966                         <field reporter:label="URI" name="href" reporter:datatype="text"/>
1967                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
1968                         <field reporter:label="Use Information" name="use_restriction" reporter:datatype="text"/>
1969                         <field reporter:label="Active" name="active" reporter:datatype="bool"/>
1970                         <field reporter:label="Call Number Maps" name="call_number_maps" oils_persist:virtual="true" reporter:datatype="link"/>
1971                         <field reporter:label="Call Numbers" name="call_numbers" oils_persist:virtual="true" reporter:datatype="link"/>
1972                 </fields>
1973                 <links>
1974                         <link field="call_numbers" reltype="has_many" key="uri" map="call_number" class="auricnm"/>
1975                         <link field="call_number_maps" reltype="has_many" key="uri" map="" class="auricnm"/>
1976         </links>
1977         </class>
1978         <class id="auricnm" controller="open-ils.cstore" oils_obj:fieldmapper="asset::uri_call_number_map" oils_persist:tablename="asset.uri_call_number_map" reporter:label="Electronic Access URI to Call Number Map">
1979                 <fields oils_persist:primary="id" oils_persist:sequence="asset.uri_call_number_map_id_seq">
1980                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
1981                         <field reporter:label="URI" name="uri" reporter:datatype="int"/>
1982                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
1983                 </fields>
1984                 <links>
1985                         <link field="uri" reltype="has_a" key="id" map="" class="auri"/>
1986                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
1987                 </links>
1988         </class>
1989         <class id="cst" controller="open-ils.cstore" oils_obj:fieldmapper="config::standing" oils_persist:tablename="config.standing" reporter:label="Standing Penalty">
1990                 <fields oils_persist:primary="id" oils_persist:sequence="config.standing_id_seq">
1991                         <field name="id" reporter:datatype="id" />
1992                         <field name="value" oils_persist:i18n="true" />
1993                 </fields>
1994                 <links/>
1995         </class>
1996         <class id="mous" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="money::open_user_summary" oils_persist:tablename="money.open_usr_summary" reporter:label="Open User Summary">
1997                 <fields oils_persist:primary="usr" oils_persist:sequence="">
1998                         <field name="balance_owed" reporter:datatype="money" />
1999                         <field name="total_owed" reporter:datatype="money" />
2000                         <field name="total_paid" reporter:datatype="money" />
2001                         <field name="usr" reporter:datatype="link"/>
2002                 </fields>
2003                 <links>
2004                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2005         </links>
2006         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2007             <actions>
2008                 <retrieve permission="VIEW_USER">
2009                     <context link="usr" field="home_ou"/>
2010                 </retrieve>
2011             </actions>
2012         </permacrud>
2013         </class>
2014         <class id="mct" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="money::collections_tracker" oils_persist:tablename="money.collections_tracker" reporter:label="Collections Tracker">
2015                 <fields oils_persist:primary="id" oils_persist:sequence="money.collections_tracker_id_seq">
2016                         <field name="collector" />
2017                         <field name="enter_time" reporter:datatype="timestamp"/>
2018                         <field name="id" reporter:datatype="id" />
2019                         <field name="location" reporter:datatype="link"/>
2020                         <field name="usr" reporter:datatype="link"/>
2021                 </fields>
2022                 <links>
2023                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2024                         <link field="collector" reltype="has_a" key="id" map="" class="au"/>
2025                         <link field="location" reltype="has_a" key="id" map="" class="aou"/>
2026                 </links>
2027         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2028             <actions>
2029                 <create permission="money.collections_tracker.create" context_field="location"/>
2030                 <retrieve permission="money.collections_tracker.create" context_field="location"/> 
2031                 <delete permission="money.collections_tracker.create" context_field="location"/>
2032             </actions>
2033         </permacrud>
2034         </class>
2035         <class id="bre" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="biblio::record_entry" oils_persist:tablename="biblio.record_entry" reporter:core="true" reporter:label="Bibliographic Record">
2036                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_entry_id_seq">
2037                         <field reporter:label="Call Numbers" name="call_numbers" oils_persist:virtual="true" reporter:datatype="link"/>
2038                         <field reporter:label="Fixed Field Entry" name="fixed_fields" oils_persist:virtual="true" reporter:datatype="link"/>
2039                         <field reporter:label="Is Active?" name="active" reporter:datatype="bool"/>
2040                         <field reporter:label="Record Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
2041                         <field reporter:label="Record Creator" name="creator" reporter:datatype="link"/>
2042                         <field reporter:label="Is Deleted?" name="deleted" reporter:datatype="bool"/>
2043                         <field reporter:label="Last Edit Data/Time" name="edit_date" reporter:datatype="timestamp"/>
2044                         <field reporter:label="Last Editing User" name="editor" reporter:datatype="link"/>
2045                         <field reporter:label="Fingerprint" name="fingerprint"  reporter:datatype="text"/>
2046                         <field reporter:label="Record ID" name="id" reporter:datatype="id" />
2047                         <field reporter:label="Last Transaction ID" name="last_xact_id"  reporter:datatype="text"/>
2048                         <field reporter:label="MARC21Slim" name="marc"  reporter:datatype="text"/>
2049                         <field reporter:label="Overall Quality" name="quality" reporter:datatype="int" />
2050                         <field reporter:label="Record Source" name="source" reporter:datatype="link"/>
2051                         <field reporter:label="TCN Source" name="tcn_source"  reporter:datatype="text"/>
2052                         <field reporter:label="TCN Value" name="tcn_value"  reporter:datatype="text"/>
2053                         <field reporter:label="Owner" name="owner"  reporter:datatype="org_unit"/>
2054                         <field reporter:label="Share Depth" name="share_depth"  reporter:datatype="int"/>
2055                         <field reporter:label="Metarecord" name="metarecord" oils_persist:virtual="true" reporter:datatype="link"/>
2056                         <field reporter:label="Language Code" name="language" oils_persist:virtual="true" reporter:datatype="link"/>
2057                         <field reporter:label="Non-MARC Record Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2058                         <field reporter:label="Indexed Keyword Field Entries" name="keyword_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2059                         <field reporter:label="Indexed Subject Field Entries" name="subject_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2060                         <field reporter:label="Indexed Title Field Entries" name="title_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2061                         <field reporter:label="Indexed Identifier Field Entries" name="identifier_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2062                         <field reporter:label="Indexed Author Field Entries" name="author_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2063                         <field reporter:label="Indexed Series Field Entries" name="series_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2064                         <field reporter:label="Flattened MARC Fields " name="full_record_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2065                         <field reporter:label="Simple Record Extracts " name="simple_record" oils_persist:virtual="true" reporter:datatype="link"/>
2066                         <field reporter:label="Authority Links" name="authority_links" oils_persist:virtual="true" reporter:datatype="link"/>
2067                         <field reporter:label="Subscriptions" name="subscriptions" oils_persist:virtual="true" reporter:datatype="link"/>
2068                         <field reporter:label="SVF Attributes" name="attrs" oils_persist:virtual="true" reporter:datatype="link"/>
2069                 </fields>
2070                 <links>
2071                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2072                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2073                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2074                         <link field="simple_record" reltype="might_have" key="id" map="" class="rmsr"/>
2075                         <link field="metarecord" reltype="might_have" key="source" map="metarecord" class="mmrsm"/>
2076                         <link field="call_numbers" reltype="has_many" key="record" map="" class="acn"/>
2077                         <link field="keyword_field_entries" reltype="has_many" key="source" map="" class="mkfe"/>
2078                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="mrd"/>
2079                         <link field="language" reltype="might_have" key="record" map="item_lang" class="mrd"/>
2080                         <link field="subject_field_entries" reltype="has_many" key="source" map="" class="msfe"/>
2081                         <link field="title_field_entries" reltype="has_many" key="source" map="" class="mtfe"/>
2082                         <link field="identifier_field_entries" reltype="has_many" key="source" map="" class="mife"/>
2083                         <link field="notes" reltype="has_many" key="record" map="" class="bren"/>
2084                         <link field="author_field_entries" reltype="has_many" key="source" map="" class="mafe"/>
2085                         <link field="series_field_entries" reltype="has_many" key="source" map="" class="msefe"/>
2086                         <link field="full_record_entries" reltype="has_many" key="record" map="" class="mfr"/>
2087                         <link field="authority_links" reltype="has_many" key="bib" map="" class="abl"/>
2088                         <link field="subscriptions" reltype="has_many" key="record_entry" map="" class="ssub"/>
2089                         <link field="attrs" reltype="might_have" key="id" map="" class="mra"/>
2090                 </links>
2091         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2092             <actions>
2093                 <create permission="CREATE_MARC IMPORT_MARC" global_required="true"/>
2094                 <retrieve/>
2095                 <update permission="UPDATE_MARC" global_required="true"/>
2096             </actions>
2097         </permacrud>
2098         </class>
2099         <class id="aouhoo" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="actor::org_unit::hours_of_operation" oils_persist:tablename="actor.hours_of_operation" reporter:label="Hours of Operation">
2100                 <fields oils_persist:primary="id">
2101                         <field name="dow_0_close" />
2102                         <field name="dow_0_open" />
2103                         <field name="dow_1_close" />
2104                         <field name="dow_1_open" />
2105                         <field name="dow_2_close" />
2106                         <field name="dow_2_open" />
2107                         <field name="dow_3_close" />
2108                         <field name="dow_3_open" />
2109                         <field name="dow_4_close" />
2110                         <field name="dow_4_open" />
2111                         <field name="dow_5_close" />
2112                         <field name="dow_5_open" />
2113                         <field name="dow_6_close" />
2114                         <field name="dow_6_open" />
2115                         <field name="id" reporter:datatype="id" />
2116                         <field name="org_unit" oils_persist:virtual="true" reporter:datatype="org_unit"/>
2117                 </fields>
2118                 <links>
2119                         <link field="id" reltype="might_have" key="id" map="" class="aou"/>
2120                 </links>
2121         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2122             <actions>
2123                 <create permission="CREATE_HOURS_OF_OPERATION" context_field="id"/>
2124                 <retrieve/>
2125                 <update permission="UPDATE_HOURS_OF_OPERATION" context_field="id"/>
2126                 <delete permission="DELETE_HOURS_OF_OPERATION" context_field="id"/>
2127             </actions>
2128         </permacrud>
2129         </class>
2130         <class id="bmp" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="biblio::monograph_part" oils_persist:tablename="biblio.monograph_part" reporter:label="Monograph Parts" oils_persist:field_safe="true">
2131                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.monograph_part_id_seq">
2132                         <field name="id" reporter:datatype="id" />
2133                         <field name="record" reporter:datatype="link"/>
2134                         <field name="label" reporter:datatype="text"/>
2135                         <field name="label_sortkey" reporter:datatype="text"/>
2136                 </fields>
2137                 <links>
2138                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
2139                 </links>
2140         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2141             <actions>
2142                 <create permission="CREATE_MONOGRAPH_PART" global_required="true"/>
2143                 <retrieve/>
2144                 <update permission="UPDATE_MONOGRAPH_PART" global_required="true"/>
2145                 <delete permission="DELETE_MONOGRAPH_PART" global_required="true"/>
2146             </actions>
2147         </permacrud>
2148         </class>
2149         <class id="acpm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="asset::copy_part_map" oils_persist:tablename="asset.copy_part_map" reporter:label="Copy Monograph Part Map">
2150                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_part_map_id_seq">
2151                         <field name="id" reporter:datatype="id" />
2152                         <field name="target_copy" reporter:datatype="link" />
2153                         <field name="part" reporter:datatype="link"/>
2154                 </fields>
2155                 <links>
2156                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
2157                         <link field="part" reltype="has_a" key="id" map="" class="bmp"/>
2158                 </links>
2159         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2160             <actions>
2161                 <create permission="MAP_MONOGRAPH_PART" global_required="true"/>
2162                 <retrieve/>
2163                 <update permission="MAP_MONOGRAPH_PART" global_required="true"/>
2164                 <delete permission="MAP_MONOGRAPH_PART" global_required="true"/>
2165             </actions>
2166         </permacrud>
2167         </class>
2168         <class id="aoucd" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="actor::org_unit::closed_date" oils_persist:tablename="actor.org_unit_closed" reporter:label="Closed Dates">
2169                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_closed_id_seq">
2170                         <field name="close_end" reporter:datatype="timestamp" />
2171                         <field name="close_start" reporter:datatype="timestamp" />
2172                         <field name="id" reporter:datatype="id" />
2173                         <field name="org_unit" reporter:datatype="org_unit"/>
2174                         <field name="reason" reporter:datatype="text"/>
2175                 </fields>
2176                 <links>
2177                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2178                 </links>
2179         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2180             <actions>
2181                 <create permission="CREATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2182                 <retrieve/>
2183                 <update permission="UPDATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2184                 <delete permission="DELETE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2185             </actions>
2186         </permacrud>
2187         </class>
2188         <class id="crcd" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::rules::circ_duration" oils_persist:tablename="config.rule_circ_duration" reporter:label="Circulation Duration Rule">
2189                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_circ_duration_id_seq">
2190                         <field name="extended" reporter:datatype="interval"/>
2191                         <field name="id" reporter:datatype="id" reporter:selector="name"/>
2192                         <field name="max_renewals" reporter:datatype="int" />
2193                         <field name="name" reporter:datatype="text"/>
2194                         <field name="normal" reporter:datatype="interval"/>
2195                         <field name="shrt" reporter:datatype="interval"/>
2196                 </fields>
2197                 <links>
2198                 </links>
2199         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2200             <actions>
2201                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2202                 <retrieve/>
2203                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2204                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2205             </actions>
2206         </permacrud>
2207         </class>
2208
2209         <class id="chdd" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::hard_due_date" oils_persist:tablename="config.hard_due_date" reporter:label="Hard Due Date">
2210                 <fields oils_persist:primary="id" oils_persist:sequence="config.hard_due_date_id_seq">
2211                         <field reporter:label="ID" name="id" reporter:datatype="id" reporter:selector="name"/>
2212                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
2213             <field reporter:label="Always Use?" name="forceto" reporter:datatype="bool"/>
2214                         <field reporter:label="Current Ceiling Date" name="ceiling_date" reporter:datatype="timestamp"/>
2215             <field reporter:label="Owner" name="owner" reporter:datatype="org_unit"/>
2216                 </fields>
2217                 <links>
2218             <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2219                 </links>
2220                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2221             <actions>
2222                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2223                 <retrieve/>
2224                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2225                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2226             </actions>
2227                 </permacrud>
2228         </class>
2229
2230         <class id="chddv" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::hard_due_date_values" oils_persist:tablename="config.hard_due_date_values" reporter:label="Hard Due Date Values">
2231                 <fields oils_persist:primary="id" oils_persist:sequence="config.hard_due_date_values_id_seq">
2232                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
2233                         <field reporter:label="Hard Due Date" name="hard_due_date" reporter:datatype="link"/>
2234                         <field reporter:label="Ceiling Date" name="ceiling_date" reporter:datatype="timestamp"/>
2235             <field reporter:label="Active Date" name="active_date" reporter:datatype="timestamp"/>
2236                 </fields>
2237                 <links>
2238                         <link field="hard_due_date" reltype="has_a" key="id" map="" class="chdd"/>
2239                 </links>
2240                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2241             <actions>
2242                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2243                 <retrieve/>
2244                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2245                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2246             </actions>
2247                 </permacrud>
2248         </class>
2249
2250         <class id="mobts" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_billable_transaction_summary" oils_persist:tablename="money.open_billable_xact_summary" reporter:label="Open Billable Transaction Summary">
2251                 <fields oils_persist:primary="id" oils_persist:sequence="">
2252                         <field name="balance_owed" reporter:datatype="money"/>
2253                         <field name="id" reporter:datatype="id" />
2254                         <field name="last_billing_note" reporter:datatype="text"/>
2255                         <field name="last_billing_ts" reporter:datatype="timestamp"/>
2256                         <field name="last_billing_type" reporter:datatype="text"/>
2257                         <field name="last_payment_note" reporter:datatype="text"/>
2258                         <field name="last_payment_ts" reporter:datatype="timestamp"/>
2259                         <field name="last_payment_type" reporter:datatype="text"/>
2260                         <field name="total_owed" reporter:datatype="money"/>
2261                         <field name="total_paid" reporter:datatype="money"/>
2262                         <field name="usr" reporter:datatype="link"/>
2263                         <field name="xact_finish" reporter:datatype="timestamp" />
2264                         <field name="xact_start" reporter:datatype="timestamp" />
2265                         <field name="xact_type" reporter:datatype="text"/>
2266                         <field name="xact" oils_persist:virtual="true" reporter:datatype="link"/>
2267                         <field name="grocery" oils_persist:virtual="true" reporter:datatype="link"/>
2268                         <field name="circulation" oils_persist:virtual="true" reporter:datatype="link"/>
2269                         <field name="reservation" oils_persist:virtual="true" reporter:datatype="link"/>
2270                         <field name="billing_location" reporter:datatype="link"/>
2271                 </fields>
2272                 <links>
2273                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2274                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
2275                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2276                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
2277                         <link field="reservation" reltype="might_have" key="id" map="" class="bresv"/>
2278                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
2279                 </links>
2280         </class>
2281         <class id="au" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user" oils_persist:tablename="actor.usr" reporter:core="true" reporter:label="ILS User">
2282                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_id_seq">
2283                         <field reporter:label="All Addresses" name="addresses" oils_persist:virtual="true" reporter:datatype="link"/>
2284                         <field reporter:label="All Library Cards" name="cards" oils_persist:virtual="true" reporter:datatype="link"/>
2285                         <field reporter:label="All Circulations" name="checkouts" oils_persist:virtual="true" reporter:datatype="link"/>
2286                         <field reporter:label="All Hold Requests" name="hold_requests" oils_persist:virtual="true" reporter:datatype="link"/>
2287                         <field reporter:label="All Permissions" name="permissions" oils_persist:virtual="true" reporter:datatype="link"/>
2288                         <field reporter:label="All User Settings" name="settings" oils_persist:virtual="true" reporter:datatype="link"/>
2289                         <field reporter:label="Standing Penalties" name="standing_penalties" oils_persist:virtual="true" reporter:datatype="link"/>
2290                         <field reporter:label="Statistical Category Entries" name="stat_cat_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2291                         <field reporter:label="Survey Responses" name="survey_responses" oils_persist:virtual="true" reporter:datatype="link"/>
2292                         <field reporter:label="Workstation Org Unit" name="ws_ou" oils_persist:virtual="true" reporter:datatype="link"/>
2293                         <field reporter:label="Workstation ID" name="wsid" oils_persist:virtual="true" reporter:datatype="link"/>
2294                         <field reporter:label="Active" name="active" reporter:datatype="bool"/>
2295                         <field reporter:label="Alert Message" name="alert_message"  reporter:datatype="text"/>
2296                         <field reporter:label="Barred" name="barred" reporter:datatype="bool"/>
2297                         <field reporter:label="Physical Address" name="billing_address" reporter:datatype="link"/>
2298                         <field reporter:label="Current Library Card" name="card" reporter:datatype="link"/>
2299                         <field reporter:label="Claims-returned Count" name="claims_returned_count" reporter:datatype="int" />
2300                         <field reporter:label="Claims Never Checked Out Count" name="claims_never_checked_out_count" reporter:datatype="int" />
2301                         <field reporter:label="Record Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
2302                         <field reporter:label="User Credit Balance" name="credit_forward_balance" reporter:datatype="money" />
2303                         <field reporter:label="Daytime Phone" name="day_phone"  reporter:datatype="text"/>
2304                         <field reporter:label="Date of Birth" name="dob" reporter:datatype="timestamp"/>
2305                         <field reporter:label="Email Address" name="email"  reporter:datatype="text"/>
2306                         <field reporter:label="Evening Phone" name="evening_phone"  reporter:datatype="text"/>
2307                         <field reporter:label="Privilege Expiration Date" name="expire_date" reporter:datatype="timestamp"/>
2308                         <field reporter:label="Last Name" name="family_name"  reporter:datatype="text"/>
2309                         <field reporter:label="First Name" name="first_given_name"  reporter:datatype="text"/>
2310                         <field reporter:label="Home Library" name="home_ou" reporter:datatype="org_unit"/>
2311                         <field reporter:label="User ID" name="id" reporter:datatype="id" />
2312                         <field reporter:label="Primary Identification Type" name="ident_type" reporter:datatype="link"/>
2313                         <field reporter:label="Secondary Identification Type" name="ident_type2" reporter:datatype="link"/>
2314                         <field reporter:label="Primary Identification" name="ident_value"  reporter:datatype="text"/>
2315                         <field reporter:label="Secondary Identification" name="ident_value2"  reporter:datatype="text"/>
2316                         <field reporter:label="Last Transaction ID" name="last_xact_id" reporter:datatype="text"/>
2317                         <field reporter:label="Mailing Address" name="mailing_address" reporter:datatype="link"/>
2318                         <field reporter:label="Is Group Lead Account" name="master_account" reporter:datatype="bool"/>
2319                         <field reporter:label="Internet Access Level" name="net_access_level" reporter:datatype="link"/>
2320                         <field reporter:label="Other Phone" name="other_phone"  reporter:datatype="text"/>
2321                         <field reporter:label="Password" name="passwd"  reporter:datatype="text"/>
2322                         <field reporter:label="Photo URL" name="photo_url"  reporter:datatype="text"/>
2323                         <field reporter:label="Prefix" name="prefix"  reporter:datatype="text"/>
2324                         <field reporter:label="Main (Profile) Permission Group" name="profile" reporter:datatype="link"/>
2325                         <field reporter:label="Middle Name" name="second_given_name"  reporter:datatype="text"/>
2326                         <field reporter:label="Standing (unused)" name="standing" reporter:datatype="link"/>
2327                         <field reporter:label="Suffix/Title" name="suffix"  reporter:datatype="text"/>
2328                         <field reporter:label="Is Super User" name="super_user" reporter:datatype="bool"/>
2329                         <field reporter:label="Family Linkage or other Group" name="usrgroup" reporter:datatype="int"/>
2330                         <field reporter:label="OPAC/Staff Client User Name" name="usrname"  reporter:datatype="text"/>
2331                         <field reporter:label="OPAC/Staff Client Holds Alias" name="alias"  reporter:datatype="text"/>
2332                         <field reporter:label="Juvenile" name="juvenile"  reporter:datatype="bool"/>
2333                         <field reporter:label="Additional Permission Groups" name="groups" oils_persist:virtual="true" reporter:datatype="link"/>
2334                         <field reporter:label="Is Deleted" name="deleted" reporter:datatype="bool"/>
2335                         <field reporter:label="User Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2336                         <field reporter:label="Demographic Info" name="demographic" oils_persist:virtual="true" reporter:datatype="link"/>
2337                         <field reporter:label="Billable Transactions" name="billable_transactions" oils_persist:virtual="true" reporter:datatype="link"/>
2338                         <field reporter:label="Money Summary" name="money_summary" oils_persist:virtual="true" reporter:datatype="link"/>
2339                         <field reporter:label="Open Billable Transactions" name="open_billable_transactions_summary" oils_persist:virtual="true" reporter:datatype="link"/>
2340                         <field reporter:label="Checkins" name="checkins" oils_persist:virtual="true" reporter:datatype="link"/>
2341                         <field reporter:label="Circulations Performed as Staff" name="performed_circulations" oils_persist:virtual="true" reporter:datatype="link"/>
2342                         <field reporter:label="Fund Allocation Percentages" name="fund_alloc_pcts" oils_persist:virtual="true" reporter:datatype="link"/>
2343                         <field reporter:label="Reservations" name="reservations" oils_persist:virtual="true" reporter:datatype="link"/>
2344                 </fields>
2345                 <links>
2346                         <link field="demographic" reltype="might_have" key="id" map="" class="rud"/>
2347                         <link field="net_access_level" reltype="has_a" key="id" map="" class="cnal"/>
2348                         <link field="profile" reltype="has_a" key="id" map="" class="pgt"/>
2349                         <link field="ident_type" reltype="has_a" key="id" map="" class="cit"/>
2350                         <link field="billing_address" reltype="has_a" key="id" map="" class="aua"/>
2351                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aua"/>
2352                         <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
2353                         <link field="standing" reltype="has_a" key="id" map="" class="cst"/>
2354                         <link field="card" reltype="has_a" key="id" map="" class="ac"/>
2355                         <link field="ident_type2" reltype="has_a" key="id" map="" class="cit"/>
2356                         <link field="stat_cat_entries" reltype="has_many" key="target_usr" map="" class="actscecm"/>
2357                         <link field="groups" reltype="has_many" key="usr" map="grp" class="pugm"/>
2358                         <link field="usrgroup" reltype="has_many" key="usrgroup" map="" class="au"/>
2359                         <link field="checkouts" reltype="has_many" key="usr" map="" class="circ"/>
2360                         <link field="hold_requests" reltype="has_many" key="usr" map="" class="circ"/>
2361                         <link field="permissions" reltype="has_many" key="usr" map="perm" class="pupm"/>
2362                         <link field="settings" reltype="has_many" key="usr" map="" class="aus"/>
2363                         <link field="billable_transactions" reltype="has_many" key="usr" map="" class="mbt"/>
2364                         <link field="open_billable_transactions_summary" reltype="has_many" key="usr" map="" class="mobts"/>
2365                         <link field="money_summary" reltype="might_have" key="usr" map="" class="mus"/>
2366                         <link field="standing_penalties" reltype="has_many" key="usr" map="" class="ausp"/>
2367                         <link field="addresses" reltype="has_many" key="usr" map="" class="aua"/>
2368                         <link field="survey_responses" reltype="has_many" key="usr" map="" class="asvr"/>
2369                         <link field="notes" reltype="has_many" key="usr" map="" class="aun"/>
2370                         <link field="checkins" reltype="has_many" key="checkin_staff" map="" class="circ"/>
2371                         <link field="cards" reltype="has_many" key="usr" map="" class="ac"/>
2372                         <link field="performed_circulations" reltype="has_many" key="circ_staff" map="" class="circ"/>
2373                         <link field="fund_alloc_pcts" reltype="has_many" key="allocator" map="" class="acqfap"/>
2374                         <link field="reservations" reltype="has_many" key="usr" map="" class="bresv"/>
2375                 </links>
2376         </class>
2377
2378         <class id="csg" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::settings_group" oils_persist:tablename="config.settings_group" reporter:label="Settings Group">
2379                 <fields oils_persist:primary="name">
2380                         <field name="name" reporter:datatype="text"/>
2381                         <field name="label" reporter:datatype="text" oils_persist:i18n="true"/>
2382                 </fields>
2383                 <links/>
2384                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2385                         <actions>
2386                                 <create permission="ADMIN_USER_SETTING_GROUP" global_required="true"/>
2387                                 <retrieve/>
2388                                 <update permission="ADMIN_USER_SETTING_GROUP" global_required="true"/>
2389                                 <delete permission="ADMIN_USER_SETTING_GROUP" global_required="true"/>
2390                         </actions>
2391                 </permacrud>
2392         </class>
2393         <class id="cust" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::usr_setting_type" oils_persist:tablename="config.usr_setting_type" reporter:label="User Setting Type">
2394                 <fields oils_persist:primary="name">
2395                         <field name="name" reporter:label="Name" reporter:datatype="text"/>
2396                         <field name="label" reporter:label="Label" reporter:datatype="text"/>
2397                         <field name="description" reporter:label="Description" reporter:datatype="text"/>
2398                         <field name="datatype" reporter:label="Datatype" reporter:datatype="text"/>
2399                         <field name="fm_class" reporter:label="Fielmapper Class" reporter:datatype="text"/>
2400                         <field name="grp" reporter:label="Settings Group" reporter:datatype="link"/>
2401                         <field name="opac_visible" reporter:label="OPAC/Patron Visible" reporter:datatype="bool"/>
2402                 </fields>
2403                 <links>
2404                         <link field="name" reltype="has_many" key="name" map="" class="aus"/>
2405                         <link field="grp" reltype="has_a" key="name" map="" class="csg"/>
2406                 </links>
2407                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2408                         <actions>
2409                                 <create permission="ADMIN_USER_SETTING_TYPE" global_required="true"/>
2410                                 <retrieve/>
2411                                 <update permission="ADMIN_USER_SETTING_TYPE" global_required="true"/>
2412                                 <delete permission="ADMIN_USER_SETTING_TYPE" global_required="true"/>
2413                         </actions>
2414                 </permacrud>
2415         </class>
2416         <class id="coust" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::org_unit_setting_type" oils_persist:tablename="config.org_unit_setting_type" reporter:label="Organizational Unit Setting Type">
2417                 <fields oils_persist:primary="name">
2418                         <field name="name" reporter:datatype="text"/>
2419                         <field name="label" reporter:datatype="text"/>
2420                         <field name="description" reporter:datatype="text"/>
2421                         <field name="datatype" reporter:datatype="text"/>
2422                         <field name="view_perm" reporter:datatype="link"/>
2423                         <field name="update_perm" reporter:datatype="link"/>
2424                         <field name="fm_class" reporter:datatype="text"/>
2425                         <field name="grp" reporter:datatype="link"/>
2426                 </fields>
2427                 <links>
2428                         <link field="name" reltype="has_many" key="name" map="" class="aous"/>
2429                         <link field="view_perm" reltype="has_a" key="id" map="" class="ppl"/>
2430           &n