79b87387366cf5c6806d77fecefa84b76ad41aa8
[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" reporter:datatype="int"/>
120             <field reporter:label="Start Time" name="start_time" reporter:datatype="timestamp"/>
121             <field reporter:label="Checkout Workstation" name="checkout_workstation" reporter:datatype="text"/>
122             <field reporter:label="Last Renewal Time" name="last_renewal_time" reporter:datatype="timestamp"/>
123             <field reporter:label="Last Stop Fines" name="last_stop_fines" reporter:datatype="text"/>
124             <field reporter:label="Last Stop Fines Time" name="last_stop_fines_time" reporter:datatype="timestamp"/>
125             <field reporter:label="Last Renewal Workstation" name="last_renewal_workstation" reporter:datatype="text"/>
126             <field reporter:label="Last Checkin Workstation" name="last_checkin_workstation" reporter:datatype="text"/>
127             <field reporter:label="Last Checkin Time" name="last_checkin_time" reporter:datatype="timestamp"/>
128             <field reporter:label="Last Checkin Scan Time" name="last_checkin_scan_time" reporter: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                         <field reporter:label="Min. Quality Ratio" name="lwm_ratio" reporter:datatype="float"/>
152                 </fields>
153                 <links>
154                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
155                 </links>
156                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
157                         <actions>
158                                 <create permission="ADMIN_MERGE_PROFILE CREATE_MERGE_PROFILE" context_field="owner"/>
159                                 <retrieve permission="ADMIN_MERGE_PROFILE CREATE_MERGE_PROFILE UPDATE_MERGE_PROFILE DELETE_MERGE_PROFILE VIEW_MERGE_PROFILE" context_field="owner"/>
160                                 <update permission="ADMIN_MERGE_PROFILE UPDATE_MERGE_PROFILE" context_field="owner"/>
161                                 <delete permission="ADMIN_MERGE_PROFILE DELETE_MERGE_PROFILE" context_field="owner"/>
162                         </actions>
163                 </permacrud>
164         </class>
165
166         <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">
167                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_bib_trash_fields_id_seq">
168                         <field reporter:label="Field ID" name="id" reporter:datatype="id"/>
169                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
170                         <field reporter:label="Field" name="field" reporter:datatype="text"/>
171                 </fields>
172                 <links>
173                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
174                 </links>
175                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
176                         <actions>
177                                 <create permission="CREATE_IMPORT_TRASH_FIELD" context_field="owner"/>
178                                 <retrieve permission="CREATE_IMPORT_TRASH_FIELD UPDATE_IMPORT_TRASH_FIELD DELETE_IMPORT_TRASH_FIELD" context_field="owner"/>
179                                 <update permission="UPDATE_IMPORT_TRASH_FIELD" context_field="owner"/>
180                                 <delete permission="DELETE_IMPORT_TRASH_FIELD" context_field="owner"/>
181                         </actions>
182                 </permacrud>
183         </class>
184
185         <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">
186                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_item_id_seq">
187                         <field reporter:label="Import Item ID" name="id" reporter:datatype="id"/>
188                         <field reporter:label="Import Record" name="record" reporter:datatype="link"/>
189                         <field reporter:label="Attribute Definition" name="definition" reporter:datatype="link"/>
190                         <field reporter:label="Import Error" name="import_error" reporter:datatype="link"/>
191                         <field reporter:label="Import Error Detail" name="error_detail" reporter:datatype="text"/>
192                         <field reporter:label="Final Target Copy" name="imported_as" reporter:datatype="link"/>
193                         <field reporter:label="Import Time" name="import_time" reporter:datatype="timestamp"/>
194                         <field reporter:label="Owning Library" name="owning_lib" reporter:datatype="int"/>
195                         <field reporter:label="Circulating Library" name="circ_lib" reporter:datatype="int"/>
196                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
197                         <field reporter:label="Copy Number" name="copy_number" reporter:datatype="int"/>
198                         <field reporter:label="Status" name="status" reporter:datatype="int"/>
199                         <field reporter:label="Shelving Location" name="location" reporter:datatype="int"/>
200                         <field reporter:label="Circulate" name="circulate" reporter:datatype="bool"/>
201                         <field reporter:label="Deposit" name="deposit" reporter:datatype="bool"/>
202                         <field reporter:label="Deposit Amount" name="deposit_amount" reporter:datatype="money"/>
203                         <field reporter:label="Reference" name="ref" reporter:datatype="bool"/>
204                         <field reporter:label="Holdable" name="holdable" reporter:datatype="bool"/>
205                         <field reporter:label="Price" name="price" reporter:datatype="money"/>
206                         <field reporter:label="Barcode" name="barcode" reporter:datatype="text"/>
207                         <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="text"/>
208                         <field reporter:label="Circulate As MARC Type" name="circ_as_type" reporter:datatype="text"/>
209                         <field reporter:label="Alert Message" name="alert_message" reporter:datatype="text"/>
210                         <field reporter:label="Public Note" name="pub_note" reporter:datatype="text"/>
211                         <field reporter:label="Private Note" name="priv_note" reporter:datatype="text"/>
212                         <field reporter:label="OPAC Visible" name="opac_visible" reporter:datatype="bool"/>
213                 </fields>
214                 <links>
215                         <link field="import_error" reltype="has_a" key="code" map="" class="vie"/>
216                         <link field="record" reltype="has_a" key="id" map="" class="vqbr"/>
217                         <link field="definition" reltype="has_a" key="id" map="" class="viiad"/>
218                         <link field="imported_as" reltype="has_a" key="id" map="" class="acp"/>
219                 </links>
220                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
221                         <actions>
222                                 <create permission="CREATE_IMPORT_ITEM">
223                     <context link="definition" field="owner"/>
224                                 </create>
225                                 <retrieve permission="CREATE_IMPORT_ITEM UPDATE_IMPORT_ITEM DELETE_IMPORT_ITEM">
226                     <context link="definition" field="owner"/>
227                                 </retrieve>
228                                 <update permission="UPDATE_IMPORT_ITEM">
229                     <context link="definition" field="owner"/>
230                                 </update>
231                                 <delete permission="DELETE_IMPORT_ITEM">
232                     <context link="definition" field="owner"/>
233                                 </delete>
234                         </actions>
235                 </permacrud>
236         </class>
237
238         <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">
239                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.import_item_attr_definition_id_seq">
240                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
241                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
242                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
243                         <field reporter:label="Tag" name="tag" reporter:datatype="text"/>
244                         <field reporter:label="Keep" name="keep" reporter:datatype="bool"/>
245                         <field reporter:label="Owning Library" name="owning_lib" reporter:datatype="text"/>
246                         <field reporter:label="Circulating Library" name="circ_lib" reporter:datatype="text"/>
247                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
248                         <field reporter:label="Status" name="status" reporter:datatype="text"/>
249                         <field reporter:label="Shelving Location" name="location" reporter:datatype="text"/>
250                         <field reporter:label="Circulate" name="circulate" reporter:datatype="text"/>
251                         <field reporter:label="Deposit" name="deposit" reporter:datatype="text"/>
252                         <field reporter:label="Deposit Amount" name="deposit_amount" reporter:datatype="text"/>
253                         <field reporter:label="Reference" name="ref" reporter:datatype="text"/>
254                         <field reporter:label="Holdable" name="holdable" reporter:datatype="text"/>
255                         <field reporter:label="Price" name="price" reporter:datatype="text"/>
256                         <field reporter:label="Barcode" name="barcode" reporter:datatype="text"/>
257                         <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="text"/>
258                         <field reporter:label="Circulate As MARC Type" name="circ_as_type" reporter:datatype="text"/>
259                         <field reporter:label="Alert Message" name="alert_message" reporter:datatype="text"/>
260                         <field reporter:label="Public Note" name="pub_note" reporter:datatype="text"/>
261                         <field reporter:label="Private Note" name="priv_note" reporter:datatype="text"/>
262                         <field reporter:label="OPAC Visible" name="opac_visible" reporter:datatype="text"/>
263                         <field reporter:label="Copy Number" name="copy_number" reporter:datatype="text"/>
264                 </fields>
265                 <links>
266                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
267                 </links>
268                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
269                         <actions>
270                                 <create permission="CREATE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
271                                 <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"/>
272                                 <update permission="UPDATE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
273                                 <delete permission="DELETE_IMPORT_ITEM_ATTR_DEF ADMIN_IMPORT_ITEM_ATTR_DEF" context_field="owner"/>
274                         </actions>
275                 </permacrud>
276         </class>
277
278         <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">
279                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
280                         <field reporter:label="Queue ID" name="id" reporter:selector="name" reporter:datatype="id"/>
281                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
282                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
283                         <field reporter:label="Complete" name="complete" reporter:datatype="bool"/>
284                         <field reporter:label="Type" name="queue_type" reporter:datatype="text"/>
285                         <field reporter:label="Match Set" name="match_set" reporter:datatype="link"/>
286                         <field reporter:label="Item Import Attribute Definition" name="item_attr_def" reporter:datatype="link"/>
287                 </fields>
288                 <links>
289                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
290                         <link field="item_attr_def" reltype="has_a" key="id" map="" class="viiad"/>
291                         <link field="match_set" reltype="has_a" key="id" map="" class="vms"/>
292                 </links>
293                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
294                         <actions>
295                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
296                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
297                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
298                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
299                         </actions>
300                 </permacrud>
301         </class>
302
303         <class id="vie" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::import_error" oils_persist:tablename="vandelay.import_error" reporter:label="Import/Overlay Error Definitions">
304                 <fields oils_persist:primary="code">
305                         <field reporter:label="Error Code" name="code" reporter:selector="description" reporter:datatype="id"/>
306                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
307                 </fields>
308                 <links>
309                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
310                         <link field="item_attr_def" reltype="has_a" key="id" map="" class="viiad"/>
311                         <link field="match_set" reltype="has_a" key="id" map="" class="vms"/>
312                 </links>
313                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
314                         <actions>
315                                 <retrieve/>
316                         </actions>
317                 </permacrud>
318         </class>
319
320         <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">
321                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
322                         <field reporter:label="Record ID" name="id" reporter:datatype="id"/>
323                         <field reporter:label="Create Time" name="create_time" reporter:datatype="timestamp"/>
324                         <field reporter:label="Import Time" name="import_time" reporter:datatype="timestamp"/>
325                         <field reporter:label="MARC" name="marc" reporter:datatype="text"/>
326                         <field reporter:label="Queue" name="queue" reporter:datatype="link"/>
327                         <field reporter:label="Bib Source" name="bib_source" reporter:datatype="link"/>
328                         <field reporter:label="Final Target Record" name="imported_as" reporter:datatype="link"/>
329                         <field reporter:label="Import Error" name="import_error" reporter:datatype="link"/>
330                         <field reporter:label="Import Error Detail" name="error_detail" reporter:datatype="text"/>
331                         <field reporter:label="Purpose" name="purpose" reporter:datatype="text"/>
332                         <field reporter:label="Attributes" name="attributes" oils_persist:virtual="true" reporter:datatype="link"/>
333                         <field reporter:label="Matches" name="matches" oils_persist:virtual="true" reporter:datatype="link"/>
334                         <field reporter:label="Import Items" name="import_items" oils_persist:virtual="true" reporter:datatype="link"/>
335                         <field reporter:label="Quality" name="quality" reporter:datatype="int"/>
336                 </fields>
337                 <links>
338                         <link field="import_error" reltype="has_a" key="code" map="" class="vie"/>
339                         <link field="queue" reltype="has_a" key="id" map="" class="vbq"/>
340                         <link field="bib_source" reltype="has_a" key="id" map="" class="cbs"/>
341                         <link field="imported_as" reltype="has_a" key="id" map="" class="bre"/>
342             <link field="attributes" reltype="has_many" key="record" map="" class="vqbra"/>
343             <link field="matches" reltype="has_many" key="queued_record" map="" class="vbm"/>
344             <link field="import_items" reltype="has_many" key="record" map="" class="vii"/>
345                 </links>
346                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
347                         <actions>
348                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
349                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
350                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
351                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
352                         </actions>
353                 </permacrud>
354         </class>
355
356         <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">
357                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_attr_definition_id_seq">
358                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
359                         <field reporter:label="Code" name="code" reporter:datatype="text"/>
360                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
361                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
362                         <field reporter:label="Remove RegExp" name="remove" reporter:datatype="text"/>
363                 </fields>
364                 <links/>
365                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
366                         <actions>
367                                 <create permission="CREATE_BIB_IMPORT_FIELD_DEF" global_required="true"/>
368                 <retrieve/>
369                                 <update permission="UPDATE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
370                                 <delete permission="DELETE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
371                         </actions>
372                 </permacrud>
373         </class>
374
375         <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">
376                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_bib_record_attr_id_seq">
377                         <field reporter:label="Attribute ID" name="id" reporter:datatype="id"/>
378                         <field reporter:label="Record" name="record" reporter:datatype="link"/>
379                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
380                         <field reporter:label="Value" name="attr_value" reporter:datatype="text"/>
381                 </fields>
382                 <links>
383                         <link field="record" reltype="has_a" key="id" map="" class="vqbr"/>
384                         <link field="field" reltype="has_a" key="id" map="" class="vqbrad"/>
385                 </links>
386                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
387                         <actions>
388                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
389                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
390                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
391                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
392                         </actions>
393                 </permacrud>
394         </class>
395
396         <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">
397                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_match_id_seq">
398                         <field reporter:label="Match ID" name="id" reporter:datatype="id"/>
399                         <field reporter:label="Queued Record" name="queued_record" reporter:datatype="link"/>
400                         <field reporter:label="Evergreen Record" name="eg_record" reporter:datatype="link"/>
401                         <field reporter:label="Quality" name="quality" reporter:datatype="text"/>
402                         <field reporter:label="Match Score" name="match_score" reporter:datatype="text"/>
403                 </fields>
404                 <links>
405                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
406                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
407                 </links>
408                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
409                         <actions>
410                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
411                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE UPDATE_BIB_IMPORT_QUEUE DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
412                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
413                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
414                         </actions>
415                 </permacrud>
416         </class>
417
418         <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">
419                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
420                         <field reporter:label="Queue ID" name="id" reporter:selector="name" reporter:datatype="id"/>
421                         <field reporter:label="Owner" name="owner" reporter:datatype="link"/>
422                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
423                         <field reporter:label="Complete" name="complete" reporter:datatype="bool"/>
424                         <field reporter:label="Type" name="queue_type" reporter:datatype="text"/>
425                         <field reporter:label="Match Set" name="match_set" reporter:datatype="link"/>
426                 </fields>
427                 <links>
428                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
429                         <link field="match_set" reltype="has_a" key="id" map="" class="vms"/>
430                 </links>
431                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
432                         <actions>
433                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
434                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
435                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
436                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
437                         </actions>
438                 </permacrud>
439         </class>
440
441         <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">
442                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
443                         <field reporter:label="Record ID" name="id" reporter:datatype="id"/>
444                         <field reporter:label="Create Time" name="create_time" reporter:datatype="timestamp"/>
445                         <field reporter:label="Import Time" name="import_time" reporter:datatype="timestamp"/>
446                         <field reporter:label="MARC" name="marc" reporter:datatype="text"/>
447                         <field reporter:label="Queue" name="queue" reporter:datatype="link"/>
448                         <field reporter:label="Final Target Record" name="imported_as" reporter:datatype="link"/>
449                         <field reporter:label="Import Error" name="import_error" reporter:datatype="link"/>
450                         <field reporter:label="Import Error Detail" name="error_detail" reporter:datatype="text"/>
451                         <field reporter:label="Purpose" name="purpose" reporter:datatype="text"/>
452                         <field reporter:label="Attributes" name="attributes" oils_persist:virtual="true" reporter:datatype="link"/>
453                         <field reporter:label="Matches" name="matches" oils_persist:virtual="true" reporter:datatype="link"/>
454                         <field reporter:label="Quality" name="quality" reporter:datatype="int"/>
455                 </fields>
456                 <links>
457                         <link field="import_error" reltype="has_a" key="code" map="" class="vie"/>
458                         <link field="queue" reltype="has_a" key="id" map="" class="vaq"/>
459                         <link field="imported_as" reltype="has_a" key="id" map="" class="are"/>
460             <link field="attributes" reltype="has_many" key="record" map="" class="vqara"/>
461             <link field="matches" reltype="has_many" key="queued_record" map="" class="vam"/>
462                 </links>
463                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
464                         <actions>
465                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
466                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
467                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
468                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
469                         </actions>
470                 </permacrud>
471         </class>
472
473         <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">
474                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_attr_definition_id_seq">
475                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
476                         <field reporter:label="Code" name="code" reporter:datatype="text"/>
477                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
478                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
479                         <field reporter:label="Remove RegExp" name="remove" reporter:datatype="text"/>
480                 </fields>
481                 <links/>
482                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
483                         <actions>
484                                 <create permission="CREATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
485                 <retrieve/>
486                                 <update permission="UPDATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
487                                 <delete permission="DELETE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
488                         </actions>
489                 </permacrud>
490         </class>
491
492         <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">
493                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_authority_record_attr_id_seq">
494                         <field reporter:label="Attribute ID" name="id" reporter:datatype="id"/>
495                         <field reporter:label="Record" name="record" reporter:datatype="link"/>
496                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
497                         <field reporter:label="Value" name="attr_value" reporter:datatype="text"/>
498                 </fields>
499                 <links>
500                         <link field="record" reltype="has_a" key="id" map="" class="vqar"/>
501                         <link field="field" reltype="has_a" key="id" map="" class="vqarad"/>
502                 </links>
503                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
504                         <actions>
505                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
506                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
507                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
508                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
509                         </actions>
510                 </permacrud>
511         </class>
512
513         <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">
514                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_match_id_seq">
515                         <field reporter:label="Match ID" name="id" reporter:datatype="id"/>
516                         <field reporter:label="Queued Record" name="queued_record" reporter:datatype="link"/>
517                         <field reporter:label="Evergreen Record" name="eg_record" reporter:datatype="link"/>
518                         <field reporter:label="Quality" name="quality" reporter:datatype="int"/>
519                 </fields>
520                 <links>
521                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
522                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
523                 </links>
524                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
525                         <actions>
526                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
527                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE UPDATE_AUTHORITY_IMPORT_QUEUE DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
528                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
529                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
530                         </actions>
531                 </permacrud>
532         </class>
533
534         <class id="vms" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::match_set" oils_persist:tablename="vandelay.match_set" reporter:label="Record Matching Definition Set">
535                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.match_set_id_seq">
536                         <field reporter:label="Match Set ID" name="id" reporter:datatype="id" reporter:selector="name"/>
537                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
538                         <field reporter:label="Owning Library" name="owner" reporter:datatype="link"/>
539                         <field reporter:label="Match Set Type" name="mtype" reporter:datatype="text"/>
540                 </fields>
541                 <links>
542                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
543                 </links>
544                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
545                         <actions>
546                                 <create permission="ADMIN_IMPORT_MATCH_SET" context_field="owner"/>
547                                 <retrieve permission="ADMIN_IMPORT_MATCH_SET VIEW_IMPORT_MATCH_SET" context_field="owner"/>
548                                 <update permission="ADMIN_IMPORT_MATCH_SET" context_field="owner"/>
549                                 <delete permission="ADMIN_IMPORT_MATCH_SET" context_field="owner"/>
550                         </actions>
551                 </permacrud>
552         </class>
553
554         <class id="vmsp" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::match_set_point" oils_persist:tablename="vandelay.match_set_point" reporter:label="Record Matching Definition">
555                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.match_set_point_id_seq">
556                         <field reporter:label="Match Definition ID" name="id" reporter:datatype="id"/>
557                         <field reporter:label="Expression Tree Parent" name="parent" reporter:datatype="link"/>
558                         <field reporter:label="Match Set" name="match_set" reporter:datatype="link"/>
559                         <field reporter:label="Boolean Operator" name="bool_op" reporter:datatype="text"/>
560                         <field reporter:label="Coded Field" name="svf" reporter:datatype="link"/>
561                         <field reporter:label="Tag" name="tag" reporter:datatype="text"/>
562                         <field reporter:label="Subfield" name="subfield" reporter:datatype="text"/>
563             <field reporter:label="Negate" name="negate"  reporter:datatype="bool"/>
564                         <field reporter:label="Importance" name="quality" reporter:datatype="int"/>
565                         <field reporter:label="Expression Tree Children" name="children" oils_persist:virtual="true" reporter:datatype="link"/>
566                 </fields>
567                 <links>
568                         <link field="parent" reltype="has_a" key="id" map="" class="vmsp"/>
569                         <link field="match_set" reltype="has_a" key="id" map="" class="vms"/>
570                         <link field="svf" reltype="has_a" key="id" map="" class="crad"/>
571                         <link field="children" reltype="has_many" key="parent" map="" class="vmsp"/>
572                 </links>
573                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
574                         <actions>
575                                 <create permission="ADMIN_IMPORT_MATCH_SET">
576                     <context link="match_set" field="owner"/>
577                                 </create>
578                                 <retrieve permission="ADMIN_IMPORT_MATCH_SET VIEW_IMPORT_MATCH_SET">
579                     <context link="match_set" field="owner"/>
580                                 </retrieve>
581                                 <update permission="ADMIN_IMPORT_MATCH_SET">
582                     <context link="match_set" field="owner"/>
583                                 </update>
584                                 <delete permission="ADMIN_IMPORT_MATCH_SET">
585                     <context link="match_set" field="owner"/>
586                                 </delete>
587                         </actions>
588                 </permacrud>
589         </class>
590
591         <class id="vmsq" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="vandelay::match_set_quality" oils_persist:tablename="vandelay.match_set_quality" reporter:label="Record Quality Metric">
592                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.match_set_quality_id_seq">
593                         <field reporter:label="Quality Metric ID" name="id" reporter:datatype="id"/>
594                         <field reporter:label="Match Set" name="match_set" reporter:datatype="link"/>
595                         <field reporter:label="Record Attribute" name="svf" reporter:datatype="text"/>
596                         <field reporter:label="Tag" name="tag" reporter:datatype="text"/>
597                         <field reporter:label="Subfield" name="subfield" reporter:datatype="text"/>
598                         <field reporter:label="Value" name="value" reporter:datatype="text"/>
599                         <field reporter:label="Quality" name="quality" reporter:datatype="int"/>
600                 </fields>
601                 <links>
602                         <link field="match_set" reltype="has_a" key="id" map="" class="vms"/>
603                 </links>
604                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
605                         <actions>
606                                 <create permission="ADMIN_IMPORT_MATCH_SET">
607                     <context link="match_set" field="owner"/>
608                                 </create>
609                                 <retrieve permission="ADMIN_IMPORT_MATCH_SET">
610                     <context link="match_set" field="owner"/>
611                                 </retrieve>
612                                 <update permission="ADMIN_IMPORT_MATCH_SET">
613                     <context link="match_set" field="owner"/>
614                                 </update>
615                                 <delete permission="ADMIN_IMPORT_MATCH_SET">
616                     <context link="match_set" field="owner"/>
617                                 </delete>
618                         </actions>
619                 </permacrud>
620         </class>
621
622         <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">
623                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_org_unit_opt_in_id_seq">
624                         <field reporter:label="Opt-in ID" name="id" reporter:datatype="id"/>
625                         <field reporter:label="Workstation" name="opt_in_ws" reporter:datatype="link"/>
626                         <field reporter:label="Staff Member" name="staff" reporter:datatype="link"/>
627                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
628                         <field reporter:label="Allowed Org Unit" name="org_unit" reporter:datatype="link"/>
629                         <field reporter:label="Opt-in Date/Time" name="opt_in_ts" reporter:datatype="timestamp"/>
630                 </fields>
631                 <links>
632                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
633                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
634                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
635                         <link field="opt_in_ws" reltype="has_a" key="id" map="" class="aws"/>
636                 </links>
637         </class>
638
639     <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">
640         <fields oils_persist:primary="name">
641             <field reporter:label="Name" name="name" reporter:datatype="text"/>
642             <field reporter:label="Label" name="label"  reporter:datatype="text" oils_persist:i18n="true"/>
643             <field reporter:label="Value" name="value"  reporter:datatype="text"/>
644             <field reporter:label="Enabled" name="enabled"  reporter:datatype="bool"/>
645         </fields>
646         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
647             <actions>
648                 <create   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
649                 <retrieve permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
650                 <update   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
651                 <delete   permission="ADMIN_GLOBAL_FLAG" global_required="true"/>
652             </actions>
653         </permacrud>
654     </class>
655
656     <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">
657         <fields oils_persist:primary="id">
658             <field reporter:label="ID" name="id" reporter:datatype="id"/>
659             <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
660             <field reporter:label="Description" name="description"  reporter:datatype="text" oils_persist:i18n="true"/>
661             <field reporter:label="Function" name="func"  reporter:datatype="text"/>
662             <field reporter:label="Required Parameter Count" name="param_count"  reporter:datatype="int"/>
663         </fields>
664         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
665             <actions>
666                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
667                 <retrieve/>
668                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
669                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
670             </actions>
671         </permacrud>
672     </class>
673
674         <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">
675                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_index_norm_map_id_seq">
676                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
677                         <field reporter:label="Metabib Field" name="field" reporter:datatype="link"/>
678                         <field reporter:label="Normalizer" name="norm" reporter:datatype="link"/>
679                         <field reporter:label="Parameters (JSON Array)" name="params" reporter:datatype="text"/>
680                         <field reporter:label="Order of Application" name="pos" reporter:datatype="int"/>
681                 </fields>
682                 <links>
683                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
684                         <link field="norm" reltype="has_a" key="id" map="" class="cin"/>
685                 </links>
686         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
687             <actions>
688                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
689                 <retrieve/>
690                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
691                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
692             </actions>
693         </permacrud>
694         </class>
695
696         <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">
697                 <fields oils_persist:primary="name">
698                         <field reporter:label="Name" name="name" reporter:datatype="id" reporter:selector="label"  oils_obj:required="true"/>
699                         <field reporter:label="Label" name="label" reporter:datatype="text"  oils_obj:required="true"/>
700                         <field reporter:label="Description" name="description" reporter:datatype="text" />
701                         <field reporter:label="Filter?" name="filter" reporter:datatype="bool"/>
702                         <field reporter:label="Sorter?" name="sorter" reporter:datatype="bool"/>
703                         <field reporter:label="MARC Tag" name="tag" reporter:datatype="text"/>
704                         <field reporter:label="MARC Subfields" name="sf_list" reporter:datatype="text"/>
705                         <field reporter:label="Joiner" name="joiner" reporter:datatype="text"/>
706                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
707                         <field reporter:label="Format" name="format" reporter:datatype="link"/>
708                         <field reporter:label="Starting Position" name="start_pos" reporter:datatype="int"/>
709                         <field reporter:label="String Length" name="string_len" reporter:datatype="int"/>
710                         <field reporter:label="Fixed Field" name="fixed_field" reporter:datatype="text"/>
711                         <field reporter:label="Physical Characteristic" name="phys_char_sf" reporter:datatype="text"/>
712                         <field reporter:label="Normalizers" name="normalizers" reporter:datatype="link" oils_persist:virtual="true"/>
713                 </fields>
714                 <links>
715                         <link field="format" reltype="has_a" key="name" map="" class="cxt"/>
716                         <link field="normalizers" reltype="has_many" key="name" map="" class="crainm"/>
717                 </links>
718         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
719             <actions>
720                 <create permission="ADMIN_SVF" global_required="true"/>
721                 <retrieve/>
722                 <update permission="ADMIN_SVF" global_required="true"/>
723                 <delete permission="ADMIN_SVF" global_required="true"/>
724             </actions>
725         </permacrud>
726         </class>
727
728         <class id="csc" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::sms_carrier" oils_persist:tablename="config.sms_carrier" reporter:label="SMS Carrier" oils_persist:field_safe="true">
729                 <fields oils_persist:primary="id" oils_persist:sequence="config.sms_carrier_id_seq">
730                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
731                         <field reporter:label="Region" name="region" reporter:datatype="text" oils_persist:i18n="true"/>
732                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
733             <field reporter:label="Active" name="active" reporter:datatype="bool" oils_persist:i18n="true"/>
734                         <field reporter:label="Email Gateway" name="email_gateway" reporter:datatype="text" oils_persist:i18n="true"/>
735                 </fields>
736                 <links/>
737         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
738             <actions>
739                 <create permission="ADMIN_SMS_CARRIER" global_required="true"/>
740                 <retrieve/>
741                 <update permission="ADMIN_SMS_CARRIER" global_required="true"/>
742                 <delete permission="ADMIN_SMS_CARRIER" global_required="true"/>
743             </actions>
744         </permacrud>
745         </class>
746
747         <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">
748                 <fields oils_persist:primary="id">
749                         <field reporter:label="Record ID" name="id" reporter:datatype="id" oils_obj:required="true"/>
750                         <field reporter:label="Attributes" name="attrs" reporter:datatype="text"  oils_obj:required="true"/>
751                 </fields>
752                 <links>
753                         <link field="id" reltype="has_a" key="id" map="" class="bre"/>
754                 </links>
755         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
756             <actions>
757                 <retrieve/>
758             </actions>
759         </permacrud>
760         </class>
761
762         <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">
763                 <fields oils_persist:primary="id" oils_persist:sequence="config.record_attr_index_norm_map_id_seq">
764                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
765                         <field reporter:label="SVF Attribute" name="attr" reporter:datatype="link"/>
766                         <field reporter:label="Normalizer" name="norm" reporter:datatype="link"/>
767                         <field reporter:label="Parameters (JSON Array)" name="params" reporter:datatype="text"/>
768                         <field reporter:label="Order of Application" name="pos" reporter:datatype="int"/>
769                 </fields>
770                 <links>
771                         <link field="attr" reltype="has_a" key="name" map="" class="crad"/>
772                         <link field="norm" reltype="has_a" key="id" map="" class="cin"/>
773                 </links>
774         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
775             <actions>
776                 <create permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
777                 <retrieve/>
778                 <update permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
779                 <delete permission="ADMIN_INDEX_NORMALIZER" global_required="true"/>
780             </actions>
781         </permacrud>
782         </class>
783
784         <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">
785                 <fields oils_persist:primary="id" oils_persist:sequence="config.coded_value_map_id_seq">
786                         <field reporter:label="ID" name="id" reporter:datatype="id"  oils_obj:required="true"/>
787                         <field reporter:label="SVF Attribute" name="ctype" reporter:datatype="link"  oils_obj:required="true"/>
788                         <field reporter:label="Code" name="code" reporter:datatype="text"  oils_obj:required="true"/>
789                         <field reporter:label="Value" name="value" reporter:datatype="text"  oils_obj:required="true" oils_persist:i18n="true"/>
790                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
791                         <field reporter:label="OPAC Visible" name="opac_visible" reporter:datatype="bool"/>
792                         <field reporter:label="Search Label" name="search_label" reporter:datatype="text" oils_persist:i18n="true"/>
793             <field reporter:label="Is Simple Selector" name="is_simple" reporter:datatype="bool"/>
794                 </fields>
795                 <links>
796                         <link field="ctype" reltype="has_a" key="name" map="" class="crad"/>
797                 </links>
798         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
799             <actions>
800                 <create permission="ADMIN_CODED_VALUE" global_required="true"/>
801                 <retrieve/>
802                 <update permission="ADMIN_CODED_VALUE" global_required="true"/>
803                 <delete permission="ADMIN_CODED_VALUE" global_required="true"/>
804             </actions>
805         </permacrud>
806         </class>
807
808         <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">
809                 <fields oils_persist:primary="id" oils_persist:sequence="config.remote_account_id_seq">
810                         <field name="id"            reporter:datatype="id"   reporter:label="ID"/>
811                         <field name="label"         reporter:datatype="text" reporter:label="Label"/>
812                         <field name="host"          reporter:datatype="text" reporter:label="Host"/>
813                         <field name="username"      reporter:datatype="text" reporter:label="Username"/>
814                         <field name="password"      reporter:datatype="text" reporter:label="Password"/>
815                         <field name="account"       reporter:datatype="text" reporter:label="Account"/>
816                         <field name="path"          reporter:datatype="text" reporter:label="Path"/>
817                         <field name="owner"         reporter:datatype="link" reporter:label="Owner"/>
818                         <field name="last_activity" reporter:datatype="timestamp" reporter:label="Last Activity"/>
819                 </fields>
820                 <links>
821                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
822                 </links>
823         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
824             <actions>
825                 <create   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
826                 <retrieve permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
827                 <update   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
828                 <delete   permission="ADMIN_CONFIG_REMOTE_ACCOUNT" context_field="owner"/>
829             </actions>
830         </permacrud>
831         </class>
832
833     <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">
834         <fields oils_persist:primary="name">
835             <field reporter:label="Z39.50 Source" name="name" reporter:datatype="id"/>
836             <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
837             <field reporter:label="Host" name="host"  reporter:datatype="text"/>
838             <field reporter:label="Port" name="port"  reporter:datatype="int"/>
839             <field reporter:label="DB" name="db"  reporter:datatype="text"/>
840             <field reporter:label="Record Format" name="record_format"  reporter:datatype="text"/>
841             <field reporter:label="Transmission Format" name="transmission_format"  reporter:datatype="text"/>
842             <field reporter:label="Auth" name="auth"  reporter:datatype="bool"/>
843             <field reporter:label="Attrs" name="attrs" oils_persist:virtual="true"  reporter:datatype="link"/>
844             <field reporter:label="Use Permission" name="use_perm"  reporter:datatype="link"/>
845         </fields>
846         <links>
847             <link field="attrs" reltype="has_many" key="source" map="" class="cza"/>
848             <link field="use_perm" reltype="has_a" key="id" map="" class="ppl"/>
849         </links>
850         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
851             <actions>
852                 <create permission="ADMIN_Z3950_SOURCE" global_required="true"/>
853                 <retrieve/>
854                 <update permission="ADMIN_Z3950_SOURCE" global_required="true"/>
855                 <delete permission="ADMIN_Z3950_SOURCE" global_required="true"/>
856             </actions>
857         </permacrud>
858     </class>
859
860     <class id="cza" controller="open-ils.cstore" oils_obj:fieldmapper="config::z3950_attr" oils_persist:tablename="config.z3950_attr" reporter:label="Z39.50 Attribute">
861         <fields oils_persist:primary="id" oils_persist:sequence="config.z3950_attr_id_seq">
862             <field reporter:label="Z39.50 Attribute ID" name="id" reporter:datatype="id"/>
863             <field reporter:label="Z39.50 Source" name="source" reporter:datatype="link"/>
864             <field reporter:label="Name" name="name" reporter:datatype="text"/>
865             <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
866             <field reporter:label="Code" name="code"  reporter:datatype="int"/>
867             <field reporter:label="Format" name="format"  reporter:datatype="int"/>
868             <field reporter:label="Truncation" name="truncation"  reporter:datatype="int"/>
869         </fields>
870         <links>
871             <link field="source" reltype="has_a" key="name" map="" class="czs"/>
872         </links>
873     </class>
874
875         <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">
876                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_output_id_seq">
877                         <field reporter:label="Output ID" name="id" reporter:datatype="id"/>
878                         <field reporter:label="Create Date/Time" name="create_time" reporter:datatype="timestamp"/>
879                         <field reporter:label="Data" name="data" reporter:datatype="text"/>
880                         <field reporter:label="Is Error" name="is_error" reporter:datatype="bool"/>
881                         <field reporter:label="Events" name="events" oils_persist:virtual="true"  reporter:datatype="link"/>
882                         <field reporter:label="Error Events" name="error_events" oils_persist:virtual="true"  reporter:datatype="link"/>
883                 </fields>
884                 <links>
885             <link field="events" reltype="has_many" key="template_output" map="" class="atev"/>
886             <link field="error_events" reltype="has_many" key="error_output" map="" class="atev"/>
887                 </links>
888                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
889                         <actions>
890                                 <retrieve/>
891                                 <delete permission="ADMIN_TRIGGER_TEMPLATE_OUTPUT DELETE_TRIGGER_TEMPLATE_OUTPUT" global_required="true"/>
892                         </actions>
893                 </permacrud>
894         </class>
895
896         <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">
897                 <fields oils_persist:primary="key">
898                         <field reporter:label="Hook Key" name="key" reporter:datatype="text"/>
899                         <field reporter:label="Core Type" name="core_type" reporter:datatype="text"/>
900                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
901                         <field reporter:label="Passive" name="passive"  reporter:datatype="bool"/>
902                 </fields>
903                 <links/>
904                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
905                         <actions>
906                                 <create permission="ADMIN_TRIGGER_HOOK CREATE_TRIGGER_HOOK" global_required="true"/>
907                                 <retrieve/>
908                                 <update permission="ADMIN_TRIGGER_HOOK UPDATE_TRIGGER_HOOK" global_required="true"/>
909                                 <delete permission="ADMIN_TRIGGER_HOOK DELETE_TRIGGER_HOOK" global_required="true"/>
910                         </actions>
911                 </permacrud>
912         </class>
913
914         <class id="atcol" controller="open-ils.cstore" oils_obj:fieldmapper="action_trigger::collector" oils_persist:tablename="action_trigger.collector" reporter:label="Trigger Environment Collector">
915                 <fields oils_persist:primary="module">
916                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
917                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
918                 </fields>
919                 <links/>
920         </class>
921
922         <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">
923                 <fields oils_persist:primary="module">
924                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
925                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
926                 </fields>
927                 <links/>
928                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
929                         <actions>
930                                 <create permission="ADMIN_TRIGGER_VALIDATOR CREATE_TRIGGER_VALIDATOR" global_required="true"/>
931                                 <retrieve/>
932                                 <update permission="ADMIN_TRIGGER_VALIDATOR UPDATE_TRIGGER_VALIDATOR" global_required="true"/>
933                                 <delete permission="ADMIN_TRIGGER_VALIDATOR DELETE_TRIGGER_VALIDATOR" global_required="true"/>
934                         </actions>
935                 </permacrud>
936         </class>
937
938         <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">
939                 <fields oils_persist:primary="module">
940                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
941                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
942                 </fields>
943                 <links/>
944                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
945                         <actions>
946                                 <create permission="ADMIN_TRIGGER_REACTOR CREATE_TRIGGER_REACTOR" global_required="true"/>
947                                 <retrieve/>
948                                 <update permission="ADMIN_TRIGGER_REACTOR UPDATE_TRIGGER_REACTOR" global_required="true"/>
949                                 <delete permission="ADMIN_TRIGGER_REACTOR DELETE_TRIGGER_REACTOR" global_required="true"/>
950                         </actions>
951                 </permacrud>
952         </class>
953
954         <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">
955                 <fields oils_persist:primary="module">
956                         <field reporter:label="Module Name" name="module" reporter:datatype="text"/>
957                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
958                 </fields>
959                 <links/>
960                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
961                         <actions>
962                                 <create permission="ADMIN_TRIGGER_CLEANUP CREATE_TRIGGER_CLEANUP" global_required="true"/>
963                                 <retrieve/>
964                                 <update permission="ADMIN_TRIGGER_CLEANUP UPDATE_TRIGGER_CLEANUP" global_required="true"/>
965                                 <delete permission="ADMIN_TRIGGER_CLEANUP DELETE_TRIGGER_CLEANUP" global_required="true"/>
966                         </actions>
967                 </permacrud>
968         </class>
969
970         <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">
971                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.environment_id_seq">
972                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
973                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
974                         <field reporter:label="Field Path" name="path" reporter:datatype="text"/>
975                         <field reporter:label="Collector" name="collector" reporter:datatype="link"/>
976                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
977                 </fields>
978                 <links>
979                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
980                         <link field="collector" reltype="has_a" key="id" map="" class="atcol"/>
981                 </links>
982                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
983                         <actions>
984                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF">
985                     <context link="event_def" field="owner"/>
986                 </create>
987                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF">
988                     <context link="event_def" field="owner"/>
989                 </retrieve>
990                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF">
991                     <context link="event_def" field="owner"/>
992                 </update>
993                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF">
994                     <context link="event_def" field="owner"/>
995                 </delete>
996                         </actions>
997                 </permacrud>
998         </class>
999
1000         <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">
1001                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_definition_id_seq">
1002                         <field reporter:label="Definition ID" name="id" reporter:datatype="id"/>
1003                         <field reporter:label="Enabled" name="active" reporter:datatype="bool"/>
1004                         <field reporter:label="Owning Library" name="owner"  reporter:datatype="org_unit"/>
1005                         <field reporter:label="Hook" name="hook"  reporter:datatype="link"/>
1006                         <field reporter:label="Validator" name="validator"  reporter:datatype="link"/>
1007                         <field reporter:label="Reactor" name="reactor"  reporter:datatype="link"/>
1008                         <field reporter:label="Success Cleanup" name="cleanup_success"  reporter:datatype="link"/>
1009                         <field reporter:label="Failure Cleanup" name="cleanup_failure"  reporter:datatype="link"/>
1010                         <field reporter:label="Processing Delay" name="delay"  reporter:datatype="interval"/>
1011                         <field reporter:label="Max Event Validity Delay" name="max_delay"  reporter:datatype="interval"/>
1012                         <field reporter:label="Processing Delay Context Field" name="delay_field"  reporter:datatype="text"/>
1013                         <field reporter:label="Processing Group Context Field" name="group_field"  reporter:datatype="text"/>
1014                         <field reporter:label="Template" name="template"  reporter:datatype="text"/>
1015                         <field reporter:label="Name" name="name"  reporter:datatype="text"/>
1016                         <field reporter:label="Granularity" name="granularity"  reporter:datatype="text"/>
1017                         <field reporter:label="Opt-In User Field" name="usr_field"  reporter:datatype="text"/>
1018                         <field reporter:label="Opt-In Setting Type" name="opt_in_setting"  reporter:datatype="link"/>
1019                         <field reporter:label="Environment Entries" name="env" oils_persist:virtual="true"  reporter:datatype="link"/>
1020                         <field reporter:label="Parameters" name="params" oils_persist:virtual="true"  reporter:datatype="link"/>
1021                 </fields>
1022                 <links>
1023                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
1024                         <link field="hook" reltype="has_a" key="key" map="" class="ath"/>
1025                         <link field="validator" reltype="has_a" key="module" map="" class="atval"/>
1026                         <link field="reactor" reltype="has_a" key="module" map="" class="atreact"/>
1027                         <link field="cleanup_success" reltype="has_a" key="module" map="" class="atclean"/>
1028                         <link field="cleanup_failure" reltype="has_a" key="module" map="" class="atclean"/>
1029                         <link field="env" reltype="has_many" key="event_def" map="" class="atenv"/>
1030                         <link field="params" reltype="has_many" key="event_def" map="" class="atevparam"/>
1031                         <link field="opt_in_setting" reltype="has_a" key="name" map="" class="cust"/>
1032                 </links>
1033                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1034                         <actions>
1035                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF" context_field="owner"/>
1036                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF" context_field="owner"/>
1037                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF" context_field="owner"/>
1038                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF" context_field="owner"/>
1039                         </actions>
1040                 </permacrud>
1041         </class>
1042
1043         <class id="atev" controller="open-ils.cstore" oils_obj:fieldmapper="action_trigger::event" oils_persist:tablename="action_trigger.event" reporter:label="Trigger Event Entry">
1044                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_id_seq">
1045                         <field reporter:label="Event ID" name="id" reporter:datatype="id"/>
1046                         <field reporter:label="Target ID" name="target" reporter:datatype="int"/>
1047                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
1048                         <field reporter:label="Add Time" name="add_time" reporter:datatype="timestamp"/>
1049                         <field reporter:label="Run Time" name="run_time" reporter:datatype="timestamp"/>
1050                         <field reporter:label="Start Time" name="start_time" reporter:datatype="timestamp"/>
1051                         <field reporter:label="Update Time" name="update_time" reporter:datatype="timestamp"/>
1052                         <field reporter:label="Complete Time" name="complete_time" reporter:datatype="timestamp"/>
1053                         <field reporter:label="State" name="state" reporter:datatype="text"/>
1054                         <field reporter:label="User Data" name="user_data" reporter:datatype="text"/>
1055                         <field reporter:label="Template Output" name="template_output" reporter:datatype="link"/>
1056                         <field reporter:label="Error Output" name="error_output" reporter:datatype="text"/>
1057                         <field reporter:label="Asynchronous Output" name="async_output" reporter:datatype="link"/>
1058                         <field reporter:label="Update Process" name="update_process" reporter:datatype="int"/>
1059                 </fields>
1060                 <links>
1061                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
1062                         <link field="template_output" reltype="has_a" key="id" map="" class="ateo"/>
1063                         <link field="error_output" reltype="has_a" key="id" map="" class="ateo"/>
1064                         <link field="async_output" reltype="has_a" key="id" map="" class="ateo"/>
1065                 </links>
1066         </class>
1067
1068         <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">
1069                 <fields oils_persist:primary="id" oils_persist:sequence="action_trigger.event_params_id_seq">
1070                         <field reporter:label="Event ID" name="id" reporter:datatype="id"/>
1071                         <field reporter:label="Event Definition" name="event_def" reporter:datatype="link"/>
1072                         <field reporter:label="Parameter Name" name="param" reporter:datatype="text"/>
1073                         <field reporter:label="Parameter Value" name="value" reporter:datatype="text"/>
1074                 </fields>
1075                 <links>
1076                         <link field="event_def" reltype="has_a" key="id" map="" class="atevdef"/>
1077                 </links>
1078                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1079                         <actions>
1080                                 <create permission="ADMIN_TRIGGER_EVENT_DEF CREATE_TRIGGER_EVENT_DEF">
1081                     <context link="event_def" field="owner"/>
1082                 </create>
1083                                 <retrieve permission="ADMIN_TRIGGER_EVENT_DEF VIEW_TRIGGER_EVENT_DEF">
1084                     <context link="event_def" field="owner"/>
1085                 </retrieve>
1086                                 <update permission="ADMIN_TRIGGER_EVENT_DEF UPDATE_TRIGGER_EVENT_DEF">
1087                     <context link="event_def" field="owner"/>
1088                 </update>
1089                                 <delete permission="ADMIN_TRIGGER_EVENT_DEF DELETE_TRIGGER_EVENT_DEF">
1090                     <context link="event_def" field="owner"/>
1091                 </delete>
1092                         </actions>
1093                 </permacrud>
1094         </class>
1095
1096         <class id="aws" controller="open-ils.cstore" oils_obj:fieldmapper="actor::workstation" oils_persist:tablename="actor.workstation" reporter:label="Workstation">
1097                 <fields oils_persist:primary="id" oils_persist:sequence="actor.workstation_id_seq">
1098                         <field reporter:label="Workstation ID" name="id" reporter:datatype="id"/>
1099                         <field reporter:label="Workstation Name" name="name" reporter:datatype="text"/>
1100                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
1101                         <field reporter:label="Toolbars" name="toolbars" oils_persist:virtual="true" reporter:datatype="link"/>
1102                         <field reporter:label="Circulations" name="circulations" oils_persist:virtual="true" reporter:datatype="link"/>
1103                 </fields>
1104                 <links>
1105                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1106                         <link field="toolbars" reltype="has_many" key="ws" map="" class="atb"/>
1107                         <link field="circulations" reltype="has_many" key="workstation" map="" class="circ"/>
1108                 </links>
1109         </class>
1110
1111         <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">
1112                 <fields oils_persist:primary="code">
1113                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1114                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1115                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true"/>
1116                         <field reporter:label="SIP2 Media Type" name="sip2_media_type" reporter:datatype="text" oils_persist:i18n="true"/>
1117                         <field reporter:label="Magnetic Media" name="magnetic_media" reporter:datatype="bool"/>
1118                         <field reporter:label="Average Wait Time" name="avg_wait_time" reporter:datatype="interval"/>
1119                 </fields>
1120                 <links/>
1121         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1122             <actions>
1123                 <create permission="ADMIN_CIRC_MOD" global_required="true"/>
1124                 <retrieve/>
1125                 <update permission="ADMIN_CIRC_MOD" global_required="true"/>
1126                 <delete permission="ADMIN_CIRC_MOD" global_required="true"/>
1127             </actions>
1128         </permacrud>
1129         </class>
1130
1131         <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">
1132                 <fields oils_persist:primary="code">
1133                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1134                         <field reporter:label="Label" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1135                         <field reporter:label="Prorate?" name="prorate" reporter:datatype="bool"/>
1136                 </fields>
1137                 <links/>
1138         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1139             <actions>
1140                 <create permission="CREATE_INVOICE_ITEM_TYPE" global_required="true"/>
1141                 <retrieve/>
1142                 <update permission="UPDATE_INVOICE_ITEM_TYPE" global_required="true"/>
1143                 <delete permission="DELETE_INVOICE_ITEM_TYPE" global_required="true"/>
1144             </actions>
1145         </permacrud>
1146         </class>
1147
1148         <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">
1149                 <fields oils_persist:primary="code">
1150                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1151                         <field reporter:label="Label" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1152                 </fields>
1153                 <links/>
1154         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1155             <actions>
1156                 <create permission="ADMIN_INVOICE_METHOD CREATE_INVOICE_METHOD" global_required="true"/>
1157                 <retrieve/>
1158                 <update permission="ADMIN_INVOICE_METHOD UPDATE_INVOICE_METHOD" global_required="true"/>
1159                 <delete permission="ADMIN_INVOICE_METHOD DELETE_INVOICE_METHOD" global_required="true"/>
1160             </actions>
1161         </permacrud>
1162         </class>
1163
1164         <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">
1165                 <fields oils_persist:primary="code">
1166                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1167                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1168                 </fields>
1169                 <links/>
1170         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1171             <actions>
1172                 <create permission="CREATE_COPY_BTYPE" global_required="true"/>
1173                 <retrieve/>
1174                 <update permission="UPDATE_COPY_BTYPE" global_required="true"/>
1175                 <delete permission="DELETE_COPY_BTYPE" global_required="true"/>
1176             </actions>
1177         </permacrud>
1178         </class>
1179
1180         <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">
1181                 <fields oils_persist:primary="code">
1182                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1183                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1184                 </fields>
1185                 <links/>
1186         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1187             <actions>
1188                 <create permission="CREATE_CN_BTYPE" global_required="true"/>
1189                 <retrieve/>
1190                 <update permission="UPDATE_CN_BTYPE" global_required="true"/>
1191                 <delete permission="DELETE_CN_BTYPE" global_required="true"/>
1192             </actions>
1193         </permacrud>
1194         </class>
1195
1196         <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">
1197                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.peer_type_id_seq">
1198                         <field reporter:label="ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1199                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1200                 </fields>
1201                 <links/>
1202         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1203             <actions>
1204                 <create permission="CREATE_BIB_PTYPE" global_required="true"/>
1205                 <retrieve/>
1206                 <update permission="UPDATE_BIB_PTYPE" global_required="true"/>
1207                 <delete permission="DELETE_BIB_PTYPE" global_required="true"/>
1208             </actions>
1209         </permacrud>
1210         </class>
1211
1212         <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">
1213                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.peer_bib_copy_map_id_seq">
1214                         <field reporter:label="ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1215                         <field reporter:label="Peer Type" name="peer_type" reporter:datatype="link"/>
1216                         <field reporter:label="Peer Record" name="peer_record" reporter:datatype="link"/>
1217                         <field reporter:label="Target Copy" name="target_copy" reporter:datatype="link"/>
1218                 </fields>
1219         <links>
1220             <link field="peer_type" reltype="has_a" key="id" map="" class="bpt"/>
1221             <link field="peer_record" reltype="has_a" key="id" map="" class="bre"/>
1222             <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1223         </links>
1224         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1225             <actions>
1226                 <create permission="UPDATE_COPY">
1227                     <context link="target_copy" field="circ_lib"/>
1228                 </create>
1229                 <retrieve/>
1230                 <update permission="UPDATE_COPY">
1231                     <context link="target_copy" field="circ_lib"/>
1232                 </update>
1233                 <delete permission="UPDATE_COPY">
1234                     <context link="target_copy" field="circ_lib"/>
1235                 </delete>
1236             </actions>
1237         </permacrud>
1238         </class>
1239
1240         <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">
1241                 <fields oils_persist:primary="code">
1242                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1243                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1244                 </fields>
1245                 <links/>
1246         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1247             <actions>
1248                 <create permission="CREATE_BIB_BTYPE" global_required="true"/>
1249                 <retrieve/>
1250                 <update permission="UPDATE_BIB_BTYPE" global_required="true"/>
1251                 <delete permission="DELETE_BIB_BTYPE" global_required="true"/>
1252             </actions>
1253         </permacrud>
1254         </class>
1255
1256         <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">
1257                 <fields oils_persist:primary="code">
1258                         <field reporter:label="Code" name="code" reporter:selector="name" reporter:datatype="id"/>
1259                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
1260                 </fields>
1261                 <links/>
1262         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1263             <actions>
1264                 <create permission="CREATE_USER_BTYPE" global_required="true"/>
1265                 <retrieve/>
1266                 <update permission="UPDATE_USER_BTYPE" global_required="true"/>
1267                 <delete permission="DELETE_USER_BTYPE" global_required="true"/>
1268             </actions>
1269         </permacrud>
1270         </class>
1271
1272         <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">
1273                 <fields oils_persist:primary="code">
1274                         <field reporter:label="Code" name="code" reporter:selector="value" reporter:datatype="id"/>
1275                         <field reporter:label="Format" name="value" reporter:datatype="text" oils_persist:i18n="true"/>
1276                 </fields>
1277                 <links/>
1278         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1279             <actions>
1280                 <create permission="ADMIN_MARC_CODE" global_required="true"/>
1281                 <retrieve/>
1282                 <update permission="ADMIN_MARC_CODE" global_required="true"/>
1283                 <delete permission="ADMIN_MARC_CODE" global_required="true"/>
1284             </actions>
1285         </permacrud>
1286         </class>
1287
1288     <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">
1289         <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_weights_id_seq">
1290             <field reporter:label="Hold Weights ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1291             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1292             <field reporter:label="User Home Library" name="user_home_ou" reporter:datatype="float"/>
1293             <field reporter:label="Request Library" name="request_ou" reporter:datatype="float"/>
1294             <field reporter:label="Pickup Library" name="pickup_ou" reporter:datatype="float"/>
1295             <field reporter:label="Owning Library" name="item_owning_ou" reporter:datatype="float"/>
1296             <field reporter:label="Item Circ Library" name="item_circ_ou" reporter:datatype="float"/>
1297             <field reporter:label="User Permission Group" name="usr_grp" reporter:datatype="float"/>
1298             <field reporter:label="Requestor Permission Group" name="requestor_grp" reporter:datatype="float"/>
1299             <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="float"/>
1300             <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="float"/>
1301             <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="float"/>
1302             <field reporter:label="MARC Bib Level" name="marc_bib_level" oils_persist:primitive="string" reporter:datatype="float"/>
1303             <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="float"/>
1304             <field reporter:label="Juvenile?" name="juvenile_flag" oils_persist:primitive="string" reporter:datatype="float"/>
1305             <field reporter:label="Reference?" name="ref_flag" reporter:datatype="float"/>
1306             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="float"/>
1307         </fields>
1308         <links/>
1309         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1310             <actions>
1311                 <create permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1312                 <retrieve/>
1313                 <update permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1314                 <delete permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1315             </actions>
1316         </permacrud>
1317     </class>
1318
1319     <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">
1320         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_weights_id_seq">
1321             <field reporter:label="Circ Weights ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1322             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1323             <field reporter:label="Renewal?" name="is_renewal" reporter:datatype="float"/>
1324             <field reporter:label="Org Unit" name="org_unit" reporter:datatype="float"/>
1325             <field reporter:label="Copy Circ Lib" name="copy_circ_lib" reporter:datatype="float"/>
1326             <field reporter:label="Copy Owning Lib" name="copy_owning_lib" reporter:datatype="float"/>
1327             <field reporter:label="User Home Lib" name="user_home_ou" reporter:datatype="float"/>
1328             <field reporter:label="Permission Group" name="grp" reporter:datatype="float"/>
1329             <field reporter:label="Circulation Modifier" name="circ_modifier" reporter:datatype="float"/>
1330             <field reporter:label="MARC Type" name="marc_type" reporter:datatype="float"/>
1331             <field reporter:label="MARC Form" name="marc_form" reporter:datatype="float"/>
1332             <field reporter:label="MARC Bib Level" name="marc_bib_level" reporter:datatype="float"/>
1333             <field reporter:label="Videorecording Format" name="marc_vr_format" reporter:datatype="float"/>
1334             <field reporter:label="Reference?" name="ref_flag" reporter:datatype="float"/>
1335             <field reporter:label="Juvenile?" name="juvenile_flag" reporter:datatype="float"/>
1336             <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" reporter:datatype="float"/>
1337             <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" reporter:datatype="float"/>
1338             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="float"/>
1339         </fields>
1340         <links/>
1341         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1342             <actions>
1343                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1344                 <retrieve/>
1345                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1346                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1347             </actions>
1348         </permacrud>
1349     </class>
1350
1351     <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">
1352         <fields oils_persist:primary="id" oils_persist:sequence="config.weight_assoc_id_seq">
1353             <field reporter:label="Assoc ID" name="id" reporter:datatype="id"/>
1354             <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1355             <field reporter:label="Org Unit" name="org_unit" reporter:datatype="org_unit"/>
1356             <field reporter:label="Circ Weights" name="circ_weights" reporter:datatype="link"/>
1357             <field reporter:label="Hold Weights" name="hold_weights" reporter:datatype="link"/>
1358         </fields>
1359         <links>
1360             <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1361             <link field="circ_weights" reltype="has_a" key="id" map="" class="ccmw"/>
1362             <link field="hold_weights" reltype="has_a" key="id" map="" class="chmw"/>
1363         </links>
1364         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1365             <actions>
1366                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1367                 <retrieve permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT VIEW_CIRC_MATRIX_MATCHPOINT VIEW_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1368                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1369                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT ADMIN_HOLD_MATRIX_MATCHPOINT" context_field='org_unit'/>
1370             </actions>
1371         </permacrud>
1372     </class>
1373
1374         <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">
1375                 <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_matchpoint_id_seq">
1376                         <field reporter:label="Matchpoint ID" name="id" reporter:datatype="id"/>
1377                         <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1378                         <field reporter:label="Strict OU matches?" name="strict_ou_match" reporter:datatype="bool"/>
1379                         <field reporter:label="User Home Library" name="user_home_ou" reporter:datatype="org_unit"/>
1380                         <field reporter:label="Request Library" name="request_ou" reporter:datatype="org_unit"/>
1381                         <field reporter:label="Pickup Library" name="pickup_ou" reporter:datatype="org_unit"/>
1382                         <field reporter:label="Owning Library" name="item_owning_ou" reporter:datatype="org_unit"/>
1383                         <field reporter:label="Item Circ Library" name="item_circ_ou" reporter:datatype="org_unit"/>
1384                         <field reporter:label="User Permission Group" name="usr_grp" reporter:datatype="link"/>
1385                         <field reporter:label="Requestor Permission Group" name="requestor_grp" reporter:datatype="link"/>
1386                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="link"/>
1387                         <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="link"/>
1388                         <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="link"/>
1389                         <field reporter:label="MARC Bib Level" name="marc_bib_level" oils_persist:primitive="string" reporter:datatype="link"/>
1390                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="link"/>
1391                         <field reporter:label="Reference?" name="ref_flag" reporter:datatype="bool"/>
1392             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="text"/>
1393                         <field reporter:label="Holdable?" name="holdable" reporter:datatype="bool"/>
1394                         <field reporter:label="Range is from Owning Lib?" name="distance_is_from_owner" reporter:datatype="bool"/>
1395                         <field reporter:label="Transit Range" name="transit_range" reporter:datatype="link"/>
1396                         <field reporter:label="Max Holds" name="max_holds" reporter:datatype="int"/>
1397                         <field reporter:label="Max includes Frozen" name="include_frozen_holds" reporter:datatype="bool"/>
1398                         <field reporter:label="Copy Age Hold Protection Rule" name="age_hold_protect_rule" reporter:datatype="link"/>
1399                 </fields>
1400                 <links>
1401                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
1402                         <link field="request_ou" reltype="has_a" key="id" map="" class="aou"/>
1403                         <link field="pickup_ou" reltype="has_a" key="id" map="" class="aou"/>
1404                         <link field="item_owning_ou" reltype="has_a" key="id" map="" class="aou"/>
1405                         <link field="item_circ_ou" reltype="has_a" key="id" map="" class="aou"/>
1406                         <link field="usr_grp" reltype="has_a" key="id" map="" class="pgt"/>
1407                         <link field="requestor_grp" reltype="has_a" key="id" map="" class="pgt"/>
1408                         <link field="circ_modifier" reltype="has_a" key="code" map="" class="ccm"/>
1409                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
1410                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
1411                         <link field="marc_bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1412                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
1413                         <link field="age_hold_protect_rule" reltype="has_a" key="id" map="" class="crahp"/>
1414             <link field="transit_range" reltype="has_a" key="id" map="" class="aout"/>
1415                 </links>
1416         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1417             <actions>
1418                 <create permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1419                 <retrieve permission="ADMIN_HOLD_MATRIX_MATCHPOINT VIEW_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1420                 <update permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1421                 <delete permission="ADMIN_HOLD_MATRIX_MATCHPOINT" global_required="true"/>
1422             </actions>
1423         </permacrud>
1424         </class>
1425
1426         <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">
1427                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_matchpoint_id_seq">
1428                         <field reporter:label="Matchpoint ID" name="id" reporter:datatype="id"/>
1429                         <field reporter:label="Renewal?" name="is_renewal" reporter:datatype="bool"/>
1430                         <field reporter:label="Active?" name="active" reporter:datatype="bool"/>
1431                         <field reporter:label="Org Unit" name="org_unit" reporter:datatype="org_unit" oils_obj:required="true"/>
1432                         <field reporter:label="Copy Circ Lib" name="copy_circ_lib" reporter:datatype="org_unit"/>
1433                         <field reporter:label="Copy Owning Lib" name="copy_owning_lib" reporter:datatype="org_unit"/>
1434                         <field reporter:label="User Home Lib" name="user_home_ou" reporter:datatype="org_unit"/>
1435                         <field reporter:label="Permission Group" name="grp" reporter:datatype="link" oils_obj:required="true"/>
1436                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_persist:primitive="string" reporter:datatype="link"/>
1437                         <field reporter:label="MARC Type" name="marc_type" oils_persist:primitive="string" reporter:datatype="link"/>
1438                         <field reporter:label="MARC Form" name="marc_form" oils_persist:primitive="string" reporter:datatype="link"/>
1439                         <field reporter:label="MARC Bib Level" name="marc_bib_level" oils_persist:primitive="string" reporter:datatype="link"/>
1440                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_persist:primitive="string" reporter:datatype="link"/>
1441                         <field reporter:label="Reference?" name="ref_flag" reporter:datatype="bool"/>
1442             <field reporter:label="Juvenile?" name="juvenile_flag" reporter:datatype="bool"/>
1443                         <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" reporter:datatype="text"/>
1444                         <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" reporter:datatype="text"/>
1445             <field reporter:label="Item Age &lt;" name="item_age" reporter:datatype="text"/>
1446                         <field reporter:label="Circulate?" name="circulate" reporter:datatype="bool"/>
1447                         <field reporter:label="Duration Rule" name="duration_rule" reporter:datatype="link"/>
1448                         <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" reporter:datatype="link"/>
1449                         <field reporter:label="Max Fine Rule" name="max_fine_rule" reporter:datatype="link"/>
1450             <field reporter:label="Hard Due Date" name="hard_due_date" reporter:datatype="link"/>
1451             <field reporter:label="Renewals Override" name="renewals" reporter:datatype="int"/>
1452             <field reporter:label="Grace Period Override" name="grace_period" reporter:datatype="interval"/>
1453                         <field reporter:label="Script Test" name="script_test" reporter:datatype="text"/>
1454                         <field name="total_copy_hold_ratio" reporter:datatype="float" reporter:label="Minimum Total Copy/Hold Ratio"/>
1455                         <field name="available_copy_hold_ratio" reporter:datatype="float" reporter:label="Minimum Available Copy/Hold Ratio"/>
1456                 </fields>
1457                 <links>
1458                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1459                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1460                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1461                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
1462                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
1463                         <link field="circ_modifier" reltype="has_a" key="code" map="" class="ccm"/>
1464                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
1465                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
1466                         <link field="marc_bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1467                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
1468                         <link field="duration_rule" reltype="has_a" key="id" map="" class="crcd"/>
1469                         <link field="max_fine_rule" reltype="has_a" key="id" map="" class="crmf"/>
1470                         <link field="recurring_fine_rule" reltype="has_a" key="id" map="" class="crrf"/>
1471             <link field="hard_due_date" reltype="has_a" key="id" map="" class="chdd"/>
1472                 </links>
1473         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1474             <actions>
1475                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1476                 <retrieve permission="ADMIN_CIRC_MATRIX_MATCHPOINT VIEW_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1477                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1478                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field='org_unit'/>
1479             </actions>
1480         </permacrud>
1481         </class>
1482
1483     <class id="cclg" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_limit_group" oils_persist:tablename="config.circ_limit_group" reporter:label="Circulation Limit Group">
1484         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_limit_group_id_seq">
1485             <field reporter:label="ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1486             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1487             <field reporter:label="Description" name="description" reporter:datatype="text"/>
1488         </fields>
1489         <links/>
1490         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1491             <actions>
1492                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1493                 <retrieve/>
1494                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1495                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" global_required="true"/>
1496             </actions>
1497         </permacrud>
1498     </class>
1499
1500     <class id="ccls" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_limit_set" oils_persist:tablename="config.circ_limit_set" reporter:label="Circulation Limit Set">
1501         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_limit_set_id_seq">
1502             <field reporter:label="ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1503             <field reporter:label="Name" name="name" reporter:datatype="text"/>
1504             <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
1505             <field reporter:label="Items Out" name="items_out" reporter:datatype="int"/>
1506             <field reporter:label="Min Depth" name="depth" reporter:datatype="int"/>
1507             <field reporter:label="Global" name="global" reporter:datatype="bool"/>
1508             <field reporter:label="Description" name="description" reporter:datatype="text"/>
1509         </fields>
1510         <links>
1511             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1512         </links>
1513         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1514             <actions>
1515                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field="owning_lib"/>
1516                 <retrieve/>
1517                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field="owning_lib"/>
1518                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT" context_field="owning_lib"/>
1519             </actions>
1520         </permacrud>
1521     </class>
1522
1523     <class id="ccmlsm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_matrix_limit_set_map" oils_persist:tablename="config.circ_matrix_limit_set_map" reporter:label="Circulation Matrix Limit Set Map">
1524         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_limit_set_map_id_seq">
1525             <field reporter:label="ID" name="id" reporter:datatype="id"/>
1526             <field reporter:label="Matchpoint" name="matchpoint" reporter:datatype="link"/>
1527             <field reporter:label="Limit Set" name="limit_set" reporter:datatype="link"/>
1528             <field reporter:label="Fallthrough" name="fallthrough" reporter:datatype="bool"/>
1529             <field reporter:label="Active" name="active" reporter:datatype="bool"/>
1530         </fields>
1531         <links>
1532             <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
1533             <link field="limit_set" reltype="has_a" key="id" map="" class="ccls"/>
1534         </links>
1535         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1536             <actions>
1537                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1538                     <context link="matchpoint" field="org_unit"/>
1539                 </create>
1540                 <retrieve/>
1541                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1542                     <context link="matchpoint" field="org_unit"/>
1543                 </update>
1544                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1545                     <context link="matchpoint" field="org_unit"/>
1546                 </delete>
1547             </actions>
1548         </permacrud>
1549     </class>
1550
1551     <class id="cclscmm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_limit_set_circ_mod_map" oils_persist:tablename="config.circ_limit_set_circ_mod_map" reporter:label="Circulation Limit Set Circ Mod Map">
1552         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_limit_set_circ_mod_map_id_seq">
1553             <field reporter:label="ID" name="id" reporter:datatype="id"/>
1554             <field reporter:label="Limit Set" name="limit_set" reporter:datatype="link"/>
1555             <field reporter:label="Circulation Modifier" name="circ_mod" reporter:datatype="link"/>
1556         </fields>
1557         <links>
1558             <link field="limit_set" reltype="has_a" key="id" map="" class="ccls"/>
1559             <link field="circ_mod" reltype="has_a" key="code" map="" class="ccm"/>
1560         </links>
1561         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1562             <actions>
1563                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1564                     <context link="limit_set" field="owning_lib"/>
1565                 </create>
1566                 <retrieve/>
1567                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1568                     <context link="limit_set" field="owning_lib"/>
1569                 </update>
1570                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1571                     <context link="limit_set" field="owning_lib"/>
1572                 </delete>
1573             </actions>
1574         </permacrud>
1575     </class>
1576
1577     <class id="cclsgm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="config::circ_limit_set_group_map" oils_persist:tablename="config.circ_limit_set_group_map" reporter:label="Circulation Limit Set Group Map">
1578         <fields oils_persist:primary="id" oils_persist:sequence="config.circ_limit_set_group_map_id_seq">
1579             <field reporter:label="ID" name="id" reporter:datatype="id"/>
1580             <field reporter:label="Limit Set" name="limit_set" reporter:datatype="link"/>
1581             <field reporter:label="Limit Group" name="limit_group" reporter:datatype="link"/>
1582             <field reporter:label="Check Only" name="check_only" reporter:datatype="bool"/>
1583         </fields>
1584         <links>
1585             <link field="limit_set" reltype="has_a" key="id" map="" class="ccls"/>
1586             <link field="limit_group" reltype="has_a" key="id" map="" class="cclg"/>
1587         </links>
1588         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1589             <actions>
1590                 <create permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1591                     <context link="limit_set" field="owning_lib"/>
1592                 </create>
1593                 <retrieve/>
1594                 <update permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1595                     <context link="limit_set" field="owning_lib"/>
1596                 </update>
1597                 <delete permission="ADMIN_CIRC_MATRIX_MATCHPOINT">
1598                     <context link="limit_set" field="owning_lib"/>
1599                 </delete>
1600             </actions>
1601         </permacrud>
1602     </class>
1603
1604         <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">
1605                 <fields oils_persist:primary="id" oils_persist:sequence="config.identification_type_id_seq">
1606                         <field reporter:label="Identification ID" name="id" reporter:selector="name" reporter:datatype="id"/>
1607                         <field reporter:label="Identification Name" name="name" reporter:datatype="text" oils_persist:i18n="true"/>
1608                 </fields>
1609                 <links/>
1610         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1611             <actions>
1612                 <create permission="ADMIN_IDENT_TYPE" global_required="true"/>
1613                 <retrieve/>
1614                 <update permission="ADMIN_IDENT_TYPE" global_required="true"/>
1615                 <delete permission="ADMIN_IDENT_TYPE" global_required="true"/>
1616             </actions>
1617         </permacrud>
1618         </class>
1619
1620         <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">
1621                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_question_id_seq">
1622                         <field reporter:label="Answers" name="answers" oils_persist:virtual="true" reporter:datatype="link"/>
1623                         <field reporter:label="Responses" name="responses" oils_persist:virtual="true" reporter:datatype="link"/>
1624                         <field reporter:label="Question ID" name="id" reporter:datatype="id" />
1625                         <field reporter:label="Question" name="question" reporter:datatype="text"/>
1626                         <field reporter:label="Survey" name="survey" reporter:datatype="link"/>
1627                 </fields>
1628                 <links>
1629                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
1630                         <link field="responses" reltype="has_many" key="question" map="" class="asvr"/>
1631                         <link field="answers" reltype="has_many" key="question" map="" class="asva"/>
1632                 </links>
1633         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1634             <actions>
1635                 <create permission="ADMIN_SURVEY">
1636                     <context link="survey" field="owner"/>
1637                 </create>
1638                 <retrieve/>
1639                 <update permission="ADMIN_SURVEY">
1640                     <context link="survey" field="owner"/>
1641                 </update>
1642                 <delete permission="ADMIN_SURVEY">
1643                     <context link="survey" field="owner"/>
1644                 </delete>
1645             </actions>
1646         </permacrud>
1647         </class>
1648         <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">
1649                 <fields oils_persist:primary="id" oils_persist:sequence="">
1650                         <field reporter:label="Balance Owed" name="balance_owed" reporter:datatype="money"/>
1651                         <field reporter:label="Transaction ID" name="id" reporter:datatype="id"/>
1652                         <field reporter:label="Last Billing Note" name="last_billing_note" reporter:datatype="text"/>
1653                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" reporter:datatype="timestamp"/>
1654                         <field reporter:label="Last Billing Type" name="last_billing_type" reporter:datatype="text"/>
1655                         <field reporter:label="Last Payment Note" name="last_payment_note" reporter:datatype="text"/>
1656                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" reporter:datatype="timestamp"/>
1657                         <field reporter:label="Last Payment Type" name="last_payment_type" reporter:datatype="text"/>
1658                         <field reporter:label="Total Owed" name="total_owed" reporter:datatype="money"/>
1659                         <field reporter:label="Total Paid" name="total_paid" reporter:datatype="money"/>
1660                         <field reporter:label="Billed User" name="usr" reporter:datatype="link"/>
1661                         <field reporter:label="Transaction Finish Time" name="xact_finish" reporter:datatype="timestamp" />
1662                         <field reporter:label="Transaction Start Time" name="xact_start" reporter:datatype="timestamp" />
1663                         <field reporter:label="Transaction Type" name="xact_type" reporter:datatype="text"/>
1664                 </fields>
1665                 <links>
1666                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1667                 </links>
1668         </class>
1669         <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">
1670                 <fields oils_persist:primary="id" oils_persist:sequence="">
1671                         <field reporter:label="Balance Owed" name="balance_owed" reporter:datatype="money"/>
1672                         <field reporter:label="Transaction ID" name="id" reporter:datatype="id"/>
1673                         <field reporter:label="Last Billing Note" name="last_billing_note" reporter:datatype="text"/>
1674                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" reporter:datatype="timestamp"/>
1675                         <field reporter:label="Last Billing Type" name="last_billing_type" reporter:datatype="text"/>
1676                         <field reporter:label="Last Payment Note" name="last_payment_note" reporter:datatype="text"/>
1677                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" reporter:datatype="timestamp"/>
1678                         <field reporter:label="Last Payment Type" name="last_payment_type" reporter:datatype="text"/>
1679                         <field reporter:label="Total Owed" name="total_owed" reporter:datatype="money"/>
1680                         <field reporter:label="Total Paid" name="total_paid" reporter:datatype="money"/>
1681                         <field reporter:label="Billed User" name="usr" reporter:datatype="link"/>
1682                         <field reporter:label="Transaction Finish Time" name="xact_finish" reporter:datatype="timestamp" />
1683                         <field reporter:label="Transaction Start Time" name="xact_start" reporter:datatype="timestamp" />
1684                         <field reporter:label="Transaction Type" name="xact_type" reporter:datatype="text"/>
1685                         <field reporter:label="Billing Location" name="billing_location" reporter:datatype="link"/>
1686                 </fields>
1687                 <links>
1688                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1689                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
1690                 </links>
1691         </class>
1692         <class id="aun" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_note" oils_persist:tablename="actor.usr_note" reporter:label="User Note">
1693                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_note_id_seq">
1694                         <field reporter:label="Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
1695                         <field reporter:label="Creating Staff" name="creator" reporter:datatype="link"/>
1696                         <field reporter:label="Note ID" name="id" reporter:datatype="id" />
1697                         <field reporter:label="Is OPAC Visible?" name="pub" reporter:datatype="bool"/>
1698                         <field reporter:label="Note Title" name="title" reporter:datatype="text"/>
1699                         <field reporter:label="User" name="usr" reporter:datatype="link" />
1700                         <field reporter:label="Note Content" name="value" reporter:datatype="text"/>
1701                 </fields>
1702                 <links>
1703                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1704                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1705                 </links>
1706         </class>
1707         <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">
1708                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_password_reset_id_seq">
1709                         <field reporter:label="Request ID" name="id" reporter:datatype="id"/>
1710                         <field reporter:label="UUID" name="uuid" reporter:datatype="text"/>
1711                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
1712                         <field reporter:label="Request Time" name="request_time" reporter:datatype="timestamp"/>
1713                         <field reporter:label="Was Reset?" name="has_been_reset" reporter:datatype="bool"/>
1714                 </fields>
1715                 <links>
1716                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1717                 </links>
1718         </class>
1719         <class id="aus" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_setting" oils_persist:tablename="actor.usr_setting" reporter:label="User Setting">
1720                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_setting_id_seq">
1721                         <field reporter:label="Setting ID" name="id" reporter:datatype="id" />
1722                         <field reporter:label="Name" name="name" reporter:datatype="link"/>
1723                         <field reporter:label="User" name="usr" reporter:datatype="link"/>
1724                         <field reporter:label="Value" name="value" reporter:datatype="text"/>
1725                 </fields>
1726                 <links>
1727                         <link field="name" reltype="has_a" key="name" map="" class="cust"/>
1728                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1729                 </links>
1730         </class>
1731         <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">
1732                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.author_field_entry_id_seq">
1733                         <field name="field" reporter:datatype="link"/>
1734                         <field name="id" reporter:datatype="id" />
1735                         <field name="source" reporter:datatype="link"/>
1736                         <field name="value" reporter:datatype="text"/>
1737                 </fields>
1738                 <links>
1739                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1740                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1741                 </links>
1742         </class>
1743         <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">
1744                 <fields oils_persist:primary="id" oils_persist:sequence="action.in_house_use_id_seq">
1745                         <field reporter:label="Use ID" name="id" reporter:datatype="id" />
1746                         <field reporter:label="Item" name="item" reporter:datatype="int" />
1747                         <field reporter:label="Using Library" name="org_unit" reporter:datatype="org_unit"/>
1748                         <field reporter:label="Recording Staff" name="staff" reporter:datatype="link"/>
1749                         <field reporter:label="Use Date/Time" name="use_time" reporter:datatype="timestamp"/>
1750                 </fields>
1751                 <links>
1752                         <link field="item" reltype="has_a" key="id" map="" class="acp"/>
1753                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
1754                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1755                 </links>
1756         </class>
1757         <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">
1758                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cat_in_house_use_id_seq">
1759                         <field reporter:label="Use ID" name="id" reporter:datatype="id" />
1760                         <field reporter:label="Item Type" name="item_type" reporter:datatype="link"/>
1761                         <field reporter:label="Using Library" name="org_unit" reporter:datatype="org_unit"/>
1762                         <field reporter:label="Recording Staff" name="staff" reporter:datatype="link"/>
1763                         <field reporter:label="Use Date/Time" name="use_time" reporter:datatype="timestamp"/>
1764                 </fields>
1765                 <links>
1766                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
1767                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
1768                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1769                 </links>
1770         </class>
1771         <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">
1772                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
1773                         <field reporter:label="Pretransit Copy Status" name="copy_status" reporter:datatype="bool"/>
1774                         <field reporter:label="Destination" name="dest" reporter:datatype="link"/>
1775                         <field reporter:label="Receive Date/Time" name="dest_recv_time" reporter:datatype="timestamp"/>
1776                         <field reporter:label="Transit ID" name="id" reporter:datatype="id"/>
1777                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" reporter:datatype="bool"/>
1778                         <field reporter:label="Previous Hop (unused)" name="prev_hop" reporter:datatype="link"/>
1779                         <field reporter:label="Source" name="source" reporter:datatype="link"/>
1780                         <field reporter:label="Prev Destination" name="prev_dest" reporter:datatype="org_unit"/>
1781                         <field reporter:label="Send Date/Time" name="source_send_time" reporter:datatype="timestamp"/>
1782                         <field reporter:label="Transited Copy" name="target_copy" reporter:datatype="link"/>
1783                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_persist:virtual="true" reporter:datatype="link"/>
1784                 </fields>
1785                 <links>
1786                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
1787                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
1788                         <link field="prev_dest" reltype="has_a" key="id" map="" class="aou"/>
1789                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
1790                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
1791                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1792                 </links>
1793         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1794             <actions>
1795                 <create permission="TRANSIT_COPY" context_field="owner">
1796                     <context link="target_copy" field="circ_lib"/>
1797                 </create>
1798                 <retrieve/>
1799                 <update permission="UPDATE_TRANSIT" context_field="dest source"/>
1800                 <delete permission="DELETE_TRANSIT" context_field="dest source"/>
1801             </actions>
1802         </permacrud>
1803         </class>
1804         <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">
1805                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_response_id_seq">
1806                         <field reporter:label="Answer" name="answer" reporter:datatype="link"/>
1807                         <field reporter:label="Answer Date/Time" name="answer_date" reporter:datatype="timestamp"/>
1808                         <field reporter:label="Effective Answer Date/Time" name="effective_date" reporter:datatype="timestamp"/>
1809                         <field reporter:label="Answer ID" name="id" reporter:datatype="id" />
1810                         <field reporter:label="Question" name="question" reporter:datatype="link"/>
1811                         <field reporter:label="Response Group ID" name="response_group_id" reporter:datatype="int" />
1812                         <field reporter:label="Survey" name="survey" reporter:datatype="link"/>
1813                         <field reporter:label="Responding User" name="usr" reporter:datatype="link"/>
1814                 </fields>
1815                 <links>
1816                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
1817                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
1818                         <link field="answer" reltype="has_a" key="id" map="" class="asva"/>
1819                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1820                 </links>
1821         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1822             <actions>
1823                 <create permission="ADMIN_SURVEY">
1824                     <context link="survey" field="owner"/>
1825                 </create>
1826                 <retrieve/>
1827                 <update permission="ADMIN_SURVEY">
1828                     <context link="survey" field="owner"/>
1829                 </update>
1830                 <delete permission="ADMIN_SURVEY">
1831                     <context link="survey" field="owner"/>
1832                 </delete>
1833             </actions>
1834         </permacrud>
1835         </class>
1836         <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">
1837                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_id_seq">
1838                         <field name="bucket" />
1839                         <field name="id" reporter:datatype="id" />
1840                         <field name="target_copy" reporter:datatype="link"/>
1841                         <field name="create_time" reporter:datatype="timestamp" />
1842                         <field name="pos" reporter:datatype="int" />
1843                         <field name="notes" oils_persist:virtual="true" reporter:datatype="link" />
1844                 </fields>
1845                 <links>
1846                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1847                         <link field="bucket" reltype="has_a" key="id" map="" class="ccb"/>
1848             <link field="notes" reltype="has_many" map="" key="item" class="ccbin"/>
1849                 </links>
1850         </class>
1851         <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">
1852                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_note_id_seq">
1853                         <field name="id" reporter:datatype="id" />
1854                         <field name="item" reporter:datatype="link"/>
1855                         <field name="note" reporter:datatype="text" />
1856                 </fields>
1857                 <links>
1858                         <link field="item" reltype="has_a" key="id" map="" class="ccbi"/>
1859                 </links>
1860         </class>
1861
1862         <class id="acs" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::control_set" oils_persist:tablename="authority.control_set" reporter:label="Authority Control Set" oils_persist:field_safe="true">
1863                 <fields oils_persist:primary="id" oils_persist:sequence="authority.control_set_id_seq">
1864                         <field reporter:label="Control Set ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1865                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true" oils_obj:required="true" />
1866                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true" />
1867                         <field reporter:label="Controlling Authority Fields" name="authority_fields" reporter:datatype="link" oils_persist:virtual="true"/>
1868                         <field reporter:label="Thesauri" name="thesauri" reporter:datatype="link" oils_persist:virtual="true"/>
1869                 </fields>
1870                 <links>
1871                         <link field="authority_fields" reltype="has_many" key="control_set" map="" class="acsaf"/>
1872                         <link field="thesauri" reltype="has_many" key="control_set" map="" class="at"/>
1873                 </links>
1874                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1875                         <actions>
1876                                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1877                                 <retrieve/>
1878                                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1879                                 <delete permission="DELETE_AUTHORITY_CONTROL_SET" global_required="true"/>
1880                         </actions>
1881                 </permacrud>
1882         </class>
1883
1884         <class id="acsaf" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::control_set_authority_field" oils_persist:tablename="authority.control_set_authority_field" reporter:label="Authority Control Set Authority Field" oils_persist:field_safe="true">
1885                 <fields oils_persist:primary="id" oils_persist:sequence="authority.control_set_authority_field_id_seq">
1886                         <field reporter:label="Control Set Authority Field ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1887                         <field reporter:label="Main Entry" name="main_entry" reporter:datatype="link"/>
1888                         <field reporter:label="Control Set" name="control_set" reporter:datatype="link"/>
1889                         <field reporter:label="Tag" name="tag" reporter:datatype="text" oils_obj:required="true" oils_obj:validate="^.{3}$"/>
1890                         <field reporter:label="Subfield List" name="sf_list" reporter:datatype="text" />
1891                         <field reporter:label="Non-filing Indicator" name="nfi" reporter:datatype="text" />
1892                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true" oils_obj:required="true" />
1893                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true" />
1894                         <field reporter:label="Subordinate Entries" name="sub_entries" reporter:datatype="link" oils_persist:virtual="true"/>
1895                         <field reporter:label="Controlled Bib Fields" name="bib_fields" reporter:datatype="link" oils_persist:virtual="true"/>
1896                         <field reporter:label="Thesauri" name="thesauri" reporter:datatype="link" oils_persist:virtual="true"/>
1897                         <field reporter:label="Browse Axis Maps" name="axis_maps" reporter:datatype="link" oils_persist:virtual="true"/>
1898                 </fields>
1899                 <links>
1900                         <link field="axis_maps" reltype="has_many" key="field" map="" class="abaafm"/>
1901                         <link field="control_set" reltype="has_a" key="id" map="" class="acs"/>
1902                         <link field="bib_fields" reltype="has_many" key="authority_field" map="" class="acsbf"/>
1903                         <link field="thesauri" reltype="has_many" key="control_set" map="" class="at"/>
1904                         <link field="main_entry" reltype="has_a" key="id" map="" class="acsaf"/>
1905                         <link field="sub_entries" reltype="has_many" key="main_entry" map="" class="acsaf"/>
1906                 </links>
1907                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1908                         <actions>
1909                                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1910                                 <retrieve/>
1911                                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1912                                 <delete permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1913                         </actions>
1914                 </permacrud>
1915         </class>
1916
1917         <class id="acsbf" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::control_set_bib_field" oils_persist:tablename="authority.control_set_bib_field" reporter:label="Authority Control Set Bib Field" oils_persist:field_safe="true">
1918                 <fields oils_persist:primary="id" oils_persist:sequence="authority.control_set_bib_field_id_seq">
1919                         <field reporter:label="Controlled Bib Field ID" name="id" reporter:datatype="id" reporter:selector="name"/>
1920                         <field reporter:label="Controlling Authority Field" name="authority_field" reporter:datatype="link"/>
1921                         <field reporter:label="Tag" name="tag" reporter:datatype="text" oils_obj:required="true" oils_obj:validate="^.{3}$"/>
1922                 </fields>
1923                 <links>
1924                         <link field="authority_field" reltype="has_a" key="id" map="" class="acsaf"/>
1925                 </links>
1926                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1927                         <actions>
1928                                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1929                                 <retrieve/>
1930                                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1931                                 <delete permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1932                         </actions>
1933                 </permacrud>
1934         </class>
1935
1936         <class id="at" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::thesaurus" oils_persist:tablename="authority.thesaurus" reporter:label="Authority Thesaurus" oils_persist:field_safe="true">
1937                 <fields oils_persist:primary="code">
1938                         <field reporter:label="Thesaurus Code" name="code" reporter:datatype="id" reporter:selector="name"/>
1939                         <field reporter:label="Control Set" name="control_set" reporter:datatype="link"/>
1940                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true" oils_obj:required="true" />
1941                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true" />
1942                 </fields>
1943                 <links>
1944                         <link field="control_set" reltype="has_a" key="id" map="" class="acs"/>
1945                 </links>
1946                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1947                         <actions>
1948                                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1949                                 <retrieve/>
1950                                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1951                                 <delete permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1952                         </actions>
1953                 </permacrud>
1954         </class>
1955
1956         <class id="aba" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::browse_axis" oils_persist:tablename="authority.browse_axis" reporter:label="Authority Browse Axis" oils_persist:field_safe="true">
1957                 <fields oils_persist:primary="code">
1958                         <field reporter:label="Code" name="code" reporter:datatype="id" reporter:selector="name" oils_obj:validate="^\S+$"/>
1959                         <field reporter:label="Name" name="name" reporter:datatype="text" oils_persist:i18n="true" oils_obj:required="true"/>
1960                         <field reporter:label="Sorter Attribute" name="sorter" reporter:datatype="link"/>
1961                         <field reporter:label="Description" name="description" reporter:datatype="text"/>
1962                         <field reporter:label="Authority Fields" name="fields" reporter:datatype="link" oils_persist:virtual="true"/>
1963                         <field reporter:label="Authority Field Maps" name="maps" reporter:datatype="link" oils_persist:virtual="true"/>
1964                 </fields>
1965                 <links>
1966                         <link field="sorter" reltype="has_a" key="name" map="" class="crad"/>
1967                         <link field="fields" reltype="has_many" key="axis" map="field" class="abaafm"/>
1968                         <link field="maps" reltype="has_many" key="axis" map="" class="abaafm"/>
1969                 </links>
1970                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1971                         <actions>
1972                                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1973                                 <retrieve/>
1974                                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1975                                 <delete permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1976                         </actions>
1977                 </permacrud>
1978         </class>
1979
1980     <class id="abaafm" controller="open-ils.cstore open-ils.pcrud" oils_obj:fieldmapper="authority::browse_axis_authority_field_map" oils_persist:tablename="authority.browse_axis_authority_field_map" reporter:label="Authority Browse Axis Field Map" oils_persist:field_safe="true">
1981         <fields oils_persist:primary="id" oils_persist:sequence="authority.browse_axis_authority_field_map_id_seq">
1982             <field reporter:label="Axis Authority Field Map ID" name="id" reporter:datatype="id"/>
1983             <field reporter:label="Authority Field" name="field" oils_obj:required="true" reporter:datatype="link"/>
1984             <field reporter:label="Axis" name="axis" reporter:datatype="link" oils_obj:required="true"/>
1985         </fields>
1986         <links>
1987             <link field="field" reltype="has_a" key="id" map="" class="acsaf"/>
1988             <link field="axis" reltype="has_a" key="code" map="" class="aba"/>
1989         </links>
1990         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1991             <actions>
1992                 <create permission="CREATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1993                 <retrieve/>
1994                 <update permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1995                 <delete permission="UPDATE_AUTHORITY_CONTROL_SET" global_required="true"/>
1996             </actions>
1997         </permacrud>
1998     </class>
1999
2000         <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">
2001                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_entry_id_seq">
2002                         <field name="active" reporter:datatype="bool"/>
2003                         <field name="create_date" reporter:datatype="timestamp"/>
2004                         <field name="creator" />
2005                         <field name="deleted" reporter:datatype="bool"/>
2006                         <field name="edit_date" reporter:datatype="timestamp"/>
2007                         <field name="editor" />
2008                         <field name="id" reporter:datatype="id" />
2009                         <field name="last_xact_id" />
2010                         <field name="marc" />
2011                         <field name="source" />
2012                         <field reporter:label="Control Set" name="control_set" reporter:datatype="link"/>
2013                         <field reporter:label="Owner" name="owner"  reporter:datatype="org_unit"/>
2014                         <field name="fixed_fields" oils_persist:virtual="true" reporter:datatype="link"/>
2015                         <field name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2016                         <field name="bib_links" oils_persist:virtual="true" reporter:datatype="link"/>
2017                 </fields>
2018                 <links>
2019                         <link field="control_set" reltype="has_a" key="id" map="" class="acs"/>
2020                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2021                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2022                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2023                         <link field="notes" reltype="has_many" key="record" map="" class="arn"/>
2024                         <link field="bib_links" reltype="has_many" key="authority" map="" class="abl"/>
2025                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="ard"/>
2026                 </links>
2027                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2028                         <actions>
2029                                 <create permission="CREATE_MARC IMPORT_MARC" global_required="true"/>
2030                                 <retrieve/>
2031                                 <update permission="UPDATE_MARC" global_required="true"/>
2032                                 <delete permission="UPDATE_MARC" global_required="true"/>
2033                         </actions>
2034                 </permacrud>
2035         </class>
2036         <class id="ard" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_descriptor" oils_persist:tablename="authority.rec_descriptor" reporter:label="Authority Record Descriptor">
2037                 <fields oils_persist:primary="id" oils_persist:sequence="authority.rec_descriptor_id_seq">
2038                         <field name="char_encoding" />
2039                         <field name="id" />
2040                         <field name="record" />
2041                         <field name="record_status" />
2042                         <field name="thesaurus" />
2043                 </fields>
2044                 <links>
2045                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
2046                         <link field="thesaurus" reltype="might_have" key="code" map="" class="at"/>
2047                 </links>
2048         </class>
2049         <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">
2050                 <fields oils_persist:primary="id" oils_persist:sequence="authority.bib_linking_id_seq">
2051                         <field name="id" reporter:datatype="id" />
2052                         <field name="bib" reporter:datatype="link" />
2053                         <field name="authority" reporter:datatype="link" />
2054                 </fields>
2055                 <links>
2056                         <link field="bib" reltype="has_a" key="id" map="" class="bre"/>
2057                         <link field="authority" reltype="has_a" key="id" map="" class="are"/>
2058                 </links>
2059         </class>
2060         <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">
2061                 <fields oils_persist:primary="code" oils_persist:sequence="">
2062                         <field reporter:label="Language Code" name="code" reporter:selector="value" reporter:datatype="text"/>
2063                         <field reporter:label="Language" name="value" reporter:datatype="text" oils_persist:i18n="true"/>
2064                 </fields>
2065                 <links/>
2066         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2067             <actions>
2068                 <create permission="CREATE_MARC_CODE" global_required="true"/>
2069                 <retrieve/>
2070                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
2071                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
2072             </actions>
2073         </permacrud>
2074         </class>
2075         <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">
2076                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2077                         <field name="accepting_usr" />
2078                         <field name="amount" reporter:datatype="money" />
2079                         <field name="amount_collected" reporter:datatype="money" />
2080                         <field name="approval_code" reporter:datatype="text"/>
2081                         <field name="cash_drawer" reporter:datatype="link"/>
2082                         <field name="cc_first_name" reporter:datatype="text"/>
2083                         <field name="cc_last_name" reporter:datatype="text"/>
2084                         <field name="cc_number" reporter:datatype="text"/>
2085                         <field name="cc_order_number" reporter:datatype="text"/>
2086                         <field name="cc_type" reporter:datatype="text"/>
2087                         <field name="cc_processor" reporter:datatype="text"/>
2088                         <field name="expire_month" reporter:datatype="int" />
2089                         <field name="expire_year" reporter:datatype="int" />
2090                         <field name="id" reporter:datatype="id" />
2091                         <field name="note" reporter:datatype="text"/>
2092                         <field name="payment_ts" reporter:datatype="timestamp"/>
2093                         <field name="xact" reporter:datatype="link"/>
2094                         <field name="payment_type" oils_persist:virtual="true" reporter:datatype="text"/>
2095                         <field name="payment" oils_persist:virtual="true" reporter:datatype="link"/>
2096                 </fields>
2097                 <links>
2098                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2099                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2100                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
2101                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2102                 </links>
2103         </class>
2104         <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">
2105                 <fields oils_persist:primary="name">
2106                         <field reporter:label="Name" name="name" reporter:datatype="text" />
2107                         <field reporter:label="Namespace URI" name="namespace_uri" reporter:datatype="text"/>
2108                         <field reporter:label="Namespace Prefix" name="prefix" reporter:datatype="text"/>
2109                         <field reporter:label="XSLT" name="xslt" reporter:datatype="text" />
2110                 </fields>
2111                 <links/>
2112         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2113             <actions>
2114                 <create permission="CREATE_XML_TRANSFORM" global_required="true"/>
2115                 <retrieve/>
2116                 <update permission="UPDATE_XML_TRANSFORM" global_required="true"/>
2117                 <delete permission="DELETE_XML_TRANSFORM" global_required="true"/>
2118             </actions>
2119         </permacrud>
2120         </class>
2121
2122         <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">
2123                 <fields oils_persist:primary="alias">
2124                         <field reporter:label="Alias (RegExp)" name="alias" reporter:datatype="text"/>
2125                         <field reporter:label="Class" name="field_class" reporter:datatype="link"/>
2126                         <field reporter:label="Field" name="field" reporter:datatype="link"/>
2127                 </fields>
2128                 <links>
2129                         <link field="field_class" reltype="has_a" key="name" map="" class="cmc"/>
2130                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2131                 </links>
2132         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2133             <actions>
2134                 <create permission="CREATE_METABIB_SEARCH_ALIAS" global_required="true"/>
2135                 <retrieve/>
2136                 <update permission="UPDATE_METABIB_SEARCH_ALIAS" global_required="true"/>
2137                 <delete permission="DELETE_METABIB_SEARCH_ALIAS" global_required="true"/>
2138             </actions>
2139         </permacrud>
2140         </class>
2141
2142         <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">
2143                 <fields oils_persist:primary="name">
2144                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
2145                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
2146                         <field reporter:label="Buoyant?" name="buoyant" reporter:datatype="bool" />
2147                         <field reporter:label="Restrict?" name="restrict" reporter:datatype="bool" />
2148                         <field reporter:label="Fields" name="fields" reporter:datatype="link" oils_persist:virtual="true"/>
2149                 </fields>
2150                 <links>
2151                         <link field="fields" reltype="has_many" key="name" map="" class="cmf"/>
2152                 </links>
2153         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2154             <actions>
2155                 <create permission="CREATE_METABIB_CLASS" global_required="true"/>
2156                 <retrieve/>
2157                 <update permission="UPDATE_METABIB_CLASS" global_required="true"/>
2158                 <delete permission="DELETE_METABIB_CLASS" global_required="true"/>
2159             </actions>
2160         </permacrud>
2161         </class>
2162
2163         <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">
2164                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_id_seq">
2165                         <field reporter:label="Class" name="field_class" reporter:datatype="link"/>
2166                         <field reporter:label="ID" name="id" reporter:datatype="id" />
2167                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
2168                         <field reporter:label="Label" name="label" reporter:datatype="text" oils_persist:i18n="true"/>
2169                         <field reporter:label="XPath" name="xpath" reporter:datatype="text"/>
2170                         <field reporter:label="Weight" name="weight" reporter:datatype="int" />
2171                         <field reporter:label="Format" name="format" reporter:datatype="link"/>
2172                         <field reporter:label="Search Field" name="search_field" reporter:datatype="bool" />
2173                         <field reporter:label="Facet Field" name="facet_field" reporter:datatype="bool" />
2174                         <field reporter:label="Facet XPath" name="facet_xpath" reporter:datatype="text" />
2175                         <field reporter:label="Browse Field" name="browse_field" reporter:datatype="bool" />
2176                         <field reporter:label="Browse XPath" name="browse_xpath" reporter:datatype="text" />
2177                         <field reporter:label="Restrict?" name="restrict" reporter:datatype="bool" />
2178                 </fields>
2179                 <links>
2180                         <link field="field_class" reltype="has_a" key="name" map="" class="cmc"/>
2181                 </links>
2182         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2183             <actions>
2184                 <create permission="CREATE_METABIB_FIELD" global_required="true"/>
2185                 <retrieve/>
2186                 <update permission="UPDATE_METABIB_FIELD" global_required="true"/>
2187                 <delete permission="DELETE_METABIB_FIELD" global_required="true"/>
2188             </actions>
2189         </permacrud>
2190         </class>
2191         <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">
2192                 <fields oils_persist:primary="id" oils_persist:sequence="config.biblio_fingerprint_id_seq">
2193                         <field name="id" reporter:datatype="id" />
2194                         <field name="name" reporter:datatype="text"/>
2195                         <field name="xpath" reporter:datatype="text"/>
2196                         <field name="format" reporter:datatype="link"/>
2197                         <field name="first_word" reporter:datatype="bool" />
2198                 </fields>
2199                 <links/>
2200         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2201             <actions>
2202                 <create permission="CREATE_BIBLIO_FINGERPRINT" global_required="true"/>
2203                 <retrieve/>
2204                 <update permission="UPDATE_BIBLIO_FINGERPRINT" global_required="true"/>
2205                 <delete permission="DELETE_BIBLIO_FINGERPRINT" global_required="true"/>
2206             </actions>
2207         </permacrud>
2208         </class>
2209         <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">
2210                 <fields oils_persist:primary="code" oils_persist:sequence="">
2211                         <field reporter:label="Audience Code" name="code" reporter:selector="value" reporter:datatype="text"/>
2212                         <field reporter:label="Description" name="description" reporter:datatype="text" oils_persist:i18n="true" />
2213                         <field reporter:label="Audience" name="value"  reporter:datatype="text" oils_persist:i18n="true"/>
2214                 </fields>
2215                 <links/>
2216         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2217             <actions>
2218                 <create permission="CREATE_MARC_CODE" global_required="true"/>
2219                 <retrieve/>
2220                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
2221                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
2222             </actions>
2223         </permacrud>
2224         </class>
2225         <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">
2226                 <fields oils_persist:primary="code" oils_persist:sequence="">
2227                         <field reporter:label="Item Form Code" name="code" reporter:selector="value" reporter:datatype="text"/>
2228                         <field reporter:label="Item Form" name="value"  reporter:datatype="text" oils_persist:i18n="true"/>
2229                 </fields>
2230                 <links/>
2231         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2232             <actions>
2233                 <create permission="ADMIN_MARC_CODE" global_required="true"/>
2234                 <retrieve/>
2235                 <update permission="ADMIN_MARC_CODE" global_required="true"/>
2236                 <delete permission="ADMIN_MARC_CODE" global_required="true"/>
2237             </actions>
2238         </permacrud>
2239         </class>
2240     <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">
2241         <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_class_id_seq">
2242             <field reporter:label="Call number class ID" name="id" reporter:datatype="id"/>
2243             <field reporter:label="Name" name="name" reporter:datatype="text"/>
2244             <field reporter:label="Normalizer function" name="normalizer" reporter:datatype="text"/>
2245             <field reporter:label="Call number fields" name="field" reporter:datatype="text"/>
2246         </fields>
2247         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2248             <actions>
2249                 <retrieve/>
2250             </actions>
2251         </permacrud>
2252     </class>
2253         <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">
2254                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_suffix_id_seq">
2255                         <field reporter:label="ID" name="id" reporter:datatype="id" />
2256                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
2257                         <field reporter:label="Label Sort Key" name="label_sortkey" reporter:datatype="text"/>
2258                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
2259                 </fields>
2260                 <links>
2261                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
2262                 </links>
2263         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2264             <actions>
2265                 <create permission="CREATE_VOLUME_SUFFIX" context_field="owning_lib"/>
2266                 <retrieve/>
2267                 <update permission="UPDATE_VOLUME_SUFFIX" context_field="owning_lib"/>
2268                 <delete permission="DELETE_VOLUME_SUFFIX" context_field="owning_lib"/>
2269             </actions>
2270         </permacrud>
2271         </class>
2272         <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">
2273                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_prefix_id_seq">
2274                         <field reporter:label="ID" name="id" reporter:datatype="id" />
2275                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
2276                         <field reporter:label="Label Sort Key" name="label_sortkey" reporter:datatype="text"/>
2277                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
2278                 </fields>
2279                 <links>
2280                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
2281                 </links>
2282         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2283             <actions>
2284                 <create permission="CREATE_VOLUME_PREFIX" context_field="owning_lib"/>
2285                 <retrieve/>
2286                 <update permission="UPDATE_VOLUME_PREFIX" context_field="owning_lib"/>
2287                 <delete permission="DELETE_VOLUME_PREFIX" context_field="owning_lib"/>
2288             </actions>
2289         </permacrud>
2290         </class>
2291         <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">
2292                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_id_seq">
2293                         <field reporter:label="Copies" name="copies" oils_persist:virtual="true" reporter:datatype="link"/>
2294                         <field reporter:label="Create Date/Time" name="create_date" reporter:datatype="timestamp"/>
2295                         <field reporter:label="Creating User" name="creator" reporter:datatype="link"/>
2296                         <field reporter:label="Is Deleted" name="deleted" reporter:datatype="bool"/>
2297                         <field reporter:label="Last Edit Date/Time" name="edit_date" reporter:datatype="timestamp"/>
2298                         <field reporter:label="Last Editing User" name="editor" reporter:datatype="link"/>
2299                         <field reporter:label="Call Number/Volume ID" name="id" reporter:datatype="id" />
2300                         <field reporter:label="Call Number Label" name="label" reporter:datatype="text"/>
2301                         <field reporter:label="Owning Library" name="owning_lib"  reporter:datatype="org_unit"/>
2302                         <field reporter:label="Bib Record" name="record" reporter:datatype="link"/>
2303                         <field reporter:label="Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2304                         <field reporter:label="URI Maps" name="uri_maps" oils_persist:virtual="true" reporter:datatype="link"/>
2305                         <field reporter:label="URIs" name="uris" oils_persist:virtual="true" reporter:datatype="link"/>
2306                         <field reporter:label="Sort Key" name="label_sortkey" reporter:datatype="text"/>
2307                         <field reporter:label="Classification Scheme" name="label_class" reporter:datatype="link"/>
2308                         <field reporter:label="Prefix" name="prefix" reporter:datatype="link"/>
2309                         <field reporter:label="Suffix" name="suffix" reporter:datatype="link"/>
2310                 </fields>
2311                 <links>
2312                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2313                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2314                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
2315                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
2316                         <link field="notes" reltype="has_many" key="call_number" map="" class="acnn"/>
2317                         <link field="copies" reltype="has_many" key="call_number" map="" class="acp"/>
2318                         <link field="uris" reltype="has_many" key="call_number" map="uri" class="auricnm"/>
2319                         <link field="uri_maps" reltype="has_many" key="call_number" map="" class="auricnm"/>
2320                         <link field="label_class" reltype="has_a" key="id" map="" class="acnc"/>
2321                         <link field="prefix" reltype="has_a" key="id" map="" class="acnp"/>
2322                         <link field="suffix" reltype="has_a" key="id" map="" class="acns"/>
2323                 </links>
2324         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2325             <actions>
2326                 <create permission="CREATE_VOLUME" context_field="owning_lib"/>
2327                 <retrieve/>
2328                 <update permission="UPDATE_VOLUME" context_field="owning_lib"/>
2329                 <delete permission="DELETE_VOLUME" context_field="owning_lib"/>
2330             </actions>
2331         </permacrud>
2332         </class>
2333         <class id="auri" controller="open-ils.cstore" oils_obj:fieldmapper="asset::uri" oils_persist:tablename="asset.uri" reporter:label="Electronic Access URI">
2334                 <fields oils_persist:primary="id" oils_persist:sequence="asset.uri_id_seq">
2335                         <field reporter:label="URI ID" name="id" reporter:datatype="id"/>
2336                         <field reporter:label="URI" name="href" reporter:datatype="text"/>
2337                         <field reporter:label="Label" name="label" reporter:datatype="text"/>
2338                         <field reporter:label="Use Information" name="use_restriction" reporter:datatype="text"/>
2339                         <field reporter:label="Active" name="active" reporter:datatype="bool"/>
2340                         <field reporter:label="Call Number Maps" name="call_number_maps" oils_persist:virtual="true" reporter:datatype="link"/>
2341                         <field reporter:label="Call Numbers" name="call_numbers" oils_persist:virtual="true" reporter:datatype="link"/>
2342                 </fields>
2343                 <links>
2344                         <link field="call_numbers" reltype="has_many" key="uri" map="call_number" class="auricnm"/>
2345                         <link field="call_number_maps" reltype="has_many" key="uri" map="" class="auricnm"/>
2346         </links>
2347         </class>
2348         <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">
2349                 <fields oils_persist:primary="id" oils_persist:sequence="asset.uri_call_number_map_id_seq">
2350                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
2351                         <field reporter:label="URI" name="uri" reporter:datatype="int"/>
2352                         <field reporter:label="Call Number" name="call_number" reporter:datatype="text"/>
2353                 </fields>
2354                 <links>
2355                         <link field="uri" reltype="has_a" key="id" map="" class="auri"/>
2356                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
2357                 </links>
2358         </class>
2359         <class id="cst" controller="open-ils.cstore" oils_obj:fieldmapper="config::standing" oils_persist:tablename="config.standing" reporter:label="Standing Penalty">
2360                 <fields oils_persist:primary="id" oils_persist:sequence="config.standing_id_seq">
2361                         <field name="id" reporter:datatype="id" />
2362                         <field name="value" oils_persist:i18n="true" />
2363                 </fields>
2364                 <links/>
2365         </class>
2366         <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">
2367                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2368                         <field name="balance_owed" reporter:datatype="money" />
2369                         <field name="total_owed" reporter:datatype="money" />
2370                         <field name="total_paid" reporter:datatype="money" />
2371                         <field name="usr" reporter:datatype="link"/>
2372                 </fields>
2373                 <links>
2374                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2375         </links>
2376         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2377             <actions>
2378                 <retrieve permission="VIEW_USER">
2379                     <context link="usr" field="home_ou"/>
2380                 </retrieve>
2381             </actions>
2382         </permacrud>
2383         </class>
2384         <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">
2385                 <fields oils_persist:primary="id" oils_persist:sequence="money.collections_tracker_id_seq">
2386                         <field name="collector" />
2387                         <field name="enter_time" reporter:datatype="timestamp"/>
2388                         <field name="id" reporter:datatype="id" />
2389                         <field name="location" reporter:datatype="link"/>
2390                         <field name="usr" reporter:datatype="link"/>
2391                 </fields>
2392                 <links>
2393                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2394                         <link field="collector" reltype="has_a" key="id" map="" class="au"/>
2395                         <link field="location" reltype="has_a" key="id" map="" class="aou"/>
2396                 </links>
2397         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2398             <actions>
2399                 <create permission="money.collections_tracker.create" context_field="location"/>
2400                 <retrieve permission="money.collections_tracker.create" context_field="location"/> 
2401                 <delete permission="money.collections_tracker.create" context_field="location"/>
2402             </actions>
2403         </permacrud>
2404         </class>
2405         <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">
2406                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_entry_id_seq">
2407                         <field reporter:label="Call Numbers" name="call_numbers" oils_persist:virtual="true" reporter:datatype="link"/>
2408                         <field reporter:label="Fixed Field Entry" name="fixed_fields" oils_persist:virtual="true" reporter:datatype="link"/>
2409                         <field reporter:label="Is Active?" name="active" reporter:datatype="bool"/>
2410                         <field reporter:label="Record Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
2411                         <field reporter:label="Record Creator" name="creator" reporter:datatype="link"/>
2412                         <field reporter:label="Is Deleted?" name="deleted" reporter:datatype="bool"/>
2413                         <field reporter:label="Last Edit Data/Time" name="edit_date" reporter:datatype="timestamp"/>
2414                         <field reporter:label="Last Editing User" name="editor" reporter:datatype="link"/>
2415                         <field reporter:label="Fingerprint" name="fingerprint"  reporter:datatype="text"/>
2416                         <field reporter:label="Record ID" name="id" reporter:datatype="id" />
2417                         <field reporter:label="Last Transaction ID" name="last_xact_id"  reporter:datatype="text"/>
2418                         <field reporter:label="MARC21Slim" name="marc"  reporter:datatype="text"/>
2419                         <field reporter:label="Overall Quality" name="quality" reporter:datatype="int" />
2420                         <field reporter:label="Record Source" name="source" reporter:datatype="link"/>
2421                         <field reporter:label="TCN Source" name="tcn_source"  reporter:datatype="text"/>
2422                         <field reporter:label="TCN Value" name="tcn_value"  reporter:datatype="text"/>
2423                         <field reporter:label="Owner" name="owner"  reporter:datatype="org_unit"/>
2424                         <field reporter:label="Share Depth" name="share_depth"  reporter:datatype="int"/>
2425                         <field reporter:label="Metarecord" name="metarecord" oils_persist:virtual="true" reporter:datatype="link"/>
2426                         <field reporter:label="Language Code" name="language" oils_persist:virtual="true" reporter:datatype="link"/>
2427                         <field reporter:label="Non-MARC Record Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2428                         <field reporter:label="Indexed Keyword Field Entries" name="keyword_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2429                         <field reporter:label="Indexed Subject Field Entries" name="subject_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2430                         <field reporter:label="Indexed Title Field Entries" name="title_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2431                         <field reporter:label="Indexed Identifier Field Entries" name="identifier_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2432                         <field reporter:label="Indexed Author Field Entries" name="author_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2433                         <field reporter:label="Indexed Series Field Entries" name="series_field_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2434                         <field reporter:label="Flattened MARC Fields " name="full_record_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2435                         <field reporter:label="Simple Record Extracts " name="simple_record" oils_persist:virtual="true" reporter:datatype="link"/>
2436                         <field reporter:label="Authority Links" name="authority_links" oils_persist:virtual="true" reporter:datatype="link"/>
2437                         <field reporter:label="Subscriptions" name="subscriptions" oils_persist:virtual="true" reporter:datatype="link"/>
2438                         <field reporter:label="SVF Attributes" name="attrs" oils_persist:virtual="true" reporter:datatype="link"/>
2439                 </fields>
2440                 <links>
2441                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2442                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2443                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2444                         <link field="simple_record" reltype="might_have" key="id" map="" class="rmsr"/>
2445                         <link field="metarecord" reltype="might_have" key="source" map="metarecord" class="mmrsm"/>
2446                         <link field="call_numbers" reltype="has_many" key="record" map="" class="acn"/>
2447                         <link field="keyword_field_entries" reltype="has_many" key="source" map="" class="mkfe"/>
2448                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="mrd"/>
2449                         <link field="language" reltype="might_have" key="record" map="item_lang" class="mrd"/>
2450                         <link field="subject_field_entries" reltype="has_many" key="source" map="" class="msfe"/>
2451                         <link field="title_field_entries" reltype="has_many" key="source" map="" class="mtfe"/>
2452                         <link field="identifier_field_entries" reltype="has_many" key="source" map="" class="mife"/>
2453                         <link field="notes" reltype="has_many" key="record" map="" class="bren"/>
2454                         <link field="author_field_entries" reltype="has_many" key="source" map="" class="mafe"/>
2455                         <link field="series_field_entries" reltype="has_many" key="source" map="" class="msefe"/>
2456                         <link field="full_record_entries" reltype="has_many" key="record" map="" class="mfr"/>
2457                         <link field="authority_links" reltype="has_many" key="bib" map="" class="abl"/>
2458                         <link field="subscriptions" reltype="has_many" key="record_entry" map="" class="ssub"/>
2459                         <link field="attrs" reltype="might_have" key="id" map="" class="mra"/>
2460                         <link field="source" reltype="has_a" key="id" map="" class="cbs"/>
2461                 </links>
2462         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2463             <actions>
2464                 <create permission="CREATE_MARC IMPORT_MARC" global_required="true"/>
2465                 <retrieve/>
2466                 <update permission="UPDATE_MARC" global_required="true"/>
2467             </actions>
2468         </permacrud>
2469         </class>
2470         <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">
2471                 <fields oils_persist:primary="id">
2472                         <field name="dow_0_close" />
2473                         <field name="dow_0_open" />
2474                         <field name="dow_1_close" />
2475                         <field name="dow_1_open" />
2476                         <field name="dow_2_close" />
2477                         <field name="dow_2_open" />
2478                         <field name="dow_3_close" />
2479                         <field name="dow_3_open" />
2480                         <field name="dow_4_close" />
2481                         <field name="dow_4_open" />
2482                         <field name="dow_5_close" />
2483                         <field name="dow_5_open" />
2484                         <field name="dow_6_close" />
2485                         <field name="dow_6_open" />
2486                         <field name="id" reporter:datatype="id" />
2487                         <field name="org_unit" oils_persist:virtual="true" reporter:datatype="org_unit"/>
2488                 </fields>
2489                 <links>
2490                         <link field="id" reltype="might_have" key="id" map="" class="aou"/>
2491                 </links>
2492         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2493             <actions>
2494                 <create permission="CREATE_HOURS_OF_OPERATION" context_field="id"/>
2495                 <retrieve/>
2496                 <update permission="UPDATE_HOURS_OF_OPERATION" context_field="id"/>
2497                 <delete permission="DELETE_HOURS_OF_OPERATION" context_field="id"/>
2498             </actions>
2499         </permacrud>
2500         </class>
2501         <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">
2502                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.monograph_part_id_seq">
2503                         <field name="id" reporter:datatype="id" />
2504                         <field name="record" reporter:datatype="link"/>
2505                         <field name="label" reporter:datatype="text"/>
2506                         <field name="label_sortkey" reporter:datatype="text"/>
2507                 </fields>
2508                 <links>
2509                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
2510                 </links>
2511         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2512             <actions>
2513                 <create permission="CREATE_MONOGRAPH_PART" global_required="true"/>
2514                 <retrieve/>
2515                 <update permission="UPDATE_MONOGRAPH_PART" global_required="true"/>
2516                 <delete permission="DELETE_MONOGRAPH_PART" global_required="true"/>
2517             </actions>
2518         </permacrud>
2519         </class>
2520         <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">
2521                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_part_map_id_seq">
2522                         <field name="id" reporter:datatype="id" />
2523                         <field name="target_copy" reporter:datatype="link" />
2524                         <field name="part" reporter:datatype="link"/>
2525                 </fields>
2526                 <links>
2527                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
2528                         <link field="part" reltype="has_a" key="id" map="" class="bmp"/>
2529                 </links>
2530         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2531             <actions>
2532                 <create permission="MAP_MONOGRAPH_PART" global_required="true"/>
2533                 <retrieve/>
2534                 <update permission="MAP_MONOGRAPH_PART" global_required="true"/>
2535                 <delete permission="MAP_MONOGRAPH_PART" global_required="true"/>
2536             </actions>
2537         </permacrud>
2538         </class>
2539         <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">
2540                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_closed_id_seq">
2541                         <field name="close_end" reporter:datatype="timestamp" />
2542                         <field name="close_start" reporter:datatype="timestamp" />
2543                         <field name="id" reporter:datatype="id" />
2544                         <field name="org_unit" reporter:datatype="org_unit"/>
2545                         <field name="reason" reporter:datatype="text"/>
2546                 </fields>
2547                 <links>
2548                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2549                 </links>
2550         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2551             <actions>
2552                 <create permission="CREATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2553                 <retrieve/>
2554                 <update permission="UPDATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2555                 <delete permission="DELETE_ORG_UNIT_CLOSING" context_field="org_unit"/>
2556             </actions>
2557         </permacrud>
2558         </class>
2559         <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">
2560                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_circ_duration_id_seq">
2561                         <field name="extended" reporter:datatype="interval"/>
2562                         <field name="id" reporter:datatype="id" reporter:selector="name"/>
2563                         <field name="max_renewals" reporter:datatype="int" />
2564                         <field name="name" reporter:datatype="text"/>
2565                         <field name="normal" reporter:datatype="interval"/>
2566                         <field name="shrt" reporter:datatype="interval"/>
2567                 </fields>
2568                 <links>
2569                 </links>
2570         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2571             <actions>
2572                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2573                 <retrieve/>
2574                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2575                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2576             </actions>
2577         </permacrud>
2578         </class>
2579
2580         <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">
2581                 <fields oils_persist:primary="id" oils_persist:sequence="config.hard_due_date_id_seq">
2582                         <field reporter:label="ID" name="id" reporter:datatype="id" reporter:selector="name"/>
2583                         <field reporter:label="Name" name="name" reporter:datatype="text"/>
2584             <field reporter:label="Always Use?" name="forceto" reporter:datatype="bool"/>
2585                         <field reporter:label="Current Ceiling Date" name="ceiling_date" reporter:datatype="timestamp"/>
2586             <field reporter:label="Owner" name="owner" reporter:datatype="org_unit"/>
2587                 </fields>
2588                 <links>
2589             <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2590                 </links>
2591                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2592             <actions>
2593                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2594                 <retrieve/>
2595                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2596                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2597             </actions>
2598                 </permacrud>
2599         </class>
2600
2601         <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">
2602                 <fields oils_persist:primary="id" oils_persist:sequence="config.hard_due_date_values_id_seq">
2603                         <field reporter:label="ID" name="id" reporter:datatype="id"/>
2604                         <field reporter:label="Hard Due Date" name="hard_due_date" reporter:datatype="link"/>
2605                         <field reporter:label="Ceiling Date" name="ceiling_date" reporter:datatype="timestamp"/>
2606             <field reporter:label="Active Date" name="active_date" reporter:datatype="timestamp"/>
2607                 </fields>
2608                 <links>
2609                         <link field="hard_due_date" reltype="has_a" key="id" map="" class="chdd"/>
2610                 </links>
2611                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2612             <actions>
2613                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
2614                 <retrieve/>
2615                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
2616                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
2617             </actions>
2618                 </permacrud>
2619         </class>
2620
2621         <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">
2622                 <fields oils_persist:primary="id" oils_persist:sequence="">
2623                         <field name="balance_owed" reporter:datatype="money"/>
2624                         <field name="id" reporter:datatype="id" />
2625                         <field name="last_billing_note" reporter:datatype="text"/>
2626                         <field name="last_billing_ts" reporter:datatype="timestamp"/>
2627                         <field name="last_billing_type" reporter:datatype="text"/>
2628                         <field name="last_payment_note" reporter:datatype="text"/>
2629                         <field name="last_payment_ts" reporter:datatype="timestamp"/>
2630                         <field name="last_payment_type" reporter:datatype="text"/>
2631                         <field name="total_owed" reporter:datatype="money"/>
2632                         <field name="total_paid" reporter:datatype="money"/>
2633                         <field name="usr" reporter:datatype="link"/>
2634                         <field name="xact_finish" reporter:datatype="timestamp" />
2635                         <field name="xact_start" reporter:datatype="timestamp" />
2636                         <field name="xact_type" reporter:datatype="text"/>
2637                         <field name="xact" oils_persist:virtual="true" reporter:datatype="link"/>
2638                         <field name="grocery" oils_persist:virtual="true" reporter:datatype="link"/>
2639                         <field name="circulation" oils_persist:virtual="true" reporter:datatype="link"/>
2640                         <field name="reservation" oils_persist:virtual="true" reporter:datatype="link"/>
2641                         <field name="billing_location" reporter:datatype="link"/>
2642                 </fields>
2643                 <links>
2644                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2645                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
2646                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2647                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
2648                         <link field="reservation" reltype="might_have" key="id" map="" class="bresv"/>
2649                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
2650                 </links>
2651         </class>
2652         <class id="au" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user" oils_persist:tablename="actor.usr" reporter:core="true" reporter:label="ILS User">
2653                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_id_seq">
2654                         <field reporter:label="All Addresses" name="addresses" oils_persist:virtual="true" reporter:datatype="link"/>
2655                         <field reporter:label="All Library Cards" name="cards" oils_persist:virtual="true" reporter:datatype="link"/>
2656                         <field reporter:label="All Circulations" name="checkouts" oils_persist:virtual="true" reporter:datatype="link"/>
2657                         <field reporter:label="All Hold Requests" name="hold_requests" oils_persist:virtual="true" reporter:datatype="link"/>
2658                         <field reporter:label="All Permissions" name="permissions" oils_persist:virtual="true" reporter:datatype="link"/>
2659                         <field reporter:label="All User Settings" name="settings" oils_persist:virtual="true" reporter:datatype="link"/>
2660                         <field reporter:label="Standing Penalties" name="standing_penalties" oils_persist:virtual="true" reporter:datatype="link"/>
2661                         <field reporter:label="Statistical Category Entries" name="stat_cat_entries" oils_persist:virtual="true" reporter:datatype="link"/>
2662                         <field reporter:label="Survey Responses" name="survey_responses" oils_persist:virtual="true" reporter:datatype="link"/>
2663                         <field reporter:label="Workstation Org Unit" name="ws_ou" oils_persist:virtual="true" reporter:datatype="link"/>
2664                         <field reporter:label="Workstation ID" name="wsid" oils_persist:virtual="true" reporter:datatype="link"/>
2665                         <field reporter:label="Active" name="active" reporter:datatype="bool"/>
2666                         <field reporter:label="Alert Message" name="alert_message"  reporter:datatype="text"/>
2667                         <field reporter:label="Barred" name="barred" reporter:datatype="bool"/>
2668                         <field reporter:label="Physical Address" name="billing_address" reporter:datatype="link"/>
2669                         <field reporter:label="Current Library Card" name="card" reporter:datatype="link"/>
2670                         <field reporter:label="Claims-returned Count" name="claims_returned_count" reporter:datatype="int" />
2671                         <field reporter:label="Claims Never Checked Out Count" name="claims_never_checked_out_count" reporter:datatype="int" />
2672                         <field reporter:label="Record Creation Date/Time" name="create_date" reporter:datatype="timestamp"/>
2673                         <field reporter:label="User Credit Balance" name="credit_forward_balance" reporter:datatype="money" />
2674                         <field reporter:label="Daytime Phone" name="day_phone"  reporter:datatype="text"/>
2675                         <field reporter:label="Date of Birth" name="dob" reporter:datatype="timestamp"/>
2676                         <field reporter:label="Email Address" name="email"  reporter:datatype="text"/>
2677                         <field reporter:label="Evening Phone" name="evening_phone"  reporter:datatype="text"/>
2678                         <field reporter:label="Privilege Expiration Date" name="expire_date" reporter:datatype="timestamp"/>
2679                         <field reporter:label="Last Name" name="family_name"  reporter:datatype="text"/>
2680                         <field reporter:label="First Name" name="first_given_name"  reporter:datatype="text"/>
2681                         <field reporter:label="Home Library" name="home_ou" reporter:datatype="org_unit"/>
2682                         <field reporter:label="User ID" name="id" reporter:datatype="id" />
2683                         <field reporter:label="Primary Identification Type" name="ident_type" reporter:datatype="link"/>
2684                         <field reporter:label="Secondary Identification Type" name="ident_type2" reporter:datatype="link"/>
2685                         <field reporter:label="Primary Identification" name="ident_value"  reporter:datatype="text"/>
2686                         <field reporter:label="Secondary Identification" name="ident_value2"  reporter:datatype="text"/>
2687                         <field reporter:label="Last Transaction ID" name="last_xact_id" reporter:datatype="text"/>
2688                         <field reporter:label="Mailing Address" name="mailing_address" reporter:datatype="link"/>
2689                         <field reporter:label="Is Group Lead Account" name="master_account" reporter:datatype="bool"/>
2690                         <field reporter:label="Internet Access Level" name="net_access_level" reporter:datatype="link"/>
2691                         <field reporter:label="Other Phone" name="other_phone"  reporter:datatype="text"/>
2692                         <field reporter:label="Password" name="passwd"  reporter:datatype="text"/>
2693                         <field reporter:label="Photo URL" name="photo_url"  reporter:datatype="text"/>
2694                         <field reporter:label="Prefix" name="prefix"  reporter:datatype="text"/>
2695                         <field reporter:label="Main (Profile) Permission Group" name="profile" reporter:datatype="link"/>
2696                         <field reporter:label="Middle Name" name="second_given_name"  reporter:datatype="text"/>
2697                         <field reporter:label="Standing (unused)" name="standing" reporter:datatype="link"/>
2698                         <field reporter:label="Suffix/Title" name="suffix"  reporter:datatype="text"/>
2699                         <field reporter:label="Is Super User" name="super_user" reporter:datatype="bool"/>
2700                         <field reporter:label="Family Linkage or other Group" name="usrgroup" reporter:datatype="int"/>
2701                         <field reporter:label="OPAC/Staff Client User Name" name="usrname"  reporter:datatype="text"/>
2702                         <field reporter:label="OPAC/Staff Client Holds Alias" name="alias"  reporter:datatype="text"/>
2703                         <field reporter:label="Juvenile" name="juvenile"  reporter:datatype="bool"/>
2704                         <field reporter:label="Record Last Update Time" name="last_update_time" reporter:datatype="timestamp"/>
2705                         <field reporter:label="Additional Permission Groups" name="groups" oils_persist:virtual="true" reporter:datatype="link"/>
2706                         <field reporter:label="Is Deleted" name="deleted" reporter:datatype="bool"/>
2707                         <field reporter:label="User Notes" name="notes" oils_persist:virtual="true" reporter:datatype="link"/>
2708                         <field reporter:label="Demographic Info" name="demographic" oils_persist:virtual="true" reporter:datatype="link"/>
2709                         <field reporter:label="Billable Transactions" name="billable_transactions" oils_persist:virtual="true" reporter:datatype="link"/>
2710                         <field reporter:label="Money Summary" name="money_summary" oils_persist:virtual="true" reporter:datatype="link"/>
2711                         <field reporter:label="Open Billable Transactions" name="open_billable_transactions_summary" oils_persist:virtual="true" reporter:datatype="link"/>
2712                         <field reporter:label="Checkins" name="checkins" oils_persist:virtual="true" reporter:datatype="link"/>
2713                         <field reporter:label="Circulations Performed as Staff" name="performed_circulations" oils_persist:virtual="true" reporter:datatype="link"/>
2714                         <field reporter:label="Fund Allocation Percentages" name="fund_alloc_pcts" oils_persist:virtual="true" reporter:datatype="link"/>
2715                         <field