]> git.evergreen-ils.org Git - Evergreen.git/blob - Open-ILS/examples/fm_IDL.xml
updated match classes to match the schema. added virtual field for matches off queue...
[Evergreen.git] / Open-ILS / examples / fm_IDL.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2
3 <!--
4
5 Copyright (C) 2006-2008 Georgia Public Library Service
6 Copyright (C) 2008 Equinox Software, Inc
7 Author: Mike Rylander <miker@esilibrary.com>
8
9 This program is free software; you can redistribute it and/or
10 modify it under the terms of the GNU General Public License
11 as published by the Free Software Foundation; either version 2
12 of the License, or (at your option) any later version.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
22
23 -->
24
25 <IDL xmlns="http://opensrf.org/spec/IDL/base/v1" xmlns:oils_persist="http://open-ils.org/spec/opensrf/IDL/persistence/v1" xmlns:oils_obj="http://open-ils.org/spec/opensrf/IDL/objects/v1" xmlns:reporter="http://open-ils.org/spec/opensrf/IDL/reporter/v1" xmlns:permacrud="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
26
27         <!-- Virtual classes -->
28         <class id="mups" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_payment_summary" oils_persist:virtual="true">
29                 <fields>
30                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
31                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
32                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
33                         <field name="usr" oils_obj:array_position="3" oils_persist:virtual="true" />
34                         <field name="forgive_payment" oils_obj:array_position="4" oils_persist:virtual="true" />
35                         <field name="work_payment" oils_obj:array_position="5" oils_persist:virtual="true" />
36                         <field name="credit_payment" oils_obj:array_position="6" oils_persist:virtual="true" />
37                         <field name="goods_payment" oils_obj:array_position="7" oils_persist:virtual="true" />
38                 </fields>
39                 <links>
40                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
41                 </links>
42         </class>
43
44         <class id="mwps" controller="open-ils.cstore" oils_obj:fieldmapper="money::workstation_payment_summary" oils_persist:virtual="true">
45                 <fields>
46                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
47                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
48                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
49                         <field name="workstation" oils_obj:array_position="3" oils_persist:virtual="true" />
50                         <field name="cash_payment" oils_obj:array_position="4" oils_persist:virtual="true" />
51                         <field name="check_payment" oils_obj:array_position="5" oils_persist:virtual="true" />
52                         <field name="credit_card_payment" oils_obj:array_position="6" oils_persist:virtual="true" />
53                 </fields>
54                 <links>
55                         <link field="workstation" reltype="has_a" key="id" map="" class="aws"/>
56                 </links>
57         </class>
58
59         <class id="brn" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_node" oils_persist:virtual="true">
60                 <fields>
61                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
62                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
63                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
64                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="true" />
65                         <field name="children" oils_obj:array_position="3" oils_persist:virtual="true" />
66                         <field name="owner_doc" oils_obj:array_position="9" oils_persist:virtual="true" />
67                         <field name="intra_doc_id" oils_obj:array_position="5" oils_persist:virtual="true" />
68                         <field name="parent_node" oils_obj:array_position="10" oils_persist:virtual="true" />
69                         <field name="node_type" oils_obj:array_position="8" oils_persist:virtual="true" />
70                         <field name="namespace_uri" oils_obj:array_position="7" oils_persist:virtual="true" />
71                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="true" />
72                         <field name="value" oils_obj:array_position="11" oils_persist:virtual="true" />
73                 </fields>
74         </class>
75
76         <class id="mvr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::virtual_record" oils_persist:virtual="true">
77                 <fields>
78                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
79                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
80                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
81                         <field name="title" oils_obj:array_position="19" oils_persist:virtual="true" />
82                         <field name="author" oils_obj:array_position="3" oils_persist:virtual="true" />
83                         <field name="doc_id" oils_obj:array_position="6" oils_persist:virtual="true" />
84                         <field name="doc_type" oils_obj:array_position="7" oils_persist:virtual="true" />
85                         <field name="pubdate" oils_obj:array_position="12" oils_persist:virtual="true" />
86                         <field name="isbn" oils_obj:array_position="9" oils_persist:virtual="true" />
87                         <field name="publisher" oils_obj:array_position="13" oils_persist:virtual="true" />
88                         <field name="tcn" oils_obj:array_position="18" oils_persist:virtual="true" />
89                         <field name="subject" oils_obj:array_position="16" oils_persist:virtual="true" />
90                         <field name="types_of_resource" oils_obj:array_position="21" oils_persist:virtual="true" />
91                         <field name="call_numbers" oils_obj:array_position="4" oils_persist:virtual="true" />
92                         <field name="edition" oils_obj:array_position="8" oils_persist:virtual="true" />
93                         <field name="online_loc" oils_obj:array_position="10" oils_persist:virtual="true" />
94                         <field name="synopsis" oils_obj:array_position="17" oils_persist:virtual="true" />
95                         <field name="physical_description" oils_obj:array_position="11" oils_persist:virtual="true" />
96                         <field name="toc" oils_obj:array_position="20" oils_persist:virtual="true" />
97                         <field name="copy_count" oils_obj:array_position="5" oils_persist:virtual="true" />
98                         <field name="series" oils_obj:array_position="15" oils_persist:virtual="true" />
99                         <field name="serials" oils_obj:array_position="14" oils_persist:virtual="true" />
100                 </fields>
101         </class>
102
103         <class id="ex" controller="open-ils.cstore" oils_obj:fieldmapper="ex" oils_persist:virtual="true">
104                 <fields>
105                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
106                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
107                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
108                         <field name="err_msg" oils_obj:array_position="3" oils_persist:virtual="true" />
109                         <field name="type" oils_obj:array_position="4" oils_persist:virtual="true" />
110                 </fields>
111         </class>
112
113         <class id="perm_ex" controller="open-ils.cstore" oils_obj:fieldmapper="perm_ex" oils_persist:virtual="true">
114                 <fields>
115                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
116                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
117                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
118                         <field name="err_msg" oils_obj:array_position="3" oils_persist:virtual="true" />
119                         <field name="type" oils_obj:array_position="4" oils_persist:virtual="true" />
120                 </fields>
121         </class>
122
123         <class id="amtr" controller="open-ils.cstore" oils_obj:fieldmapper="action::matrix_test_result" oils_persist:virtual="true">
124                 <fields oils_persist:primary="matchpoint">
125                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
126                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
127                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
128                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
129                         <field reporter:label="Success" name="success" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
130                         <field reporter:label="Failure Part" name="fail_part" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
131                 </fields>
132                 <links>
133                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
134                 </links>
135         </class>
136
137
138         <!-- Actually in the DB -->
139         <class id="vbq" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::bib_queue" oils_persist:tablename="vandelay.bib_queue" reporter:label="Import/Overlay Bib Queue">
140                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
141                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
142                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
143                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
144                         <field reporter:label="Queue ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
145                         <field reporter:label="Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
146                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
147                         <field reporter:label="Complete" name="complete" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
148                         <field reporter:label="Type" name="queue_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
149                 </fields>
150                 <links>
151                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
152                 </links>
153                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
154                         <actions>
155                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
156                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE|UPDATE_BIB_IMPORT_QUEUE|DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
157                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
158                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
159                         </actions>
160                 </permacrud>
161         </class>
162
163         <class id="vqbr" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::queued_bib_record" oils_persist:tablename="vandelay.queued_bib_record" reporter:label="Queued Bib Record">
164                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
165                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
166                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
167                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
168                         <field reporter:label="Record ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
169                         <field reporter:label="Create Time" name="create_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
170                         <field reporter:label="Import Time" name="import_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
171                         <field reporter:label="MARC" name="marc" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
172                         <field reporter:label="Queue" name="queue" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
173                         <field reporter:label="Bib Source" name="bib_source" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
174                         <field reporter:label="Final Target Record" name="imported_as" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
175                         <field reporter:label="Purpose" name="purpose" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
176                         <field reporter:label="Attributes" name="attributes" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
177                         <field reporter:label="Matches" name="matches" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="text"/>
178                 </fields>
179                 <links>
180                         <link field="queue" reltype="has_a" key="id" map="" class="vbq"/>
181                         <link field="bib_source" reltype="has_a" key="id" map="" class="cbs"/>
182                         <link field="imported_as" reltype="has_a" key="id" map="" class="bre"/>
183             <link field="attributes" reltype="has_many" key="record" map="" class="vqbra"/>
184             <link field="matches" reltype="has_many" key="queued_record" map="" class="vbm"/>
185                 </links>
186                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
187                         <actions>
188                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
189                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE|UPDATE_BIB_IMPORT_QUEUE|DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
190                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
191                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
192                         </actions>
193                 </permacrud>
194         </class>
195
196         <class id="vqbrad" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::bib_attr_definition" oils_persist:tablename="vandelay.bib_attr_definition" reporter:label="Queued Bib Record Attribute Definition">
197                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_attr_definition_id_seq">
198                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
199                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
200                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
201                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
202                         <field reporter:label="Code" name="code" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
203                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
204                         <field reporter:label="XPath" name="xpath" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
205                         <field reporter:label="Remove RegExp" name="remove" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
206                         <field reporter:label="Is Identifier?" name="ident" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
207                 </fields>
208                 <links/>
209                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
210                         <actions>
211                                 <create permission="CREATE_BIB_IMPORT_FIELD_DEF" global_required="true"/>
212                 <retrieve/>
213                 <!--
214                                 <retrieve permission="CREATE_BIB_IMPORT_IMPORT_FIELD_DEF|UPDATE_BIB_IMPORT_IMPORT_FIELD_DEF|DELETE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
215                 -->
216                                 <update permission="UPDATE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
217                                 <delete permission="DELETE_BIB_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
218                         </actions>
219                 </permacrud>
220         </class>
221
222         <class id="vqbra" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::queued_bib_record_attr" oils_persist:tablename="vandelay.queued_bib_record_attr" reporter:label="Queued Bib Record Attribute">
223                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_bib_record_attr_id_seq">
224                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
225                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
226                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
227                         <field reporter:label="Attribute ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
228                         <field reporter:label="Record" name="record" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
229                         <field reporter:label="Field" name="field" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
230                         <field reporter:label="Value" name="attr_value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
231                 </fields>
232                 <links>
233                         <link field="record" reltype="has_a" key="id" map="" class="vqbr"/>
234                         <link field="field" reltype="has_a" key="id" map="" class="vqbrad"/>
235                 </links>
236                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
237                         <actions>
238                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
239                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE|UPDATE_BIB_IMPORT_QUEUE|DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
240                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
241                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
242                         </actions>
243                 </permacrud>
244         </class>
245
246         <class id="vbm" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::bib_match" oils_persist:tablename="vandelay.bib_match" reporter:label="Queued Bib Record Match">
247                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.bib_match_id_seq">
248                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
249                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
250                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
251                         <field reporter:label="Match ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
252                         <field reporter:label="Queued Record" name="queued_record" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
253                         <field reporter:label="Evergreen Record" name="eg_record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
254                         <field reporter:label="Field Type" name="field_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
255                 </fields>
256                 <links>
257                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
258                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
259                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
260                 </links>
261                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
262                         <actions>
263                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
264                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE|UPDATE_BIB_IMPORT_QUEUE|DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
265                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
266                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
267                         </actions>
268                 </permacrud>
269         </class>
270
271         <class id="vaq" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::authority_queue" oils_persist:tablename="vandelay.authority_queue" reporter:label="Import/Overlay Authority Queue">
272                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
273                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
274                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
275                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
276                         <field reporter:label="Queue ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
277                         <field reporter:label="Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
278                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
279                         <field reporter:label="Complete" name="complete" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
280                         <field reporter:label="Type" name="queue_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
281                         <field reporter:label="Purpose" name="queue_purpose" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
282                 </fields>
283                 <links>
284                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
285                 </links>
286                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
287                         <actions>
288                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
289                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE|UPDATE_AUTHORITY_IMPORT_QUEUE|DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
290                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
291                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
292                         </actions>
293                 </permacrud>
294         </class>
295
296         <class id="vqar" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::queued_authority_record" oils_persist:tablename="vandelay.queued_authority_record" reporter:label="Queued Authority Record">
297                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_record_id_seq">
298                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
299                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
300                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
301                         <field reporter:label="Record ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
302                         <field reporter:label="Create Time" name="create_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
303                         <field reporter:label="Import Time" name="import_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
304                         <field reporter:label="MARC" name="marc" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
305                         <field reporter:label="Queue" name="queue" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
306                         <field reporter:label="Final Target Record" name="imported_as" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
307                         <field reporter:label="Purpose" name="purpose" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
308                         <field reporter:label="Attributes" name="attributes" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="text"/>
309                         <field reporter:label="Matches" name="matches" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
310                 </fields>
311                 <links>
312                         <link field="queue" reltype="has_a" key="id" map="" class="vaq"/>
313                         <link field="imported_as" reltype="has_a" key="id" map="" class="are"/>
314             <link field="attributes" reltype="has_many" key="record" map="" class="vqara"/>
315             <link field="matches" reltype="has_many" key="queued_record" map="" class="vam"/>
316                 </links>
317                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
318                         <actions>
319                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
320                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE|UPDATE_AUTHORITY_IMPORT_QUEUE|DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
321                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
322                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
323                         </actions>
324                 </permacrud>
325         </class>
326
327         <class id="vqarad" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::authority_attr_definition" oils_persist:tablename="vandelay.authority_attr_definition" reporter:label="Queued Authority Record Attribute Definition">
328                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_attr_definition_id_seq">
329                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
330                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
331                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
332                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
333                         <field reporter:label="Code" name="code" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
334                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
335                         <field reporter:label="XPath" name="xpath" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
336                         <field reporter:label="Remove RegExp" name="remove" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
337                         <field reporter:label="Is Identifier?" name="ident" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
338                 </fields>
339                 <links/>
340                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
341                         <actions>
342                                 <create permission="CREATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
343                 <retrieve/>
344                 <!--
345                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF|UPDATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF|DELETE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
346                 -->
347                                 <update permission="UPDATE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
348                                 <delete permission="DELETE_AUTHORITY_IMPORT_IMPORT_FIELD_DEF" global_required="true"/>
349                         </actions>
350                 </permacrud>
351         </class>
352
353         <class id="vqara" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::queued_authority_record_attr" oils_persist:tablename="vandelay.queued_authority_record_attr" reporter:label="Queued Authority Record Attribute">
354                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queued_authority_record_attr_id_seq">
355                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
356                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
357                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
358                         <field reporter:label="Attribute ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
359                         <field reporter:label="Record" name="record" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
360                         <field reporter:label="Field" name="field" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
361                         <field reporter:label="Value" name="attr_value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
362                 </fields>
363                 <links>
364                         <link field="record" reltype="has_a" key="id" map="" class="vaqr"/>
365                         <link field="field" reltype="has_a" key="id" map="" class="vqarad"/>
366                 </links>
367                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
368                         <actions>
369                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
370                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE|UPDATE_AUTHORITY_IMPORT_QUEUE|DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
371                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
372                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
373                         </actions>
374                 </permacrud>
375         </class>
376
377         <class id="vam" controller="open-ils.cstore" oils_obj:fieldmapper="vandelay::authority_match" oils_persist:tablename="vandelay.authority_match" reporter:label="Queued Authority Record Match">
378                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.authority_match_id_seq">
379                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
380                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
381                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
382                         <field reporter:label="Match ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
383                         <field reporter:label="Queued Record" name="queued_record" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
384                         <field reporter:label="Evergreen Record" name="eg_record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
385                 </fields>
386                 <links>
387                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
388                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
389                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
390                 </links>
391                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
392                         <actions>
393                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
394                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE|UPDATE_AUTHORITY_IMPORT_QUEUE|DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
395                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
396                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
397                         </actions>
398                 </permacrud>
399         </class>
400
401
402         <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">
403                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_org_unit_opt_in_id_seq">
404                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
405                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
406                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
407                         <field reporter:label="Opt-in ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
408                         <field reporter:label="Workstation" name="opt_in_ws" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
409                         <field reporter:label="Staff Member" name="staff" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
410                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
411                         <field reporter:label="Allowed Org Unit" name="org_unit" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
412                         <field reporter:label="Opt-in Date/Time" name="opt_in_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
413                 </fields>
414                 <links>
415                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
416                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
417                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
418                         <link field="opt_in_ws" reltype="has_a" key="id" map="" class="aws"/>
419                 </links>
420         </class>
421
422         <class id="aws" controller="open-ils.cstore" oils_obj:fieldmapper="actor::workstation" oils_persist:tablename="actor.workstation" reporter:label="Workstation">
423                 <fields oils_persist:primary="id" oils_persist:sequence="actor.workstation_id_seq">
424                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
425                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
426                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
427                         <field reporter:label="Workstation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
428                         <field reporter:label="Workstation Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
429                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
430                 </fields>
431                 <links>
432                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
433                 </links>
434         </class>
435
436         <class id="ccm" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_modifier" oils_persist:tablename="config.circ_modifier" reporter:label="Circulation Modifier">
437                 <fields oils_persist:primary="code">
438                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
439                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
440                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
441                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
442                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
443                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
444                         <field reporter:label="SIP2 Media Type" name="sip2_media_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
445                         <field reporter:label="Magnetic Media" name="magnetic_media" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
446                 </fields>
447                 <links/>
448         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
449             <actions>
450                 <create permission="CREATE_CIRC_MOD" context_field="parent_ou"/>
451                 <retrieve/>
452                 <update permission="UPDATE_CIRC_MOD" context_field="parent_ou"/>
453                 <delete permission="DELETE_CIRC_MOD" context_field="parent_ou"/>
454             </actions>
455         </permacrud>
456         </class>
457
458         <class id="cvrfm" controller="open-ils.cstore" oils_obj:fieldmapper="config::videorecording_format_map" oils_persist:tablename="config.videorecording_format_map" reporter:label="Videorecording Format" oils_persist:field_safe="true">
459                 <fields oils_persist:primary="code">
460                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
461                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
462                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
463                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
464                         <field reporter:label="Format" name="value" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
465                 </fields>
466                 <links/>
467         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
468             <actions>
469                 <create permission="CREATE_MARC_CODE" global_required="true"/>
470                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
471                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
472                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
473             </actions>
474         </permacrud>
475         </class>
476
477         <class id="chmm" controller="open-ils.cstore" oils_obj:fieldmapper="config::hold_matrix_matchpoint" oils_persist:tablename="config.hold_matrix_matchpoint" reporter:label="Hold Matrix Matchpoint">
478                 <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_matchpoint_id_seq">
479                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
480                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
481                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
482                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
483                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
484                         <field reporter:label="User Home Library" name="user_home_ou" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
485                         <field reporter:label="Request Library" name="request_ou" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
486                         <field reporter:label="Pickup Library" name="pickup_ou" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
487                         <field reporter:label="Owning Library" name="item_owning_ou" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
488                         <field reporter:label="Item Circ Library" name="item_circ_ou" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
489                         <field reporter:label="User Permission Group" name="usr_grp" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
490                         <field reporter:label="Requestor Permission Group" name="requestor_grp" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
491                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
492                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
493                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
494                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_obj:array_position="15" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
495                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
496                 </fields>
497                 <links>
498                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
499                         <link field="request_ou" reltype="has_a" key="id" map="" class="aou"/>
500                         <link field="pickup_ou" reltype="has_a" key="id" map="" class="aou"/>
501                         <link field="item_owning_ou" reltype="has_a" key="id" map="" class="aou"/>
502                         <link field="item_circ_ou" reltype="has_a" key="id" map="" class="aou"/>
503                         <link field="usr_grp" reltype="has_a" key="id" map="" class="pgt"/>
504                         <link field="requestor_grp" reltype="has_a" key="id" map="" class="pgt"/>
505                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
506                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
507                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
508                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
509                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
510                 </links>
511         </class>
512
513         <class id="ccmm" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_matchpoint" oils_persist:tablename="config.circ_matrix_matchpoint" reporter:label="Circulation Matrix Matchpoint">
514                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_matchpoint_id_seq">
515                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
516                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
517                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
518                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
519                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
520                         <field reporter:label="Org Unit" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
521                         <field reporter:label="Permission Group" name="grp" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
522                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
523                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
524                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="9" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
525                         <field reporter:label="Videorecording Format" name="marc_vr_format" oils_obj:array_position="10" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
526                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
527                         <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
528                         <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
529                 </fields>
530                 <links>
531                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
532                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
533                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
534                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
535                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
536                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
537                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
538                 </links>
539         </class>
540
541         <class id="chmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::hold_matrix_test" oils_persist:tablename="config.hold_matrix_test" reporter:label="Hold Matrix Test Set">
542                 <fields oils_persist:primary="matchpoint">
543                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
544                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
545                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
546                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
547                         <field reporter:label="Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
548                         <field reporter:label="Range is from Owning Lib?" name="distance_is_from_owner" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
549                         <field reporter:label="Transit Range" name="transit_range" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
550                         <field reporter:label="Max Holds" name="max_holds" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
551                         <field reporter:label="Max includes Frozen" name="include_frozen_holds" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
552                         <field reporter:label="Copy Age Hold Protection Rule" name="age_hold_protect_rule" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
553                 </fields>
554                 <links>
555                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
556                         <link field="age_hold_protect_rule" reltype="has_a" key="id" map="" class="crahp"/>
557                 </links>
558         </class>
559
560         <class id="ccmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_test" oils_persist:tablename="config.circ_matrix_test" reporter:label="Circulation Matrix Test Set">
561                 <fields oils_persist:primary="matchpoint">
562                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
563                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
564                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
565                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
566                         <field reporter:label="Circulate?" name="circulate" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
567                         <field reporter:label="Max Items Out" name="max_items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
568                         <field reporter:label="Max Overdue" name="max_overdue" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
569                         <field reporter:label="Max Fines" name="max_fines" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
570                         <field reporter:label="Test Script" name="script_test" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
571                 </fields>
572                 <links>
573                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
574                 </links>
575         </class>
576
577         <class id="ccmcmt" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_circ_mod_test" oils_persist:tablename="config.circ_matrix_circ_mod_test" reporter:label="Circulation Matrix Circulation Modifier Subtest">
578                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_circ_mod_test_id_seq">
579                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
580                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
581                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
582                         <field reporter:label="Test ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
583                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
584                         <field reporter:label="Items Out" name="items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
585                         <field reporter:label="Circulation Modifier" name="circ_mod" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
586                 </fields>
587                 <links>
588                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
589                         <link field="circ_mod" reltype="has_a" key="id" map="" class="ccm"/>
590                 </links>
591         </class>
592
593         <class id="ccmrs" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_matrix_ruleset" oils_persist:tablename="config.circ_matrix_ruleset" reporter:label="Circulation Matrix Rule Set">
594                 <fields oils_persist:primary="matchpoint">
595                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
596                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
597                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
598                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
599                         <field reporter:label="Duration Rule" name="duration_rule" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
600                         <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
601                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
602                 </fields>
603                 <links>
604                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
605                         <link field="duration_rule" reltype="has_a" key="id" map="" class="crcd"/>
606                         <link field="max_fine_rule" reltype="has_a" key="id" map="" class="crmf"/>
607                         <link field="recurring_fine_rule" reltype="has_a" key="id" map="" class="crrf"/>
608                 </links>
609         </class>
610
611         <class id="cit" controller="open-ils.cstore" oils_obj:fieldmapper="config::identification_type" oils_persist:tablename="config.identification_type" reporter:label="Identification Type">
612                 <fields oils_persist:primary="id" oils_persist:sequence="config.identification_type_id_seq">
613                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
614                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
615                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
616                         <field reporter:label="Identification ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
617                         <field reporter:label="Identification Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
618                 </fields>
619                 <links/>
620         </class>
621
622         <class id="asvq" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_question" oils_persist:tablename="action.survey_question" reporter:label="User Survey Question">
623                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_question_id_seq">
624                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
625                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
626                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
627                         <field reporter:label="Answers" name="answers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
628                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
629                         <field reporter:label="Question ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
630                         <field reporter:label="Question" name="question" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
631                         <field reporter:label="Survey" name="survey" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
632                 </fields>
633                 <links>
634                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
635                         <link field="responses" reltype="has_many" key="question" map="" class="asvr"/>
636                         <link field="answers" reltype="has_many" key="question" map="" class="asva"/>
637                 </links>
638         </class>
639         <class id="mbts" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction_summary" oils_persist:tablename="money.billable_xact_summary" reporter:label="Billable Transaction Summary">
640                 <fields oils_persist:primary="id" oils_persist:sequence="">
641                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
642                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
643                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
644                         <field reporter:label="Balance Owed" name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
645                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id"/>
646                         <field reporter:label="Last Billing Note" name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
647                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
648                         <field reporter:label="Last Billing Type" name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
649                         <field reporter:label="Last Payment Note" name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
650                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
651                         <field reporter:label="Last Payment Type" name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
652                         <field reporter:label="Total Owed" name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
653                         <field reporter:label="Total Paid" name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
654                         <field reporter:label="Billed User" name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
655                         <field reporter:label="Transaction Finish Time" name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
656                         <field reporter:label="Transaction Start Time" name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
657                         <field reporter:label="Transaction Type" name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
658                 </fields>
659                 <links>
660                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
661                 </links>
662         </class>
663         <class id="aun" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_note" oils_persist:tablename="actor.usr_note" reporter:label="User Note">
664                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_note_id_seq">
665                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
666                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
667                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
668                         <field reporter:label="Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
669                         <field reporter:label="Creating Staff" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
670                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
671                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
672                         <field reporter:label="Note Title" name="title" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
673                         <field reporter:label="User" name="usr" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link" />
674                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
675                 </fields>
676                 <links>
677                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
678                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
679                 </links>
680         </class>
681         <class id="aus" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_setting" oils_persist:tablename="actor.usr_setting" reporter:label="User Setting">
682                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_setting_id_seq">
683                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
684                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
685                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
686                         <field reporter:label="Setting ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
687                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
688                         <field reporter:label="User" name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
689                         <field reporter:label="Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
690                 </fields>
691                 <links>
692                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
693                 </links>
694         </class>
695         <class id="mafe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::author_field_entry" oils_persist:tablename="metabib.author_field_entry">
696                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.author_field_entry_id_seq">
697                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
698                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
699                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
700                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
701                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
702                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
703                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
704                 </fields>
705                 <links>
706                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
707                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
708                 </links>
709         </class>
710         <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">
711                 <fields oils_persist:primary="id" oils_persist:sequence="action.in_house_use_id_seq">
712                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
713                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
714                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
715                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
716                         <field reporter:label="Item" name="item" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
717                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
718                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
719                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
720                 </fields>
721                 <links>
722                         <link field="item" reltype="has_a" key="id" map="" class="acp"/>
723                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
724                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
725                 </links>
726         </class>
727         <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">
728                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cat_in_house_use_id_seq">
729                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
730                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
731                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
732                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
733                         <field reporter:label="Item Type" name="item_type" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
734                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
735                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
736                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
737                 </fields>
738                 <links>
739                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
740                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
741                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
742                 </links>
743         </class>
744         <class id="atc" controller="open-ils.cstore" oils_obj:fieldmapper="action::transit_copy" oils_persist:tablename="action.transit_copy" reporter:core="true" reporter:label="Copy Transit">
745                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
746                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
747                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
748                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
749                         <field reporter:label="Pretransit Copy Status" name="copy_status" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
750                         <field reporter:label="Destination" name="dest" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
751                         <field reporter:label="Receive Date/Time" name="dest_recv_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
752                         <field reporter:label="Transit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
753                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
754                         <field reporter:label="Previous Hop (unused)" name="prev_hop" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
755                         <field reporter:label="Source" name="source" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
756                         <field reporter:label="Send Date/Time" name="source_send_time" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
757                         <field reporter:label="Transited Copy" name="target_copy" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
758                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
759                 </fields>
760                 <links>
761                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
762                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
763                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
764                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
765                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
766                 </links>
767         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
768             <actions>
769                 <create permission="TRANSIT_COPY"/>
770                 <retrieve/>
771                 <update permission="UPDATE_TRANSIT" context_field="dest|source"/>
772                 <delete permission="DELETE_TRANSIT" context_field="dest|source"/>
773             </actions>
774         </permacrud>
775         </class>
776         <class id="asvr" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_response" oils_persist:tablename="action.survey_response" reporter:label="Survey Response">
777                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_response_id_seq">
778                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
779                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
780                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
781                         <field reporter:label="Answer" name="answer" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
782                         <field reporter:label="Answer Date/Time" name="answer_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
783                         <field reporter:label="Effective Answer Date/Time" name="effective_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
784                         <field reporter:label="Answer ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
785                         <field reporter:label="Question" name="question" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
786                         <field reporter:label="Response Group ID" name="response_group_id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int" />
787                         <field reporter:label="Survey" name="survey" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
788                         <field reporter:label="Responding User" name="usr" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
789                 </fields>
790                 <links>
791                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
792                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
793                         <link field="answer" reltype="has_a" key="id" map="" class="asva"/>
794                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
795                 </links>
796         </class>
797         <class id="ccbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket_item" oils_persist:tablename="container.copy_bucket_item">
798                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_id_seq">
799                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
800                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
801                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
802                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" />
803                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
804                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
805                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
806                 </fields>
807                 <links>
808                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
809                         <link field="bucket" reltype="has_a" key="id" map="" class="ccb"/>
810                 </links>
811         </class>
812         <class id="are" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_entry" oils_persist:tablename="authority.record_entry">
813                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_entry_id_seq">
814                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
815                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
816                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
817                         <field name="active" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
818                         <field name="arn_source" oils_obj:array_position="4" oils_persist:virtual="false" />
819                         <field name="arn_value" oils_obj:array_position="5" oils_persist:virtual="false" />
820                         <field name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
821                         <field name="creator" oils_obj:array_position="7" oils_persist:virtual="false" />
822                         <field name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
823                         <field name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
824                         <field name="editor" oils_obj:array_position="10" oils_persist:virtual="false" />
825                         <field name="id" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="id" />
826                         <field name="last_xact_id" oils_obj:array_position="12" oils_persist:virtual="false" />
827                         <field name="marc" oils_obj:array_position="13" oils_persist:virtual="false" />
828                         <field name="source" oils_obj:array_position="14" oils_persist:virtual="false" />
829                         <field name="fixed_fields" oils_obj:array_position="15" oils_persist:virtual="true" />
830                         <field name="notes" oils_obj:array_position="16" oils_persist:virtual="true" />
831                 </fields>
832                 <links>
833                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
834                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
835                         <link field="notes" reltype="has_many" key="record" map="" class="arn"/>
836                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="ard"/>
837                 </links>
838         </class>
839         <class id="ard" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_descriptor" oils_persist:tablename="authority.rec_descriptor">
840                 <fields oils_persist:primary="id" oils_persist:sequence="authority.rec_descriptor_id_seq">
841                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
842                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
843                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
844                         <field name="char_encoding" oils_obj:array_position="3" oils_persist:virtual="false" />
845                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" />
846                         <field name="record" oils_obj:array_position="5" oils_persist:virtual="false" />
847                         <field name="record_status" oils_obj:array_position="6" oils_persist:virtual="false" />
848                 </fields>
849                 <links>
850                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
851                 </links>
852         </class>
853         <class id="clm" controller="open-ils.cstore" oils_obj:fieldmapper="config::language_map" oils_persist:tablename="config.language_map" reporter:label="Language Map" oils_persist:field_safe="true">
854                 <fields oils_persist:primary="code" oils_persist:sequence="">
855                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
856                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
857                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
858                         <field reporter:label="Language Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
859                         <field reporter:label="Language" name="value" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
860                 </fields>
861                 <links/>
862         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
863             <actions>
864                 <create permission="CREATE_MARC_CODE" global_required="true"/>
865                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
866                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
867                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
868             </actions>
869         </permacrud>
870         </class>
871         <class id="mccp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_card_payment" oils_persist:tablename="money.credit_card_payment">
872                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
873                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
874                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
875                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
876                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" />
877                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
878                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
879                         <field name="approval_code" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
880                         <field name="cash_drawer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
881                         <field name="cc_number" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
882                         <field name="cc_type" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
883                         <field name="expire_month" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int" />
884                         <field name="expire_year" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="int" />
885                         <field name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
886                         <field name="note" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
887                         <field name="payment_ts" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp"/>
888                         <field name="xact" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
889                         <field name="payment_type" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="text"/>
890                         <field name="payment" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
891                 </fields>
892                 <links>
893                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
894                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
895                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
896                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
897                 </links>
898         </class>
899         <class id="cxt" controller="open-ils.cstore" oils_obj:fieldmapper="config::xml_transform" oils_persist:tablename="config.xml_transform" reporter:label="XML/XSLT Transform Definition">
900                 <fields oils_persist:primary="name">
901                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
902                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
903                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
904                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
905                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" />
906                         <field reporter:label="Namespace URI" name="namespace_uri" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
907                         <field reporter:label="Namespace Prefix" name="prefix" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
908                         <field reporter:label="XSLT" name="xslt" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text" />
909                 </fields>
910                 <links/>
911         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
912             <actions>
913                 <create permission="CREATE_XML_TRANSFORM" global_required="true"/>
914                 <retrieve/>
915                 <update permission="UPDATE_XML_TRANSFORM" global_required="true"/>
916                 <delete permission="DELETE_XML_TRANSFORM" global_required="true"/>
917             </actions>
918         </permacrud>
919         </class>
920         <class id="cmf" controller="open-ils.cstore" oils_obj:fieldmapper="config::metabib_field" oils_persist:tablename="config.metabib_field">
921                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_id_seq">
922                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
923                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
924                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
925                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
926                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
927                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
928                         <field name="xpath" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
929                         <field name="weight" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int" />
930                         <field name="format" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
931                         <field name="search_field" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool" />
932                         <field name="facet_field" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool" />
933                 </fields>
934                 <links/>
935         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
936             <actions>
937                 <create permission="CREATE_METABIB_FIELD" global_required="true"/>
938                 <retrieve/>
939                 <update permission="UPDATE_METABIB_FIELD" global_required="true"/>
940                 <delete permission="DELETE_METABIB_FIELD" global_required="true"/>
941             </actions>
942         </permacrud>
943         </class>
944         <class id="cam" controller="open-ils.cstore" oils_obj:fieldmapper="config::audience_map" oils_persist:tablename="config.audience_map" reporter:label="Audience Map" oils_persist:field_safe="true">
945                 <fields oils_persist:primary="code" oils_persist:sequence="">
946                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
947                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
948                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
949                         <field reporter:label="Audience Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
950                         <field reporter:label="Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true" />
951                         <field reporter:label="Audience" name="value" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
952                 </fields>
953                 <links/>
954         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
955             <actions>
956                 <create permission="CREATE_MARC_CODE" global_required="true"/>
957                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
958                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
959                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
960             </actions>
961         </permacrud>
962         </class>
963         <class id="cifm" controller="open-ils.cstore" oils_obj:fieldmapper="config::item_form_map" oils_persist:tablename="config.item_form_map" reporter:label="Item Form Map" oils_persist:field_safe="true">
964                 <fields oils_persist:primary="code" oils_persist:sequence="">
965                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
966                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
967                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
968                         <field reporter:label="Item Form Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
969                         <field reporter:label="Item Form" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
970                 </fields>
971                 <links/>
972         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
973             <actions>
974                 <create permission="CREATE_MARC_CODE" global_required="true"/>
975                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
976                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
977                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
978             </actions>
979         </permacrud>
980         </class>
981         <class id="acn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number" oils_persist:tablename="asset.call_number" reporter:label="Call Number/Volume">
982                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_id_seq">
983                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
984                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
985                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
986                         <field reporter:label="Copies" name="copies" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
987                         <field reporter:label="Create Date/Time" name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
988                         <field reporter:label="Creating User" name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
989                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
990                         <field reporter:label="Last Edit Date/Time" name="edit_date" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
991                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
992                         <field reporter:label="Call Number/Volume ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
993                         <field reporter:label="Call Number Label" name="label" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
994                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
995                         <field reporter:label="Bib Record" name="record" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
996                         <field reporter:label="Notes" name="notes" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
997                 </fields>
998                 <links>
999                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1000                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1001                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1002                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1003                         <link field="notes" reltype="has_many" key="call_number" map="" class="acnn"/>
1004                         <link field="copies" reltype="has_many" key="call_number" map="" class="acp"/>
1005                 </links>
1006         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1007             <actions>
1008                 <create permission="CREATE_VOLUME" context_field="owning_lib"/>
1009                 <retrieve/>
1010                 <update permission="UPDATE_VOLUME" context_field="owning_lib"/>
1011                 <delete permission="DELETE_VOLUME" context_field="owning_lib"/>
1012             </actions>
1013         </permacrud>
1014         </class>
1015         <class id="cst" controller="open-ils.cstore" oils_obj:fieldmapper="config::standing" oils_persist:tablename="config.standing">
1016                 <fields oils_persist:primary="id" oils_persist:sequence="config.standing_id_seq">
1017                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1018                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1019                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1020                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1021                         <field name="value" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:i18n="true" />
1022                 </fields>
1023                 <links/>
1024         </class>
1025         <class id="mous" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_user_summary" oils_persist:tablename="money.open_usr_summary">
1026                 <fields oils_persist:primary="usr" oils_persist:sequence="">
1027                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1028                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1029                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1030                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
1031                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1032                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1033                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1034                 </fields>
1035                 <links/>
1036         </class>
1037         <class id="mct" controller="open-ils.cstore" oils_obj:fieldmapper="money::collections_tracker" oils_persist:tablename="money.collections_tracker">
1038                 <fields oils_persist:primary="id" oils_persist:sequence="money.collections_tracker_id_seq">
1039                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1040                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1041                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1042                         <field name="collector" oils_obj:array_position="3" oils_persist:virtual="false" />
1043                         <field name="enter_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1044                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1045                         <field name="location" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1046                         <field name="usr" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1047                 </fields>
1048                 <links>
1049                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1050                         <link field="collector" reltype="has_a" key="id" map="" class="au"/>
1051                         <link field="location" reltype="has_a" key="id" map="" class="aou"/>
1052                 </links>
1053         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1054             <actions>
1055                 <create permission="money.collections_tracker.create" context_field="location"/>
1056                 <retrieve/>
1057                 <delete permission="money.collections_tracker.create" context_field="location"/>
1058             </actions>
1059         </permacrud>
1060         </class>
1061         <class id="bre" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_entry" oils_persist:tablename="biblio.record_entry" reporter:core="true" reporter:label="Bibliographic Record">
1062                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_entry_id_seq">
1063                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1064                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1065                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1066                         <field reporter:label="Call Numbers" name="call_numbers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1067                         <field reporter:label="Fixed Field Entry" name="fixed_fields" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
1068                         <field reporter:label="Is Active?" name="active" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
1069                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1070                         <field reporter:label="Record Creator" name="creator" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1071                         <field reporter:label="Is Deleted?" name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1072                         <field reporter:label="Last Edit Data/Time" name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1073                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1074                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1075                         <field reporter:label="Record ID" name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
1076                         <field reporter:label="Last Transaction ID" name="last_xact_id" oils_obj:array_position="13" oils_persist:virtual="false"  reporter:datatype="text"/>
1077                         <field reporter:label="MARC21Slim" name="marc" oils_obj:array_position="14" oils_persist:virtual="false"  reporter:datatype="text"/>
1078                         <field reporter:label="Overall Quality" name="quality" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="int" />
1079                         <field reporter:label="Record Source" name="source" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="link"/>
1080                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="17" oils_persist:virtual="false"  reporter:datatype="text"/>
1081                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="18" oils_persist:virtual="false"  reporter:datatype="text"/>
1082                         <field reporter:label="Metarecord" name="metarecord" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
1083                         <field reporter:label="Language Code" name="language" oils_obj:array_position="20" oils_persist:virtual="true" reporter:datatype="link"/>
1084                         <field reporter:label="Non-MARC Record Notes" name="notes" oils_obj:array_position="21" oils_persist:virtual="true" reporter:datatype="link"/>
1085                         <field reporter:label="Indexed Keyword Field Entries" name="keyword_field_entries" oils_obj:array_position="22" oils_persist:virtual="true" reporter:datatype="link"/>
1086                         <field reporter:label="Indexed Subject Field Entries" name="subject_field_entries" oils_obj:array_position="23" oils_persist:virtual="true" reporter:datatype="link"/>
1087                         <field reporter:label="Indexed Title Field Entries" name="title_field_entries" oils_obj:array_position="24" oils_persist:virtual="true" reporter:datatype="link"/>
1088                         <field reporter:label="Indexed Author Field Entries" name="author_field_entries" oils_obj:array_position="25" oils_persist:virtual="true" reporter:datatype="link"/>
1089                         <field reporter:label="Indexed Series Field Entries" name="series_field_entries" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="link"/>
1090                         <field reporter:label="Flattened MARC Fields " name="full_record_entries" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
1091                         <field reporter:label="Simple Record Extracts " name="simple_record" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1092                 </fields>
1093                 <links>
1094                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1095                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1096                         <link field="simple_record" reltype="might_have" key="id" map="" class="rmsr"/>
1097                         <link field="metarecord" reltype="might_have" key="source" map="metarecord" class="mmrsm"/>
1098                         <link field="call_numbers" reltype="has_many" key="record" map="" class="acn"/>
1099                         <link field="keyword_field_entries" reltype="has_many" key="source" map="" class="mkfe"/>
1100                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="mrd"/>
1101                         <link field="language" reltype="might_have" key="record" map="item_lang" class="mrd"/>
1102                         <link field="subject_field_entries" reltype="has_many" key="source" map="" class="msfe"/>
1103                         <link field="title_field_entries" reltype="has_many" key="source" map="" class="mtfe"/>
1104                         <link field="notes" reltype="has_many" key="record" map="" class="bren"/>
1105                         <link field="author_field_entries" reltype="has_many" key="source" map="" class="mafe"/>
1106                         <link field="series_field_entries" reltype="has_many" key="source" map="" class="msefe"/>
1107                         <link field="full_record_entries" reltype="has_many" key="record" map="" class="mfr"/>
1108                 </links>
1109         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1110             <actions>
1111                 <create permission="CREATE_MARC|IMPORT_MARC" global_required="true"/>
1112                 <retrieve/>
1113                 <update permission="UPDATE_MARC" global_required="true"/>
1114             </actions>
1115         </permacrud>
1116         </class>
1117         <class id="aouhoo" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::hours_of_operation" oils_persist:tablename="actor.hours_of_operation">
1118                 <fields oils_persist:primary="id" oils_persist:sequence="">
1119                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1120                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1121                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1122                         <field name="dow_0_close" oils_obj:array_position="3" oils_persist:virtual="false" />
1123                         <field name="dow_0_open" oils_obj:array_position="4" oils_persist:virtual="false" />
1124                         <field name="dow_1_close" oils_obj:array_position="5" oils_persist:virtual="false" />
1125                         <field name="dow_1_open" oils_obj:array_position="6" oils_persist:virtual="false" />
1126                         <field name="dow_2_close" oils_obj:array_position="7" oils_persist:virtual="false" />
1127                         <field name="dow_2_open" oils_obj:array_position="8" oils_persist:virtual="false" />
1128                         <field name="dow_3_close" oils_obj:array_position="9" oils_persist:virtual="false" />
1129                         <field name="dow_3_open" oils_obj:array_position="10" oils_persist:virtual="false" />
1130                         <field name="dow_4_close" oils_obj:array_position="11" oils_persist:virtual="false" />
1131                         <field name="dow_4_open" oils_obj:array_position="12" oils_persist:virtual="false" />
1132                         <field name="dow_5_close" oils_obj:array_position="13" oils_persist:virtual="false" />
1133                         <field name="dow_5_open" oils_obj:array_position="14" oils_persist:virtual="false" />
1134                         <field name="dow_6_close" oils_obj:array_position="15" oils_persist:virtual="false" />
1135                         <field name="dow_6_open" oils_obj:array_position="16" oils_persist:virtual="false" />
1136                         <field name="id" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="id" />
1137                         <field name="org_unit" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="org_unit"/>
1138                 </fields>
1139                 <links>
1140                         <link field="org_unit" reltype="might_have" key="id" map="" class="aou"/>
1141                 </links>
1142         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1143             <actions>
1144                 <create permission="CREATE_HOURS_OF_OPERATION" context_field="org_unit"/>
1145                 <retrieve/>
1146                 <update permission="UPDATE_HOURS_OF_OPERATION" context_field="org_unit"/>
1147                 <delete permission="DELETE_HOURS_OF_OPERATION" context_field="org_unit"/>
1148             </actions>
1149         </permacrud>
1150         </class>
1151         <class id="aoucd" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::closed_date" oils_persist:tablename="actor.org_unit_closed">
1152                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_closed_id_seq">
1153                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1154                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1155                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1156                         <field name="close_end" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp" />
1157                         <field name="close_start" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp" />
1158                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1159                         <field name="org_unit" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1160                         <field name="reason" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
1161                 </fields>
1162                 <links>
1163                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1164                 </links>
1165         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1166             <actions>
1167                 <create permission="CREATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1168                 <retrieve/>
1169                 <update permission="UPDATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1170                 <delete permission="DELETE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1171             </actions>
1172         </permacrud>
1173         </class>
1174         <class id="crcd" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::circ_duration" oils_persist:tablename="config.rule_circ_duration">
1175                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_circ_duration_id_seq">
1176                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1177                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1178                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1179                         <field name="extended" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
1180                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1181                         <field name="max_renewals" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int" />
1182                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
1183                         <field name="normal" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="interval"/>
1184                         <field name="shrt" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
1185                 </fields>
1186                 <links>
1187                 </links>
1188         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1189             <actions>
1190                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
1191                 <retrieve/>
1192                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
1193                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
1194             </actions>
1195         </permacrud>
1196         </class>
1197         <class id="mobts" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_billable_transaction_summary" oils_persist:tablename="money.open_billable_xact_summary">
1198                 <fields oils_persist:primary="id" oils_persist:sequence="">
1199                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1200                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1201                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1202                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
1203                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1204                         <field name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
1205                         <field name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1206                         <field name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
1207                         <field name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1208                         <field name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1209                         <field name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
1210                         <field name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
1211                         <field name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
1212                         <field name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
1213                         <field name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
1214                         <field name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
1215                         <field name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
1216                         <field name="xact" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
1217                         <field name="grocery" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="link"/>
1218                         <field name="circulation" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
1219                         <field name="billing_location" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
1220                 </fields>
1221                 <links>
1222                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1223                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
1224                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
1225                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
1226                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
1227                 </links>
1228         </class>
1229         <class id="au" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user" oils_persist:tablename="actor.usr" reporter:core="true" reporter:label="ILS User">
1230                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_id_seq">
1231                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1232                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1233                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1234                         <field reporter:label="All Addresses" name="addresses" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1235                         <field reporter:label="All Library Cards" name="cards" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
1236                         <field reporter:label="All Circulations" name="checkouts" oils_obj:array_position="5" oils_persist:virtual="true" reporter:datatype="link"/>
1237                         <field reporter:label="All Hold Requests" name="hold_requests" oils_obj:array_position="6" oils_persist:virtual="true" reporter:datatype="link"/>
1238                         <field reporter:label="All Permissions" name="permissions" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
1239                         <field reporter:label="All User Settings" name="settings" oils_obj:array_position="8" oils_persist:virtual="true" reporter:datatype="link"/>
1240                         <field reporter:label="Standing Penalties" name="standing_penalties" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
1241                         <field reporter:label="Statistical Category Entries" name="stat_cat_entries" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
1242                         <field reporter:label="Survey Responses" name="survey_responses" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1243                         <field name="ws_ou" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
1244                         <field name="wsid" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
1245                         <field reporter:label="Active" name="active" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1246                         <field reporter:label="Alert Message" name="alert_message" oils_obj:array_position="15" oils_persist:virtual="false"  reporter:datatype="text"/>
1247                         <field reporter:label="Barred" name="barred" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1248                         <field reporter:label="Physical Address" name="billing_address" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="link"/>
1249                         <field reporter:label="Current Library Card" name="card" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="link"/>
1250                         <field reporter:label="Claims-returned Count" name="claims_returned_count" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="int" />
1251                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1252                         <field reporter:label="User Credit Balance" name="credit_forward_balance" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="money" />
1253                         <field reporter:label="Daytime Phone" name="day_phone" oils_obj:array_position="22" oils_persist:virtual="false"  reporter:datatype="text"/>
1254                         <field reporter:label="Date of Birth" name="dob" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1255                         <field reporter:label="Email Address" name="email" oils_obj:array_position="24" oils_persist:virtual="false"  reporter:datatype="text"/>
1256                         <field reporter:label="Evening Phone" name="evening_phone" oils_obj:array_position="25" oils_persist:virtual="false"  reporter:datatype="text"/>
1257                         <field reporter:label="Privilege Expiration Date" name="expire_date" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1258                         <field reporter:label="Last Name" name="family_name" oils_obj:array_position="27" oils_persist:virtual="false"  reporter:datatype="text"/>
1259                         <field reporter:label="First Name" name="first_given_name" oils_obj:array_position="28" oils_persist:virtual="false"  reporter:datatype="text"/>
1260                         <field reporter:label="Home Library" name="home_ou" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1261                         <field reporter:label="User ID" name="id" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="id" />
1262                         <field reporter:label="Primary Identification Type" name="ident_type" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="link"/>
1263                         <field reporter:label="Secondary Identification Type" name="ident_type2" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="link"/>
1264                         <field reporter:label="Primary Identification" name="ident_value" oils_obj:array_position="33" oils_persist:virtual="false"  reporter:datatype="text"/>
1265                         <field reporter:label="Secondary Identification" name="ident_value2" oils_obj:array_position="34" oils_persist:virtual="false"  reporter:datatype="text"/>
1266                         <field name="last_xact_id" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="text"/>
1267                         <field reporter:label="Mailing Address" name="mailing_address" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="link"/>
1268                         <field reporter:label="Is Group Lead Account" name="master_account" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="bool"/>
1269                         <field reporter:label="Internet Access Level" name="net_access_level" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1270                         <field reporter:label="Other Phone" name="other_phone" oils_obj:array_position="39" oils_persist:virtual="false"  reporter:datatype="text"/>
1271                         <field reporter:label="Password (obfuscated)" name="passwd" oils_obj:array_position="40" oils_persist:virtual="false"  reporter:datatype="text"/>
1272                         <field reporter:label="Photo URL" name="photo_url" oils_obj:array_position="41" oils_persist:virtual="false"  reporter:datatype="text"/>
1273                         <field reporter:label="Prefix" name="prefix" oils_obj:array_position="42" oils_persist:virtual="false"  reporter:datatype="text"/>
1274                         <field reporter:label="Main (Profile) Permission Group" name="profile" oils_obj:array_position="43" oils_persist:virtual="false" reporter:datatype="link"/>
1275                         <field reporter:label="Middle Name" name="second_given_name" oils_obj:array_position="44" oils_persist:virtual="false"  reporter:datatype="text"/>
1276                         <field reporter:label="Standing (unused)" name="standing" oils_obj:array_position="45" oils_persist:virtual="false" reporter:datatype="link"/>
1277                         <field reporter:label="Suffix/Title" name="suffix" oils_obj:array_position="46" oils_persist:virtual="false"  reporter:datatype="text"/>
1278                         <field reporter:label="Is Super User" name="super_user" oils_obj:array_position="47" oils_persist:virtual="false" reporter:datatype="bool"/>
1279                         <field reporter:label="Family Linkage or other Group" name="usrgroup" oils_obj:array_position="48" oils_persist:virtual="false" reporter:datatype="int"/>
1280                         <field reporter:label="OPAC/Staff Client User Name" name="usrname" oils_obj:array_position="49" oils_persist:virtual="false"  reporter:datatype="text"/>
1281                         <field reporter:label="Additional Permission Groups" name="groups" oils_obj:array_position="50" oils_persist:virtual="true" reporter:datatype="link"/>
1282                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="51" oils_persist:virtual="false" reporter:datatype="bool"/>
1283                         <field reporter:label="User Notes" name="notes" oils_obj:array_position="52" oils_persist:virtual="true" reporter:datatype="link"/>
1284                         <field reporter:label="Demographic Info" name="demographic" oils_obj:array_position="53" oils_persist:virtual="true" reporter:datatype="link"/>
1285                         <field reporter:label="Billable Transactions" name="billable_transactions" oils_obj:array_position="54" oils_persist:virtual="true" reporter:datatype="link"/>
1286                         <field reporter:label="Checkins" name="checkins" oils_obj:array_position="55" oils_persist:virtual="true" reporter:datatype="link"/>
1287                         <field reporter:label="Circulations Performed as Staff" name="performed_circulations" oils_obj:array_position="56" oils_persist:virtual="true" reporter:datatype="link"/>
1288                 </fields>
1289                 <links>
1290                         <link field="demographic" reltype="might_have" key="id" map="" class="rud"/>
1291                         <link field="net_access_level" reltype="has_a" key="id" map="" class="cnal"/>
1292                         <link field="profile" reltype="has_a" key="id" map="" class="pgt"/>
1293                         <link field="ident_type" reltype="has_a" key="id" map="" class="cit"/>
1294                         <link field="billing_address" reltype="has_a" key="id" map="" class="aua"/>
1295                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aua"/>
1296                         <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
1297                         <link field="standing" reltype="has_a" key="id" map="" class="cst"/>
1298                         <link field="card" reltype="has_a" key="id" map="" class="ac"/>
1299                         <link field="ident_type2" reltype="has_a" key="id" map="" class="cit"/>
1300                         <link field="stat_cat_entries" reltype="has_many" key="target_usr" map="" class="actscecm"/>
1301                         <link field="groups" reltype="has_many" key="usr" map="grp" class="pugm"/>
1302                         <link field="usrgroup" reltype="has_many" key="usrgroup" map="" class="au"/>
1303                         <link field="checkouts" reltype="has_many" key="usr" map="" class="circ"/>
1304                         <link field="hold_requests" reltype="has_many" key="usr" map="" class="circ"/>
1305                         <link field="permissions" reltype="has_many" key="usr" map="perm" class="pupm"/>
1306                         <link field="settings" reltype="has_many" key="usr" map="" class="aus"/>
1307                         <link reporter:label="Billable Transactions" field="billable_transactions" reltype="has_many" key="usr" map="" class="mbt"/>
1308                         <link field="standing_penalties" reltype="has_many" key="usr" map="" class="ausp"/>
1309                         <link field="addresses" reltype="has_many" key="usr" map="" class="aua"/>
1310                         <link field="survey_responses" reltype="has_many" key="usr" map="" class="asvr"/>
1311                         <link field="notes" reltype="has_many" key="usr" map="" class="aun"/>
1312                         <link reporter:label="Check-ins Performed as Staff" field="checkins" reltype="has_many" key="checkin_staff" map="" class="circ"/>
1313                         <link field="cards" reltype="has_many" key="usr" map="" class="ac"/>
1314                         <link reporter:label="Circulations Performed as Staff" field="performed_circulations" reltype="has_many" key="circ_staff" map="" class="circ"/>
1315                 </links>
1316         </class>
1317         <class id="aous" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_setting" oils_persist:tablename="actor.org_unit_setting">
1318                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_setting_id_seq">
1319                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1320                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1321                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1322                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" />
1323                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1324                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1325                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1326                 </fields>
1327                 <links>
1328                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1329                 </links>
1330         </class>
1331         <class id="acpn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_note" oils_persist:tablename="asset.copy_note" reporter:label="Copy Note">
1332                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_note_id_seq">
1333                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1334                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1335                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1336                         <field reporter:label="Note Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1337                         <field reporter:label="Note Creator" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1338                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1339                         <field reporter:label="Copy" name="owning_copy" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1340                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1341                         <field reporter:label="Note Title" name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1342                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1343                 </fields>
1344                 <links>
1345                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1346                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1347                 </links>
1348         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1349             <actions>
1350                 <create permission="CREATE_COPY_NOTE">
1351                     <context link="owning_copy" field="circ_lib"/>
1352                 </create>
1353                 <retrieve permission="VIEW_COPY_NOTES">
1354                     <context link="owning_copy" field="circ_lib"/>
1355                 </retrieve>
1356                 <update permission="UPDATE_COPY_NOTE">
1357                     <context link="owning_copy" field="circ_lib"/>
1358                 </update>
1359                 <delete permission="DELETE_COPY_NOTE">
1360                     <context link="owning_copy" field="circ_lib"/>
1361                 </delete>
1362             </actions>
1363         </permacrud>
1364         </class>
1365         <class id="mfr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::full_rec" oils_persist:tablename="metabib.full_rec" reporter:label="Flattened MARC Fields">
1366                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.full_rec_id_seq">
1367                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1368                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1369                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1370                         <field reporter:label="Field ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1371                         <field reporter:label="Indicator 1" name="ind1" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1372                         <field reporter:label="Indicator 2" name="ind2" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1373                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1374                         <field reporter:label="Subfield" name="subfield" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1375                         <field reporter:label="Tag" name="tag" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1376                         <field reporter:label="Normalized Value" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1377                 </fields>
1378                 <links>
1379                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1380                 </links>
1381         </class>
1382         <class id="mmr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::metarecord" oils_persist:tablename="metabib.metarecord">
1383                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_id_seq">
1384                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1385                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1386                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1387                         <field name="fingerprint" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1388                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1389                         <field name="master_record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1390                         <field name="mods" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1391                         <field name="source_records" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
1392                 </fields>
1393                 <links>
1394                         <link field="master_record" reltype="has_a" key="id" map="" class="bre"/>
1395                         <link field="source_records" reltype="has_many" key="metarecord" map="source" class="mmrsm"/>
1396                 </links>
1397         </class>
1398         <class id="cnal" controller="open-ils.cstore" oils_obj:fieldmapper="config::net_access_level" oils_persist:tablename="config.net_access_level">
1399                 <fields oils_persist:primary="id" oils_persist:sequence="config.net_access_level_id_seq">
1400                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1401                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1402                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1403                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1404                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1405                 </fields>
1406                 <links/>
1407         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1408             <actions>
1409                 <create permission="CREATE_NET_ACCESS_LEVEL" global_required="true"/>
1410                 <retrieve/>
1411                 <update permission="UPDATE_NET_ACCESS_LEVEL" global_required="true"/>
1412                 <delete permission="DELETE_NET_ACCESS_LEVEL" global_required="true"/>
1413             </actions>
1414         </permacrud>
1415         </class>
1416         <class id="ppl" controller="open-ils.cstore" oils_obj:fieldmapper="permission::perm_list" oils_persist:tablename="permission.perm_list">
1417                 <fields oils_persist:primary="id" oils_persist:sequence="permission.perm_list_id_seq">
1418                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1419                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1420                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1421                         <field name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1422                         <field name="description" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1423                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="code" reporter:datatype="id"/>
1424                 </fields>
1425                 <links/>
1426         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1427             <actions>
1428                 <create permission="CREATE_PERM" global_required="true"/>
1429                 <retrieve permission="CREATE_PERM|UPDATE_PERM|DELETE_PERM" global_required="true"/>
1430                 <update permission="UPDATE_PERM" global_required="true"/>
1431                 <delete permission="DELETE_PERM" global_required="true"/>
1432             </actions>
1433         </permacrud>
1434         </class>
1435         <class id="mmrsm" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::metarecord_source_map" oils_persist:tablename="metabib.metarecord_source_map" oils_persist:field_safe="true">
1436                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_source_map_id_seq">
1437                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1438                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1439                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1440                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1441                         <field name="metarecord" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1442                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1443                 </fields>
1444                 <links>
1445                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1446                         <link field="metarecord" reltype="has_a" key="id" map="" class="mmr"/>
1447                 </links>
1448         </class>
1449         <class id="mkfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::keyword_field_entry" oils_persist:tablename="metabib.keyword_field_entry">
1450                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.keyword_field_entry_id_seq">
1451                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1452                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1453                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1454                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1455                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1456                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1457                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1458                 </fields>
1459                 <links>
1460                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1461                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1462                 </links>
1463         </class>
1464         <class id="mcp" controller="open-ils.cstore" oils_obj:fieldmapper="money::cash_payment" oils_persist:tablename="money.cash_payment">
1465                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1466                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1467                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1468                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1469                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1470                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1471                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1472                         <field name="cash_drawer" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1473                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1474                         <field name="note" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1475                         <field name="payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1476                         <field name="xact" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1477                         <field name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="text"/>
1478                         <field name="payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
1479                 </fields>
1480                 <links>
1481                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1482                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1483                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
1484                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1485                 </links>
1486         </class>
1487         <class id="mfp" controller="open-ils.cstore" oils_obj:fieldmapper="money::forgive_payment" oils_persist:tablename="money.forgive_payment">
1488                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1489                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1490                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1491                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1492                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1493                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1494                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1495                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1496                         <field name="note" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
1497                         <field name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1498                         <field name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
1499                         <field name="payment_type" oils_obj:array_position="10" oils_persist:virtual="true"  reporter:datatype="text"/>
1500                         <field name="payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1501                 </fields>
1502                 <links>
1503                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1504                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1505                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1506                 </links>
1507         </class>
1508         <class id="mrd" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::record_descriptor" oils_persist:tablename="metabib.rec_descriptor" reporter:label="Basic Record Descriptor">
1509                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.rec_descriptor_id_seq">
1510                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1511                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1512                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1513                         <field reporter:label="Audn" name="audience" oils_obj:array_position="3" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1514                         <field reporter:label="BLvl" name="bib_level" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1515                         <field reporter:label="Cat Form" name="cat_form" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1516                         <field reporter:label="Character Encoding" name="char_encoding" oils_obj:array_position="6" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1517                         <field reporter:label="Ctrl" name="control_type" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1518                         <field reporter:label="ELvl" name="enc_level" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1519                         <field reporter:label="Descriptor ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
1520                         <field reporter:label="Form" name="item_form" oils_obj:array_position="10" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1521                         <field reporter:label="Lang" name="item_lang" oils_obj:array_position="11" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1522                         <field reporter:label="Type" name="item_type" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1523                         <field reporter:label="LitF" name="lit_form" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1524                         <field reporter:label="Pub Status" name="pub_status" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1525                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1526                         <field reporter:label="TMat" name="type_mat" oils_obj:array_position="16" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1527                         <field reporter:label="Video Recording Format" name="vr_format" oils_obj:array_position="17" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1528                         <field reporter:label="Date1" name="date1" oils_obj:array_position="18" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1529                         <field reporter:label="Date2" name="date2" oils_obj:array_position="19" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1530                 </fields>
1531                 <links>
1532                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1533                         <link field="item_lang" reltype="has_a" key="code" map="" class="clm"/>
1534                         <link field="item_type" reltype="has_a" key="code" map="" class="citm"/>
1535                         <link field="bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1536                         <link field="item_form" reltype="has_a" key="code" map="" class="cifm"/>
1537                         <link field="audience" reltype="has_a" key="code" map="" class="cam"/>
1538                         <link field="lit_form" reltype="has_a" key="code" map="" class="clfm"/>
1539                 </links>
1540         </class>
1541         <class id="ccs" controller="open-ils.cstore" oils_obj:fieldmapper="config::copy_status" oils_persist:tablename="config.copy_status">
1542                 <fields oils_persist:primary="id" oils_persist:sequence="config.copy_status_id_seq">
1543                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1544                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1545                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1546                         <field name="holdable" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
1547                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1548                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1549                         <field name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
1550                 </fields>
1551                 <links/>
1552         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1553             <actions>
1554                 <create permission="CREATE_COPY_STATUS" global_required="true"/>
1555                 <retrieve permission="CREATE_COPY_STATUS|UPDATE_COPY_STATUS|DELETE_COPY_STATUS" global_required="true"/>
1556                 <update permission="UPDATE_COPY_STATUS" global_required="true"/>
1557                 <delete permission="DELETE_COPY_STATUS" global_required="true"/>
1558             </actions>
1559         </permacrud>
1560         </class>
1561         <class id="ausp" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_standing_penalty" oils_persist:tablename="actor.usr_standing_penalty">
1562                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_standing_penalty_id_seq">
1563                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1564                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1565                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1566                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1567                         <field name="penalty_type" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1568                         <field name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1569                 </fields>
1570                 <links>
1571                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1572                 </links>
1573         </class>
1574         <class id="aua" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_address" oils_persist:tablename="actor.usr_address" reporter:label="User Address">
1575                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_address_id_seq">
1576                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1577                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1578                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1579                         <field reporter:label="Type" name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1580                         <field reporter:label="City" name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1581                         <field reporter:label="Country" name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1582                         <field reporter:label="County" name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1583                         <field reporter:label="Address ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1584                         <field reporter:label="Postal Code" name="post_code" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1585                         <field reporter:label="State" name="state" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1586                         <field reporter:label="Street (1)" name="street1" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
1587                         <field reporter:label="Street (2)" name="street2" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1588                         <field reporter:label="User" name="usr" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
1589                         <field reporter:label="Valid Address?" name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
1590                         <field reporter:label="Within City Limits?" name="within_city_limits" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1591                 </fields>
1592                 <links>
1593                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1594                 </links>
1595         </class>
1596         <class id="acnn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number_note" oils_persist:tablename="asset.call_number_note">
1597                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_note_id_seq">
1598                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1599                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1600                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1601                         <field name="call_number" oils_obj:array_position="3" oils_persist:virtual="false" />
1602                         <field name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1603                         <field name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1604                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1605                         <field name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1606                         <field name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1607                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1608                 </fields>
1609                 <links>
1610                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
1611                 </links>
1612         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1613             <actions>
1614                 <create permission="CREATE_VOLUME_NOTE">
1615                     <context link="call_number" field="owning_lib"/>
1616                 </create>
1617                 <retrieve permission="VIEW_VOLUME_NOTES">
1618                     <context link="call_number" field="owning_lib"/>
1619                 </retrieve>
1620                 <update permission="UPDATE_VOLUME_NOTE">
1621                     <context link="call_number" field="owning_lib"/>
1622                 </update>
1623                 <delete permission="DELETE_VOLUME_NOTE">
1624                     <context link="call_number" field="owning_lib"/>
1625                 </delete>
1626             </actions>
1627         </permacrud>
1628         </class>
1629         <class id="arn" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_note" oils_persist:tablename="authority.record_note">
1630                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_note_id_seq">
1631                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1632                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1633                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1634                         <field name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1635                         <field name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1636                         <field name="edit_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1637                         <field name="editor" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1638                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1639                         <field name="record" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
1640                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
1641                 </fields>
1642                 <links>
1643                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
1644                 </links>
1645         </class>
1646         <class id="circ" controller="open-ils.cstore" oils_obj:fieldmapper="action::circulation" oils_persist:tablename="action.circulation" reporter:core="true" reporter:label="Circulation">
1647                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1648                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1649                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1650                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1651                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1652                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1653                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1654                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1655                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1656                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1657                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1658                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1659                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1660                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1661                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1662                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1663                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1664                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1665                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1666                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1667                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1668                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1669                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1670                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1671                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1672                         <field reporter:label="Patron" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
1673                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1674                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1675                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1676                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1677                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1678                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1679                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1680                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1681                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1682                 </fields>
1683                 <links>
1684                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1685                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1686                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1687                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1688                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1689                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1690                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1691                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1692                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1693                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1694                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1695                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1696                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1697                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1698                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1699                 </links>
1700         </class>
1701         <class id="combcirc" controller="open-ils.cstore" oils_obj:fieldmapper="action::all_circulation" oils_persist:tablename="action.all_circulation" reporter:core="true" reporter:label="Combined Aged and Active Circulations" oils_persist:readonly="true">
1702                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1703                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1704                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1705                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1706                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1707                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1708                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1709                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1710                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1711                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1712                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1713                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1714                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1715                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1716                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1717                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1718                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1719                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1720                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1721                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1722                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1723                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1724                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1725                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1726                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1727                         <field reporter:label="Patron ZIP" name="usr_post_code" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
1728                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1729                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1730                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1731                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1732                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1733                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1734                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1735                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1736                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1737                         <field reporter:label="Patron Home Library" name="usr_home_ou" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="link"/>
1738                         <field reporter:label="Patron Profile Group" name="usr_profile" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="link"/>
1739                         <field reporter:label="Patron Birth Year" name="usr_birth_year" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="int"/>
1740                         <field reporter:label="Call Number" name="copy_call_number" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="link"/>
1741                         <field reporter:label="Shelving Location" name="copy_location" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1742                         <field reporter:label="Copy Owning Library" name="copy_owning_lib" oils_obj:array_position="39" oils_persist:virtual="false" reporter:datatype="link"/>
1743                         <field reporter:label="Copy Circulating Library" name="copy_circ_lib" oils_obj:array_position="40" oils_persist:virtual="false" reporter:datatype="link"/>
1744                         <field reporter:label="Bib Record" name="copy_bib_record" oils_obj:array_position="41" oils_persist:virtual="false" reporter:datatype="link"/>
1745                 </fields>
1746                 <links>
1747                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1748                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1749                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1750                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1751                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1752                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1753                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1754                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1755                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1756                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1757                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1758                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1759                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1760                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1761                         <link field="copy_call_number" reltype="has_a" key="id" map="" class="acn"/>
1762                         <link field="copy_location" reltype="has_a" key="id" map="" class="acl"/>
1763                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1764                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1765                         <link field="copy_bib_record" reltype="has_a" key="id" map="" class="bre"/>
1766                 </links>
1767         </class>
1768         <class id="acirc" controller="open-ils.cstore" oils_obj:fieldmapper="action::aged_circulation" oils_persist:tablename="action.aged_circulation" reporter:core="true" reporter:label="Aged (patronless) Circulation">
1769                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1770                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1771                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1772                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1773                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1774                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1775                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1776                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1777                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1778                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1779                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1780                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1781                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1782                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1783                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1784                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1785                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1786                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1787                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1788                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1789                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1790                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1791                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1792                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1793                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1794                         <field reporter:label="Patron ZIP" name="usr_post_code" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
1795                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1796                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1797                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1798                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1799                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1800                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1801                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1802                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1803                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1804                         <field reporter:label="Patron Home Library" name="usr_home_ou" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="link"/>
1805                         <field reporter:label="Patron Profile Group" name="usr_profile" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="link"/>
1806                         <field reporter:label="Patron Birth Year" name="usr_birth_year" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="int"/>
1807                         <field reporter:label="Call Number" name="copy_call_number" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="link"/>
1808                         <field reporter:label="Shelving Location" name="copy_location" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1809                         <field reporter:label="Copy Owning Library" name="copy_owning_lib" oils_obj:array_position="39" oils_persist:virtual="false" reporter:datatype="link"/>
1810                         <field reporter:label="Copy Circulating Library" name="copy_circ_lib" oils_obj:array_position="40" oils_persist:virtual="false" reporter:datatype="link"/>
1811                         <field reporter:label="Bib Record" name="copy_bib_record" oils_obj:array_position="41" oils_persist:virtual="false" reporter:datatype="link"/>
1812                 </fields>
1813                 <links>
1814                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1815                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1816                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1817                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1818                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1819                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1820                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1821                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1822                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1823                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1824                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1825                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1826                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1827                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1828                         <link field="copy_call_number" reltype="has_a" key="id" map="" class="acn"/>
1829                         <link field="copy_location" reltype="has_a" key="id" map="" class="acl"/>
1830                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1831                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1832                         <link field="copy_bib_record" reltype="has_a" key="id" map="" class="bre"/>
1833                 </links>
1834         </class>
1835         <class id="ccnbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::call_number_bucket_item" oils_persist:tablename="container.call_number_bucket_item">
1836                 <fields oils_persist:primary="id" oils_persist:sequence="container.call_number_bucket_item_id_seq">
1837                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1838                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1839                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1840                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1841                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1842                         <field name="target_call_number" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link" />
1843                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
1844                 </fields>
1845                 <links>
1846                         <link field="target_call_number" reltype="has_a" key="id" map="" class="acn"/>
1847                         <link field="bucket" reltype="has_a" key="id" map="" class="ccnb"/>
1848                 </links>
1849         </class>
1850         <class id="cbreb" controller="open-ils.cstore" oils_obj:fieldmapper="container::biblio_record_entry_bucket" oils_persist:tablename="container.biblio_record_entry_bucket">
1851                 <fields oils_persist:primary="id" oils_persist:sequence="container.biblio_record_entry_bucket_id_seq">
1852                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1853                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1854                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1855                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1856                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1857                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1858                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
1859                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1860                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1861                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
1862                 </fields>
1863                 <links>
1864                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
1865                         <link field="items" reltype="has_many" key="bucket" map="" class="cbrebi"/>
1866                 </links>
1867         </class>
1868         <class id="ahcm" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_copy_map" oils_persist:tablename="action.hold_copy_map">
1869                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_copy_map_id_seq">
1870                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1871                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1872                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1873                         <field name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1874                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1875                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1876                 </fields>
1877                 <links>
1878                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1879                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1880                 </links>
1881         </class>
1882         <class id="ahn" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_notification" oils_persist:tablename="action.hold_notification" reporter:label="Hold Notification">
1883                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_notification_id_seq">
1884                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1885                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1886                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1887                         <field reporter:label="Hold" name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1888                         <field reporter:label="Notification ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1889                         <field reporter:label="Notification Method" name="method" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1890                         <field reporter:label="Notification Note" name="note" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1891                         <field reporter:label="Notifying Staff" name="notify_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1892                         <field reporter:label="Notification Date/Time" name="notify_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1893                 </fields>
1894                 <links>
1895                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1896                         <link field="notify_staff" reltype="has_a" key="id" map="" class="au"/>
1897                 </links>
1898         </class>
1899         <class id="acpl" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_location" oils_persist:tablename="asset.copy_location" reporter:label="Copy/Shelving Location">
1900                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_location_id_seq">
1901                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1902                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1903                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1904                         <field reporter:label="Can Circulate?" name="circulate" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="bool"/>
1905                         <field reporter:label="Is Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
1906                         <field reporter:label="Location ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1907                         <field reporter:label="Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1908                         <field reporter:label="Is OPAC Visible?" name="opac_visible" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1909                         <field reporter:label="Owning Org Unit" name="owning_lib" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1910                 </fields>
1911                 <links>
1912                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1913                 </links>
1914         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1915             <actions>
1916                 <create permission="CREATE_COPY_LOCATION" context_field="owning_lib"/>
1917                 <retrieve/>
1918                 <update permission="UPDATE_COPY_LOCATION" context_field="owning_lib"/>
1919                 <delete permission="DELETE_COPY_LOCATION" context_field="owning_lib"/>
1920             </actions>
1921         </permacrud>
1922         </class>
1923         <class id="ascecm" controller="open-ils.cstore" oils_obj:fieldmapper="asset::stat_cat_entry_copy_map" oils_persist:tablename="asset.stat_cat_entry_copy_map">
1924                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_entry_copy_map_id_seq">
1925                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1926                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1927                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1928                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1929                         <field name="owning_copy" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1930                         <field name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1931                         <field name="stat_cat_entry" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1932                 </fields>
1933                 <links>
1934                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1935                         <link field="stat_cat_entry" reltype="has_a" key="id" map="" class="asce"/>
1936                         <link field="stat_cat" reltype="has_a" key="id" map="" class="asc"/>
1937                 </links>
1938         </class>
1939         <class id="citm" controller="open-ils.cstore" oils_obj:fieldmapper="config::item_type_map" oils_persist:tablename="config.item_type_map" reporter:label="Item Type Map" oils_persist:field_safe="true">
1940                 <fields oils_persist:primary="code">
1941                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1942                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1943                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1944                         <field reporter:label="Item Type Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1945                         <field reporter:label="Item Type" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1946                 </fields>
1947                 <links/>
1948         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1949             <actions>
1950                 <create permission="CREATE_MARC_CODE" global_required="true"/>
1951                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
1952                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
1953                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1954             </actions>
1955         </permacrud>
1956         </class>
1957         <class id="cblvl" controller="open-ils.cstore" oils_obj:fieldmapper="config::bib_level_map" oils_persist:tablename="config.bib_level_map" reporter:label="Bib Level Map" oils_persist:field_safe="true">
1958                 <fields oils_persist:primary="code">
1959                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1960                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1961                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1962                         <field reporter:label="Bib Level Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1963                         <field reporter:label="Bib Level" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1964                 </fields>
1965                 <links/>
1966         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1967             <actions>
1968                 <create permission="CREATE_MARC_CODE" global_required="true"/>
1969                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
1970                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
1971                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1972             </actions>
1973         </permacrud>
1974         </class>
1975         <class id="sra" controller="open-ils.cstore" oils_obj:fieldmapper="search::relevance_adjustment" oils_persist:tablename="search.relevance_adjustment" reporter:label="Relevance Adjustment">
1976                 <fields oils_persist:primary="id" oils_persist:sequence="search.relevance_adjustment_id_seq">
1977                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1978                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1979                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1980                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="id"/>
1981                         <field reporter:label="Active" name="active" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="bool"/>
1982                         <field reporter:label="Index Field" name="field" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="link"/>
1983                         <field reporter:label="Bump Type" name="bump" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1984                         <field reporter:label="Multiplier" name="multiplier" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="number"/>
1985                 </fields>
1986                 <links>
1987             <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1988         </links>
1989         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1990             <actions>
1991                 <create permission="CREATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1992                 <retrieve permission="CREATE_RELEVANCE_ADJUSTMENT|UPDATE_RELEVANCE_ADJUSTMENT|DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1993                 <update permission="UPDATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1994                 <delete permission="DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
1995             </actions>
1996         </permacrud>
1997         </class>
1998         <class id="lasso" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso" oils_persist:tablename="actor.org_lasso">
1999                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_id_seq">
2000                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2001                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2002                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2003                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2004                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2005                 </fields>
2006                 <links/>
2007         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2008             <actions>
2009                 <create permission="CREATE_LASSO" global_required="true"/>
2010                 <retrieve permission="CREATE_LASSO|UPDATE_LASSO|DELETE_LASSO" global_required="true"/>
2011                 <update permission="UPDATE_LASSO" global_required="true"/>
2012                 <delete permission="DELETE_LASSO" global_required="true"/>
2013             </actions>
2014         </permacrud>
2015         </class>
2016         <class id="lmap" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso_map" oils_persist:tablename="actor.org_lasso_map">
2017                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_map_id_seq">
2018                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2019                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2020                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2021                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2022                         <field name="lasso" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2023                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2024                 </fields>
2025                 <links>
2026                         <link field="lasso" reltype="has_a" key="id" map="" class="lasso"/>
2027                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2028                 </links>
2029         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2030             <actions>
2031                 <create permission="CREATE_LASSO_MAP" global_required="true"/>
2032                 <retrieve permission="CREATE_LASSO_MAP|UPDATE_LASSO_MAP|DELETE_LASSO_MAP" global_required="true"/>
2033                 <update permission="UPDATE_LASSO_MAP" global_required="true"/>
2034                 <delete permission="DELETE_LASSO_MAP" global_required="true"/>
2035             </actions>
2036         </permacrud>
2037         </class>
2038         <class id="aoup" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_proximity" oils_persist:tablename="actor.org_unit_proximity">
2039                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
2040                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2041                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2042                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2043                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2044                         <field name="from_org" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2045                         <field name="to_org" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2046                         <field name="prox" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2047                 </fields>
2048                 <links>
2049                         <link field="from_org" reltype="has_a" key="id" map="" class="aou"/>
2050                         <link field="to_org" reltype="has_a" key="id" map="" class="aou"/>
2051                 </links>
2052         </class>
2053         <class id="ssr" controller="open-ils.cstore" oils_obj:fieldmapper="search::search_result" oils_persist:tablename="search.search_result" oils_persist:readonly="true">
2054                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
2055                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2056                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2057                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2058                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2059                         <field reporter:label="Relevance" name="rel" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="float"/>
2060                         <field reporter:label="Record" name="record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2061                         <field reporter:label="Total Results" name="total" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2062                         <field reporter:label="Checked" name="checked" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
2063                         <field reporter:label="Visible" name="visible" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int"/>
2064                         <field reporter:label="Deleted" name="deleted" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="int"/>
2065                         <field reporter:label="Excluded" name="excluded" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int"/>
2066                 </fields>
2067                 <links/>
2068         </class>
2069         <class id="asv" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey" oils_persist:tablename="action.survey" reporter:label="Survey">
2070                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_id_seq">
2071                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2072                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2073                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2074                         <field reporter:label="Questions" name="questions" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2075                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
2076                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2077                         <field reporter:label="Survey End Date/Time" name="end_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2078                         <field reporter:label="Survey ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id"/>
2079                         <field reporter:label="Name" name="name" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
2080                         <field reporter:label="OPAC Surevey?" name="opac" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
2081                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2082                         <field reporter:label="Poll Style?" name="poll" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
2083                         <field reporter:label="Is Required?" name="required" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="bool"/>
2084                         <field reporter:label="Survey Start Date/Time" name="start_date" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2085                         <field reporter:label="Display in User Summary" name="usr_summary" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
2086                 </fields>
2087                 <links>
2088                         <link field="owner" reltype="has_a" key="survey" map="" class="aou"/>
2089                         <link field="responses" reltype="has_many" key="survey" map="" class="asvr"/>
2090                         <link field="questions" reltype="has_many" key="survey" map="" class="asvq"/>
2091                 </links>
2092         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2093             <actions>
2094                 <create permission="CREATE_SURVEY" context_field="owner"/>
2095                 <retrieve/>
2096                 <update permission="UPDATE_SURVEY" context_field="owner"/>
2097                 <delete permission="DELETE_SURVEY" context_field="owner"/>
2098             </actions>
2099         </permacrud>
2100         </class>
2101         <class id="aoa" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_address" oils_persist:tablename="actor.org_address">
2102                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_address_id_seq">
2103                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2104                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2105                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2106                         <field name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
2107                         <field name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
2108                         <field name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
2109                         <field name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2110                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
2111                         <field name="org_unit" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2112                         <field name="post_code" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
2113                         <field name="state" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
2114                         <field name="street1" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
2115                         <field name="street2" oils_obj:array_position="12" oils_persist:virtual="false"  reporter:datatype="text"/>
2116                         <field name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
2117                 </fields>
2118                 <links>
2119                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2120                 </links>
2121         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2122             <actions>
2123                 <create permission="CREATE_ORG_ADDRESS" context_field="org_unit"/>
2124                 <retrieve/>
2125                 <update permission="UPDATE_ORG_ADDRESS" context_field="org_unit"/>
2126                 <delete permission="DELETE_ORG_ADDRESS" context_field="org_unit"/>
2127             </actions>
2128         </permacrud>
2129         </class>
2130         <class id="ahr" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_request" oils_persist:tablename="action.hold_request" reporter:core="true" reporter:label="Hold Request">
2131                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_request_id_seq">
2132                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2133                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2134                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2135                         <field name="status" oils_obj:array_position="3" oils_persist:virtual="true" />
2136                         <field reporter:label="Transit" name="transit" oils_obj:array_position="4" oils_persist:virtual="true" />
2137                         <field reporter:label="Capture Date/Time" name="capture_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2138                         <field reporter:label="Currently Targeted Copy" name="current_copy" oils_obj:array_position="6" oils_persist:virtual="false" />
2139                         <field reporter:label="Notify by Email?" name="email_notify" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
2140                         <field reporter:label="Hold Expire Date/Time" name="expire_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2141                         <field reporter:label="Fulfilling Library" name="fulfillment_lib" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2142                         <field reporter:label="Fulfilling Staff" name="fulfillment_staff" oils_obj:array_position="10" oils_persist:virtual="false" />
2143                         <field reporter:label="Fulfillment Date/Time" name="fulfillment_time" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2144                         <field reporter:label="Hold Type" name="hold_type" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
2145                         <field reporter:label="Holdable Formats (for M-type hold)" name="holdable_formats" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
2146                         <field reporter:label="Hold ID" name="id" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="id" />
2147                         <field reporter:label="Notifications Phone Number" name="phone_notify" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
2148                         <field reporter:label="Pickup Library" name="pickup_lib" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2149                         <field reporter:label="Last Targeting Date/Time" name="prev_check_time" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2150                         <field reporter:label="Requesting Library" name="request_lib" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2151                         <field reporter:label="Request Date/Time" name="request_time" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2152                         <field reporter:label="Requesting User" name="requestor" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
2153                         <field reporter:label="Item Selection Depth" name="selection_depth" oils_obj:array_position="21" oils_persist:virtual="false" />
2154                         <field reporter:label="Selection Locus" name="selection_ou" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2155                         <field reporter:label="Target Object ID" name="target" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
2156                         <field reporter:label="Hold User" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
2157                         <field reporter:label="Hold Cancel Date/Time" name="cancel_time" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2158                         <field name="notify_time" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="timestamp"/>
2159                         <field name="notify_count" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="int" />
2160                         <field reporter:label="Notifications" name="notifications" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
2161                         <field reporter:label="Bib Record link" name="bib_rec" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
2162                         <field reporter:label="Eligible Copies" name="eligible_copies" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
2163                         <field reporter:label="Currently Frozen" name="frozen" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="bool"/>
2164                         <field reporter:label="Thaw Date (if frozen)" name="thaw_date" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2165                 </fields>
2166                 <links>
2167                         <link field="fulfillment_lib" reltype="has_a" key="id" map="" class="aou"/>
2168                         <link field="fulfillment_staff" reltype="has_a" key="id" map="" class="au"/>
2169                         <link field="pickup_lib" reltype="has_a" key="id" map="" class="aou"/>
2170                         <link field="selection_ou" reltype="has_a" key="id" map="" class="aou"/>
2171                         <link field="requestor" reltype="has_a" key="id" map="" class="au"/>
2172                         <link field="current_copy" reltype="has_a" key="id" map="" class="acp"/>
2173                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2174                         <link field="request_lib" reltype="has_a" key="id" map="" class="aou"/>
2175                         <link field="transit" reltype="might_have" key="hold" map="" class="ahtc"/>
2176                         <link field="notifications" reltype="has_many" key="hold" map="" class="ahn"/>
2177                         <link field="eligible_copies" reltype="has_many" key="hold" map="target_copy" class="ahcm"/>
2178                         <link field="bib_rec" reltype="might_have" key="id" map="" class="rhrr"/>
2179                 </links>
2180         </class>
2181         <class id="aou" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit" oils_persist:tablename="actor.org_unit" reporter:label="Organizational Unit" oils_persist:field_safe="true">
2182                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_id_seq">
2183                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2184                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2185                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2186                         <field reporter:label="Subordinate Organizational Units" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="org_unit"/>
2187                         <field reporter:label="Billing Address" name="billing_address" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2188                         <field reporter:label="Holds Receiving Address" name="holds_address" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2189                         <field reporter:label="Organizational Unit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2190                         <field reporter:label="ILL Receiving Address" name="ill_address" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2191                         <field reporter:label="Mailing Address" name="mailing_address" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
2192                         <field reporter:label="Name" name="name" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2193                         <field reporter:label="Organizational Unit Type" name="ou_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
2194                         <field reporter:label="Parent Organizational Unit" name="parent_ou" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
2195                         <field reporter:label="Short (Policy) Name" name="shortname" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
2196                         <field reporter:label="Email Address" name="email" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
2197                         <field reporter:label="Phone Number" name="phone" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
2198                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="bool"/>
2199                         <field reporter:label="Users" name="users" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="link"/>
2200                         <field reporter:label="Closed Dates" name="closed_dates" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
2201                         <field reporter:label="Circulations" name="circulations" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="link"/>
2202                         <field reporter:label="Settings" name="settings" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
2203                         <field reporter:label="Addresses" name="addresses" oils_obj:array_position="20" oils_persist:virtual="true" reporter:datatype="link"/>
2204                         <field reporter:label="Checkins" name="checkins" oils_obj:array_position="21" oils_persist:virtual="true" reporter:datatype="link"/>
2205                         <field reporter:label="Workstations" name="workstations" oils_obj:array_position="22" oils_persist:virtual="true" reporter:datatype="link"/>
2206                 </fields>
2207                 <links>
2208                         <link field="billing_address" reltype="has_a" key="id" map="" class="aoa"/>
2209                         <link field="holds_address" reltype="has_a" key="id" map="" class="aoa"/>
2210                         <link field="ou_type" reltype="has_a" key="id" map="" class="aout"/>
2211                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aoa"/>
2212                         <link field="parent_ou" reltype="has_a" key="id" map="" class="aou"/>
2213                         <link field="ill_address" reltype="has_a" key="id" map="" class="aoa"/>
2214                         <link field="users" reltype="has_many" key="home_ou" map="" class="au"/>
2215                         <link field="closed_dates" reltype="has_many" key="org_unit" map="" class="aoucd"/>
2216                         <link field="children" reltype="has_many" key="parent_ou" map="" class="aou"/>
2217                         <link field="circulations" reltype="has_many" key="circ_lib" map="" class="circ"/>
2218                         <link field="settings" reltype="has_many" key="org_unit" map="" class="aous"/>
2219                         <link field="addresses" reltype="has_many" key="org_unit" map="" class="aoa"/>
2220                         <link field="checkins" reltype="has_many" key="checkin_lib" map="" class="circ"/>
2221                         <link field="workstations" reltype="has_many" key="owning_lib" map="" class="aws"/>
2222                 </links>
2223         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2224             <actions>
2225                 <create permission="CREATE_ORG_UNIT" context_field="parent_ou"/>
2226                 <retrieve permission="CREATE_ORG_UNIT|UPDATE_ORG_UNIT|DELETE_ORG_UNIT">
2227                     <context field="id"/>
2228                     <context field="parent_ou"/>
2229                                 </retrieve>
2230                 <update permission="UPDATE_ORG_UNIT" context_field="id"/>
2231                 <delete permission="DELETE_ORG_UNIT" context_field="parent_ou"/>
2232             </actions>
2233         </permacrud>
2234         </class>
2235         <class id="ccnb" controller="open-ils.cstore" oils_obj:fieldmapper="container::call_number_bucket" oils_persist:tablename="container.call_number_bucket">
2236                 <fields oils_persist:primary="id" oils_persist:sequence="container.call_number_bucket_id_seq">
2237                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2238                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2239                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2240                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2241                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2242                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2243                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2244                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2245                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2246                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
2247                 </fields>
2248                 <links>
2249                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
2250                         <link field="items" reltype="has_many" key="bucket" map="" class="ccnbi"/>
2251                 </links>
2252         </class>
2253         <class id="asc" controller="open-ils.cstore" oils_obj:fieldmapper="asset::stat_cat" oils_persist:tablename="asset.stat_cat" reporter:label="Asset Statistical Category">
2254                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_id_seq">
2255                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2256                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2257                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2258                         <field reporter:label="Entries" name="entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2259                         <field reporter:label="Stat Cat ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" reporter:selector="name"/>
2260                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2261                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
2262                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2263                 </fields>
2264                 <links>
2265                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2266                         <link field="entries" reltype="has_many" key="stat_cat" map="" class="asce"/>
2267                 </links>
2268         </class>
2269         <class id="ac" controller="open-ils.cstore" oils_obj:fieldmapper="actor::card" oils_persist:tablename="actor.card" reporter:label="Library Card">
2270                 <fields oils_persist:primary="id" oils_persist:sequence="actor.card_id_seq">
2271                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2272                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2273                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2274                         <field reporter:label="IsActive?" name="active" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
2275                         <field reporter:label="Barcode" name="barcode" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2276                         <field reporter:label="Card ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2277                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2278                 </fields>
2279                 <links>
2280                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2281                 </links>
2282         </class>
2283         <class id="actsc" controller="open-ils.cstore" oils_obj:fieldmapper="actor::stat_cat" oils_persist:tablename="actor.stat_cat" reporter:label="User Statistical Category">
2284                 <fields oils_persist:primary="id" oils_persist:sequence="actor.stat_cat_id_seq">
2285                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2286                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2287                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2288                         <field reporter:label="Entries" name="entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2289                         <field reporter:label="Stat Cat ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" reporter:selector="name"/>
2290                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2291                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
2292                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2293                 </fields>
2294                 <links>
2295                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2296                         <link field="entries" reltype="has_many" key="stat_cat" map="" class="actsce"/>
2297                 </links>
2298         </class>
2299         <class id="msefe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::series_field_entry" oils_persist:tablename="metabib.series_field_entry">
2300                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.series_field_entry_id_seq">
2301                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2302                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2303                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2304                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2305                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2306                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2307                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2308                 </fields>
2309                 <links>
2310                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
2311                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2312                 </links>
2313         </class>
2314         <class id="cub" controller="open-ils.cstore" oils_obj:fieldmapper="container::user_bucket" oils_persist:tablename="container.user_bucket">
2315                 <fields oils_persist:primary="id" oils_persist:sequence="container.user_bucket_id_seq">
2316                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2317                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2318                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2319                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2320                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2321                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2322                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2323                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2324                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2325                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
2326                 </fields>
2327                 <links>
2328                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
2329                         <link field="items" reltype="has_many" key="bucket" map="" class="cubi"/>
2330                 </links>
2331         </class>
2332         <class id="mcrp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_payment" oils_persist:tablename="money.credit_payment" reporter:label="House Credit Payment">
2333                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2334                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2335                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2336                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2337                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2338                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2339                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2340                         <field reporter:label="Pyament ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2341                         <field reporter:label="Payment Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
2342                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2343                         <field reporter:label="Transaction" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2344                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="10" oils_persist:virtual="true"  reporter:datatype="text"/>
2345                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
2346                 </fields>
2347                 <links>
2348                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2349                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2350                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2351                 </links>
2352         </class>
2353         <class id="afr" controller="open-ils.cstore" oils_obj:fieldmapper="authority::full_rec" oils_persist:tablename="authority.full_rec">
2354                 <fields oils_persist:primary="id" oils_persist:sequence="authority.full_rec_id_seq">
2355                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2356                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2357                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2358                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2359                         <field name="ind1" oils_obj:array_position="4" oils_persist:virtual="false" />
2360                         <field name="ind2" oils_obj:array_position="5" oils_persist:virtual="false" />
2361                         <field name="record" oils_obj:array_position="6" oils_persist:virtual="false" />
2362                         <field name="subfield" oils_obj:array_position="7" oils_persist:virtual="false" />
2363                         <field name="tag" oils_obj:array_position="8" oils_persist:virtual="false" />
2364                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false" />
2365                 </fields>
2366                 <links>
2367                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
2368                 </links>
2369         </class>
2370         <class id="cnct" controller="open-ils.cstore" oils_obj:fieldmapper="config::non_cataloged_type" oils_persist:tablename="config.non_cataloged_type" reporter:label="Non-cataloged Type">
2371                 <fields oils_persist:primary="id" oils_persist:sequence="config.non_cataloged_type_id_seq">
2372                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2373                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2374                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2375                         <field reporter:label="Circulation Duration" name="circ_duration" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
2376                         <field reporter:label="Non-cat Type ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2377                         <field reporter:label="In House?" name="in_house" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
2378                         <field reporter:label="Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
2379                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2380                 </fields>
2381                 <links>
2382                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
2383                 </links>
2384         </class>
2385         <class id="aout" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_type" oils_persist:tablename="actor.org_unit_type" reporter:label="Organizational Unit Type">
2386                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_type_id_seq">
2387                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2388                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2389                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2390                         <field reporter:label="Subordinate Types" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2391                         <field reporter:label="Can Have Users?" name="can_have_users" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
2392                         <field reporter:label="Can Have Volumes?" name="can_have_vols" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
2393                         <field reporter:label="Type Depth" name="depth" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2394                         <field reporter:label="Type ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2395                         <field reporter:label="Type Name" name="name" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
2396                         <field reporter:label="OPAC Label" name="opac_label" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
2397                         <field reporter:label="Parent Type" name="parent" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
2398                         <field reporter:label="Org Units" name="org_units" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="org_unit"/>
2399                 </fields>
2400                 <links>
2401                         <link field="parent" reltype="has_a" key="id" map="" class="aout"/>
2402                         <link field="children" reltype="has_many" key="parent" map="" class="aout"/>
2403                         <link field="org_units" reltype="has_many" key="ou_type" map="" class="aou"/>
2404                 </links>
2405         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2406             <actions>
2407                 <create permission="CREATE_ORG_TYPE" global_required="true"/>
2408                 <retrieve permission="CREATE_ORG_UNIT|UPDATE_ORG_UNIT|DELETE_ORG_UNIT" global_required="true"/>
2409                 <update permission="UPDATE_ORG_TYPE" global_required="true"/>
2410                 <delete permission="DELETE_ORG_TYPE" global_required="true"/>
2411             </actions>
2412         </permacrud>
2413         </class>
2414         <class id="bren" controller="open-ils.cstore" oils_obj:fieldmapper="biblio::record_note" oils_persist:tablename="biblio.record_note">
2415                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_note_id_seq">
2416                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2417                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2418                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2419                         <field name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2420                         <field name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2421                         <field name="edit_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2422                         <field name="editor" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2423                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
2424                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2425                         <field name="record" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2426                         <field name="value" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
2427                 </fields>
2428                 <links>
2429                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2430                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2431                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
2432                 </links>
2433         </class>
2434         <class id="mucs" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_circulation_summary" oils_persist:tablename="money.usr_circulation_summary">
2435                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2436                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2437                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2438                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2439                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2440                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2441                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2442                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2443                 </fields>
2444                 <links>
2445                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2446                 </links>
2447         </class>
2448         <class id="mg" controller="open-ils.cstore" oils_obj:fieldmapper="money::grocery" oils_persist:tablename="money.grocery" reporter:label="Grocery Transaction">
2449                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
2450                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2451                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2452                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2453                         <field reporter:label="Billing Location" name="billing_location" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2454                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2455                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
2456                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2457                         <field reporter:label="Transaction Finish Timestamp" name="xact_finish" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp" />
2458                         <field reporter:label="Transaction Start Timestamp" name="xact_start" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp" />
2459                         <field reporter:label="Billings" name="billings" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
2460                         <field reporter:label="Payments" name="payments" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2461                         <field reporter:label="Billable Transaction link" name="billable_transaction" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
2462                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="money"/>
2463                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="money"/>
2464                 </fields>
2465                 <links>
2466                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2467                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
2468                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
2469                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
2470                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
2471                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
2472                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
2473                 </links>
2474         </class>
2475         <class id="cbs" controller="open-ils.cstore" oils_obj:fieldmapper="config::bib_source" oils_persist:tablename="config.bib_source">
2476                 <fields oils_persist:primary="id" oils_persist:sequence="config.bib_source_id_seq">
2477                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2478                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2479                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2480                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="source" reporter:datatype="id"/>
2481                         <field name="quality" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
2482                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2483                         <field name="transcendant" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
2484                 </fields>
2485                 <links/>
2486         </class>
2487         <class id="mbt" controller="open-ils.cstore" oils_obj:fieldmapper="money::billable_transaction" oils_persist:tablename="money.billable_xact" reporter:label="Billable Transaction">
2488                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
2489                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2490                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2491                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2492                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2493                         <field reporter:label="User" name="usr" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2494                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2495                         <field reporter:label="Transaction Start Date/Time" name="xact_start" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2496                         <field reporter:label="Grocery Billing link" name="grocery" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
2497                         <field reporter:label="Circulation Billing link" name="circulation" oils_obj:array_position="8" oils_persist:virtual="true" reporter:datatype="link"/>
2498                         <field reporter:label="Billing Line Items" name="billings" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
2499                         <field reporter:label="Payment Line Items" name="payments" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2500                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="money"/>
2501                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="money"/>
2502                 </fields>
2503                 <links>
2504                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
2505                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2506                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2507                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
2508                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
2509                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
2510                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
2511                 </links>
2512         </class>
2513         <class id="actsce" controller="open-ils.cstore" oils_obj:fieldmapper="actor::stat_cat_entry" oils_persist:tablename="actor.stat_cat_entry" reporter:label="User Stat Cat Entry">
2514                 <fields oils_persist:primary="id" oils_persist:sequence="actor.stat_cat_entry_id_seq">
2515                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2516                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2517                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2518                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2519                         <field reporter:label="Entry Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2520                         <field reporter:label="Stat Cat" name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2521                         <field reporter:label="Entry Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2522                 </fields>
2523                 <links>
2524                         <link field="stat_cat" reltype="has_a" key="id" map="" class="actsc"/>
2525                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
2526                 </links>
2527         </class>
2528         <class id="cubi" controller="open-ils.cstore" oils_obj:fieldmapper="container::user_bucket_item" oils_persist:tablename="container.user_bucket_item">
2529                 <fields oils_persist:primary="id" oils_persist:sequence="container.user_bucket_item_id_seq">
2530                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2531                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2532                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2533                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2534                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2535                         <field name="target_user" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2536                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
2537                 </fields>
2538                 <links>
2539                         <link field="target_user" reltype="has_a" key="id" map="" class="au"/>
2540                         <link field="bucket" reltype="has_a" key="id" map="" class="cub"/>
2541                 </links>
2542         </class>
2543         <class id="mus" controller="open-ils.cstore" oils_obj:fieldmapper="money::user_summary" oils_persist:tablename="money.usr_summary">
2544                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2545                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2546                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2547                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2548                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2549                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2550                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2551                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2552                 </fields>
2553                 <links>
2554                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2555                 </links>
2556         </class>
2557         <class id="clfm" controller="open-ils.cstore" oils_obj:fieldmapper="config::lit_form_map" oils_persist:tablename="config.lit_form_map" reporter:label="Literary Form" oils_persist:field_safe="true">
2558                 <fields oils_persist:primary="code" oils_persist:sequence="">
2559                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2560                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2561                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2562                         <field reporter:label="LitF Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="text"/>
2563                         <field reporter:label="LitF Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2564                         <field reporter:label="LitF Name" name="value" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2565                 </fields>
2566                 <links/>
2567         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2568             <actions>
2569                 <create permission="CREATE_MARC_CODE" global_required="true"/>
2570                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
2571                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
2572                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
2573             </actions>
2574         </permacrud>
2575         </class>
2576         <class id="mwp" controller="open-ils.cstore" oils_obj:fieldmapper="money::work_payment" oils_persist:tablename="money.work_payment" reporter:label="Work Payment">
2577                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2578                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2579                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2580                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2581                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2582                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2583                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2584                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2585                         <field reporter:label="Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
2586                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2587                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2588                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2589                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
2590                 </fields>
2591                 <links>
2592                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2593                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2594                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2595                 </links>
2596         </class>
2597         <class id="mgp" controller="open-ils.cstore" oils_obj:fieldmapper="money::goods_payment" oils_persist:tablename="money.goods_payment" reporter:label="Goods Payment">
2598                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2599                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2600                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2601                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2602                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2603                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2604                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2605                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2606                         <field reporter:label="Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
2607                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2608                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
2609                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
2610                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="text"/>
2611                 </fields>
2612                 <links>
2613                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2614                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2615                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2616                 </links>
2617         </class>
2618         <class id="aoc" controller="open-ils.cstore" oils_obj:fieldmapper="action::open_circulation" oils_persist:tablename="action.open_circulation">
2619                 <fields oils_persist:primary="id" oils_persist:sequence="">
2620                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2621                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2622                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2623                         <field name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2624                         <field name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2625                         <field name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2626                         <field name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2627                         <field name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2628                         <field name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2629                         <field name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2630                         <field name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
2631                         <field name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
2632                         <field name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
2633                         <field name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
2634                         <field name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
2635                         <field name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
2636                         <field name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
2637                         <field name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
2638                         <field name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
2639                         <field name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
2640                         <field name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
2641                         <field name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
2642                         <field name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2643                         <field name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
2644                         <field name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
2645                         <field name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
2646                         <field name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
2647                         <field name="circulation" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
2648                 </fields>
2649                 <links>
2650                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
2651                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
2652                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
2653                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
2654                 </links>
2655         </class>
2656         <class id="msfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::subject_field_entry" oils_persist:tablename="metabib.subject_field_entry">
2657                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.subject_field_entry_id_seq">
2658                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2659                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2660                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2661                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2662                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2663                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2664                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2665                 </fields>
2666                 <links>
2667                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
2668                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2669                 </links>
2670         </class>
2671         <class id="crrf" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::recuring_fine" oils_persist:tablename="config.rule_recuring_fine">
2672                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_recuring_fine_id_seq">
2673                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2674                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2675                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2676                         <field name="high" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2677                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2678                         <field name="low" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2679                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2680                         <field name="normal" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money" />
2681                         <field name="recurance_interval" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
2682                 </fields>
2683                 <links/>
2684         </class>
2685         <class id="mckp" controller="open-ils.cstore" oils_obj:fieldmapper="money::check_payment" oils_persist:tablename="money.check_payment" reporter:label="Check Payment">
2686                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
2687                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2688                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2689                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2690                         <field reporter:label="Accepting Staff Member" name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2691                         <field reporter:label="Amount" name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2692                         <field reporter:label="Amount Collected" name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2693                         <field reporter:label="Workstation link" name="cash_drawer" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2694                         <field reporter:label="Check Number" name="check_number" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int" />
2695                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="id" />
2696                         <field reporter:label="Note" name="note" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
2697                         <field reporter:label="Payment Timestamp" name="payment_ts" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2698                         <field reporter:label="Transaction link" name="xact" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
2699                         <field reporter:label="Payment link" name="payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
2700                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="text"/>
2701                 </fields>
2702                 <links>
2703                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
2704                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
2705                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
2706                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
2707                 </links>
2708         </class>
2709         <class id="acp" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy" oils_persist:tablename="asset.copy" reporter:core="true" reporter:label="Item">
2710                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_id_seq">
2711                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2712                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2713                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2714                         <field reporter:label="Statistical Catagory Entries" name="stat_cat_entries" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2715                         <field reporter:label="Age Hold Protection" name="age_protect" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2716                         <field reporter:label="Alert Message" name="alert_message" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2717                         <field reporter:label="Barcode" name="barcode" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2718                         <field reporter:label="Call Number/Volume" name="call_number" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2719                         <field reporter:label="Circulation Type (MARC)" name="circ_as_type" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
2720                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2721                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
2722                         <field reporter:label="Can Circulate" name="circulate" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
2723                         <field reporter:label="Copy Number on Volume" name="copy_number" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
2724                         <field reporter:label="Creation Date/Time" name="create_date" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2725                         <field reporter:label="Creating User" name="creator" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="link"/>
2726                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="bool"/>
2727                         <field reporter:label="Is Deposit Required" name="deposit" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
2728                         <field reporter:label="Deposit Amount" name="deposit_amount" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="money" />
2729                         <field reporter:label="Precat Dummy Author" name="dummy_author" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
2730                         <field reporter:label="Precat Dummy Title" name="dummy_title" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="text"/>
2731                         <field reporter:label="Last Edit Date/Time" name="edit_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2732                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="link"/>
2733                         <field reporter:label="Fine Level" name="fine_level" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="int"/>
2734                         <field reporter:label="Is Holdable" name="holdable" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="bool" />
2735                         <field reporter:label="Copy ID" name="id" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="id"/>
2736                         <field reporter:label="Loan Duration" name="loan_duration" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="int"/>
2737                         <field reporter:label="Shelving Location" name="location" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="link"/>
2738                         <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="bool" />
2739                         <field reporter:label="Price" name="price" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="money" />
2740                         <field reporter:label="Is Reference" name="ref" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="bool"/>
2741                         <field reporter:label="Copy Status" name="status" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="link"/>
2742                         <field reporter:label="Copy Notes" name="notes" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="link"/>
2743                         <field reporter:label="Stat-Cat entry maps" name="stat_cat_entry_copy_maps" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="link"/>
2744                         <field reporter:label="Circulations" name="circulations" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="link"/>
2745                         <field reporter:label="Total Circulations" name="total_circ_count" oils_obj:array_position="34" oils_persist:virtual="true" reporter:datatype="link"/>
2746                         <field reporter:label="Holds" name="holds" oils_obj:array_position="35" oils_persist:virtual="true" reporter:datatype="link"/>
2747                 </fields>
2748                 <links>
2749                         <link field="age_protect" reltype="has_a" key="id" map="" class="crahp"/>
2750                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
2751                         <link field="location" reltype="has_a" key="id" map="" class="acpl"/>
2752                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
2753                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
2754                         <link field="status" reltype="has_a" key="id" map="" class="ccs"/>
2755                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
2756                         <link field="holds" reltype="has_many" key="target_copy" map="hold" class="ahcm"/>
2757                         <link field="stat_cat_entry_copy_maps" reltype="has_many" key="owning_copy" map="" class="ascecm"/>
2758                         <link field="notes" reltype="has_many" key="owning_copy" map="" class="acpn"/>
2759                         <link field="stat_cat_entries" reltype="has_many" key="owning_copy" map="stat_cat_entry" class="ascecm"/>
2760                         <link field="circulations" reltype="has_many" key="target_copy" map="" class="circ"/>
2761                         <link field="total_circ_count" reltype="might_have" key="id" map="" class="erfcc"/>
2762                 </links>
2763         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2764             <actions>
2765                 <create permission="CREATE_COPY">
2766                     <context link="call_number" field="owning_lib"/>
2767                 </create>
2768                 <retrieve/>
2769                 <update permission="UPDATE_COPY">
2770                     <context link="call_number" field="owning_lib"/>
2771                 </update>
2772                 <delete permission="DELETE_COPY">
2773                     <context link="call_number" field="owning_lib"/>
2774                 </delete>
2775             </actions>
2776         </permacrud>
2777         </class>
2778         <class id="crahp" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::age_hold_protect" oils_persist:tablename="config.rule_age_hold_protect" reporter:label="Age Hold Protection Rule">
2779                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_age_hold_protect_id_seq">
2780                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2781                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2782                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2783                         <field reporter:label="Item Age" name="age" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
2784                         <field reporter:label="Rule ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2785                         <field reporter:label="Rule Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2786                         <field reporter:label="Allowed Proximity" name="prox" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2787                 </fields>
2788                 <links/>
2789         </class>
2790         <class id="crmf" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::max_fine" oils_persist:tablename="config.rule_max_fine" reporter:label="Max Fine Rule">
2791                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_max_fine_id_seq">
2792                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2793                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2794                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2795                         <field reporter:label="Max Fine Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2796                         <field reporter:label="Rule ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2797                         <field reporter:label="Rule Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2798                         <field reporter:label="Is Percent" name="is_percent" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
2799                 </fields>
2800                 <links/>
2801         </class>
2802         <class id="pgt" controller="open-ils.cstore" oils_obj:fieldmapper="permission::grp_tree" oils_persist:tablename="permission.grp_tree" reporter:label="Permission Group">
2803                 <fields oils_persist:primary="id" oils_persist:sequence="permission.grp_tree_id_seq">
2804                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2805                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2806                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2807                         <field reporter:label="Child Groups" name="children" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2808                         <field reporter:label="Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2809                         <field reporter:label="Group ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
2810                         <field reporter:label="Group Name" name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
2811                         <field reporter:label="Parent Group" name="parent" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2812                         <field reporter:label="User Expiration Interval" name="perm_interval" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
2813                         <field reporter:label="Required Permission" name="application_perm" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
2814                         <field reporter:label="Is User Group" name="usergroup" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool"/>
2815                 </fields>
2816                 <links>
2817                         <link field="parent" reltype="has_a" key="id" map="" class="pgt"/>
2818                         <link field="children" reltype="has_many" key="parent" map="" class="pgt"/>
2819                 </links>
2820         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2821             <actions>
2822                 <create permission="CREATE_PERM" global_required="true"/>
2823                 <retrieve permission="CREATE_PERM|UPDATE_PERM|DELETE_PERM" global_required="true"/>
2824                 <update permission="UPDATE_PERM" global_required="true"/>
2825                 <delete permission="DELETE_PERM" global_required="true"/>
2826             </actions>
2827         </permacrud>
2828         </class>
2829         <class id="asva" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_answer" oils_persist:tablename="action.survey_answer" reporter:label="Survey Answer">
2830                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_answer_id_seq">
2831                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2832                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2833                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2834                         <field reporter:label="Responses using this Answer" name="responses" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2835                         <field reporter:label="Answer Text" name="answer" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2836                         <field reporter:label="Answer ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2837                         <field reporter:label="Question" name="question" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2838                 </fields>
2839                 <links>
2840                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
2841                         <link field="responses" reltype="has_many" key="answer" map="" class="asvr"/>
2842                 </links>
2843         </class>
2844         <class id="ancc" controller="open-ils.cstore" oils_obj:fieldmapper="action::non_cataloged_circulation" oils_persist:tablename="action.non_cataloged_circulation" reporter:core="true" reporter:label="Non-cataloged Circulation">
2845                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cataloged_circulation_id_seq">
2846                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2847                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2848                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2849                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2850                         <field reporter:label="Circulation Date/Time" name="circ_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2851                         <field reporter:label="Non-cat Circulation ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2852                         <field reporter:label="Non-cat Item Type" name="item_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2853                         <field reporter:label="Patron" name="patron" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2854                         <field reporter:label="Circulating Staff" name="staff" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
2855                 </fields>
2856                 <links>
2857                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
2858                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
2859                         <link field="patron" reltype="has_a" key="id" map="" class="au"/>
2860                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
2861                 </links>
2862         </class>
2863         <class id="moucs" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_user_circulation_summary" oils_persist:tablename="money.open_usr_circulation_summary">
2864                 <fields oils_persist:primary="usr" oils_persist:sequence="">
2865                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2866                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2867                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2868                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
2869                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
2870                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
2871                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2872                 </fields>
2873                 <links>
2874                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2875                 </links>
2876         </class>
2877         <class id="aufh" controller="open-ils.cstore" oils_obj:fieldmapper="action::unfulfilled_hold_list" oils_persist:tablename="action.unfulfilled_hold_list" reporter:label="Unfulfilled Hold Targets">
2878                 <fields oils_persist:primary="id" oils_persist:sequence="action.unfulfilled_hold_list_id_seq">
2879                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2880                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2881                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2882                         <field reporter:label="Non-fulfilling Library" name="circ_lib" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
2883                         <field reporter:label="Non-fulfilling Copy" name="current_copy" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2884                         <field reporter:label="Retargeting Date/Time" name="fail_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2885                         <field reporter:label="Hold" name="hold" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2886                         <field reporter:label="Record ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
2887                 </fields>
2888                 <links>
2889                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
2890                         <link field="current_copy" reltype="has_a" key="id" map="" class="acp"/>
2891                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
2892                 </links>
2893         </class>
2894         <class id="mtfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::title_field_entry" oils_persist:tablename="metabib.title_field_entry">
2895                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.title_field_entry_id_seq">
2896                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2897                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2898                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2899                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
2900                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
2901                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2902                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2903                 </fields>
2904                 <links>
2905                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
2906                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2907                 </links>
2908         </class>
2909         <class id="actscecm" controller="open-ils.cstore" oils_obj:fieldmapper="actor::stat_cat_entry_user_map" oils_persist:tablename="actor.stat_cat_entry_usr_map"  reporter:label="User Statistical Category Entry">
2910                 <fields oils_persist:primary="id" oils_persist:sequence="actor.stat_cat_entry_usr_map_id_seq">
2911                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2912                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2913                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2914                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2915                         <field reporter:label="Statistical Category" name="stat_cat" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2916                         <field reporter:label="Entry Text" name="stat_cat_entry" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2917                         <field reporter:label="User" name="target_usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2918                 </fields>
2919                 <links>
2920                         <link field="target_usr" reltype="has_a" key="id" map="" class="au"/>
2921                         <link field="stat_cat" reltype="has_a" key="id" map="" class="actsc"/>
2922                 </links>
2923         </class>
2924         <class id="pgpm" controller="open-ils.cstore" oils_obj:fieldmapper="permission::grp_perm_map" oils_persist:tablename="permission.grp_perm_map">
2925                 <fields oils_persist:primary="id" oils_persist:sequence="permission.grp_perm_map_id_seq">
2926                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2927                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2928                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2929                         <field name="depth" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
2930                         <field name="grantable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
2931                         <field name="grp" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2932                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
2933                         <field name="perm" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2934                 </fields>
2935                 <links>
2936                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
2937                         <link field="perm" reltype="has_a" key="id" map="" class="ppl"/>
2938                 </links>
2939         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2940             <actions>
2941                 <create permission="ASSIGN_GROUP_PERM" global_required="true"/>
2942                 <retrieve permission="ASSIGN_GROUP_PERM|UPDATE_GROUP_PERM|REMOVE_GROUP_PERM" global_required="true"/>
2943                 <update permission="UPDATE_GROUP_PERM" global_required="true"/>
2944                 <delete permission="REMOVE_GROUP_PERM" global_required="true"/>
2945             </actions>
2946         </permacrud>
2947         </class>
2948         <class id="ccb" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket" oils_persist:tablename="container.copy_bucket">
2949                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_id_seq">
2950                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2951                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2952                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2953                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" />
2954                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2955                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2956                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
2957                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2958                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
2959                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
2960                 </fields>
2961                 <links>
2962                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
2963                         <link field="items" reltype="has_many" key="bucket" map="" class="ccbi"/>
2964                 </links>
2965         </class>
2966         <class id="puwoum" controller="open-ils.cstore" oils_obj:fieldmapper="permission::usr_work_ou_map" oils_persist:tablename="permission.usr_work_ou_map">
2967                 <fields oils_persist:primary="id" oils_persist:sequence="permission.usr_work_ou_map_id_seq">
2968                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2969                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2970                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2971                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
2972                         <field name="usr" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2973                         <field name="work_ou" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2974                 </fields>
2975                 <links>
2976                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2977                         <link field="work_ou" reltype="has_a" key="id" map="" class="aou"/>
2978                 </links>
2979         </class>
2980         <class id="pupm" controller="open-ils.cstore" oils_obj:fieldmapper="permission::usr_perm_map" oils_persist:tablename="permission.usr_perm_map">
2981                 <fields oils_persist:primary="id" oils_persist:sequence="permission.usr_perm_map_id_seq">
2982                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2983                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2984                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2985                         <field name="depth" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int"/>
2986                         <field name="grantable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
2987                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
2988                         <field name="perm" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
2989                         <field name="usr" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
2990                 </fields>
2991                 <links>
2992                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2993                         <link field="perm" reltype="has_a" key="id" map="" class="ppl"/>
2994                 </links>
2995         </class>
2996         <class id="puopm" controller="open-ils.cstore" oils_obj:fieldmapper="permission::usr_object_perm_map" oils_persist:tablename="permission.usr_object_perm_map">
2997                 <fields oils_persist:primary="id" oils_persist:sequence="permission.usr_object_perm_map_id_seq">
2998                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2999                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3000                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3001                         <field name="object_id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="text"/>
3002                         <field name="grantable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
3003                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
3004                         <field name="perm" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
3005                         <field name="usr" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
3006                         <field name="object_type" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3007                 </fields>
3008                 <links>
3009                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
3010                         <link field="perm" reltype="has_a" key="id" map="" class="ppl"/>
3011                 </links>
3012         </class>
3013         <class id="mp" controller="open-ils.cstore" oils_obj:fieldmapper="money::payment" oils_persist:tablename="money.payment_view" reporter:core="true" reporter:label="Payments: All">
3014                 <fields oils_persist:primary="id" oils_persist:sequence="">
3015                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3016                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3017                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3018                         <field reporter:label="Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
3019                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3020                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3021                         <field reporter:label="Payment Date/Time" name="payment_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3022                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3023                         <field reporter:label="Billable Transaction" name="xact" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3024                         <field reporter:label="Voided?" name="voided" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3025                         <field reporter:label="Cash Payment Detail" name="cash_payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3026                         <field reporter:label="Credit Card Payment Detail" name="credit_card_payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3027                         <field reporter:label="Credit Payment Detail" name="credit_payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
3028                         <field reporter:label="Check Payment Detail" name="check_payment" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
3029                         <field reporter:label="Work Payment Detail" name="work_payment" oils_obj:array_position="14" oils_persist:virtual="true" reporter:datatype="link"/>
3030                         <field reporter:label="Forgive Payment Detail" name="forgive_payment" oils_obj:array_position="15" oils_persist:virtual="true" reporter:datatype="link"/>
3031                         <field reporter:label="Goods Payment Detail" name="goods_payment" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="link"/>
3032                 </fields>
3033                 <links>
3034                         <link field="cash_payment" reltype="might_have" key="id" map="" class="mcp"/>
3035                         <link field="credit_card_payment" reltype="might_have" key="id" map="" class="mccp"/>
3036                         <link field="credit_payment" reltype="might_have" key="id" map="" class="mcrp"/>
3037                         <link field="check_payment" reltype="might_have" key="id" map="" class="mckp"/>
3038                         <link field="work_payment" reltype="might_have" key="id" map="" class="mwp"/>
3039                         <link field="forgive_payment" reltype="might_have" key="id" map="" class="mfp"/>
3040                         <link field="goods_payment" reltype="might_have" key="id" map="" class="mgp"/>
3041                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
3042                 </links>
3043         </class>
3044         <class id="mbp" controller="open-ils.cstore" oils_obj:fieldmapper="money::bnm_payment" oils_persist:tablename="money.bnm_payment_view" reporter:core="true" reporter:label="Payments: Brick-and-mortar">
3045                 <fields oils_persist:primary="id" oils_persist:sequence="">
3046                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3047                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3048                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3049                         <field reporter:label="Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
3050                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3051                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3052                         <field reporter:label="Payment Date/Time" name="payment_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3053                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3054                         <field reporter:label="Billable Transaction" name="xact" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3055                         <field reporter:label="Voided?" name="voided" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3056                         <field reporter:label="Cash Payment Detail" name="cash_payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3057                         <field reporter:label="Credit Card Payment Detail" name="credit_card_payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3058                         <field reporter:label="Credit Payment Detail" name="credit_payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
3059                         <field reporter:label="Check Payment Detail" name="check_payment" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
3060                         <field reporter:label="Work Payment Detail" name="work_payment" oils_obj:array_position="14" oils_persist:virtual="true" reporter:datatype="link"/>
3061                         <field reporter:label="Forgive Payment Detail" name="forgive_payment" oils_obj:array_position="15" oils_persist:virtual="true" reporter:datatype="link"/>
3062                         <field reporter:label="Goods Payment Detail" name="goods_payment" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="link"/>
3063                 </fields>
3064                 <links>
3065                         <link field="cash_payment" reltype="might_have" key="id" map="" class="mcp"/>
3066                         <link field="credit_card_payment" reltype="might_have" key="id" map="" class="mccp"/>
3067                         <link field="credit_payment" reltype="might_have" key="id" map="" class="mcrp"/>
3068                         <link field="check_payment" reltype="might_have" key="id" map="" class="mckp"/>
3069                         <link field="work_payment" reltype="might_have" key="id" map="" class="mwp"/>
3070                         <link field="forgive_payment" reltype="might_have" key="id" map="" class="mfp"/>
3071                         <link field="goods_payment" reltype="might_have" key="id" map="" class="mgp"/>
3072                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
3073                 </links>
3074         </class>
3075         <class id="mndp" controller="open-ils.reporter" oils_obj:fieldmapper="money::non_drawer_payment" oils_persist:tablename="money.non_drawer_payment_view" reporter:core="true" reporter:label="Payments: Non-drawer Staff">
3076                 <fields oils_persist:primary="id" oils_persist:sequence="">
3077                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3078                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3079                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3080                         <field reporter:label="Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
3081                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3082                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3083                         <field reporter:label="Payment Date/Time" name="payment_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3084                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3085                         <field reporter:label="Billable Transaction" name="xact" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3086                         <field reporter:label="Voided?" name="voided" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3087                         <field reporter:label="Work Payment Detail" name="work_payment" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3088                         <field reporter:label="Forgive Payment Detail" name="forgive_payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3089                         <field reporter:label="Goods Payment Detail" name="goods_payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
3090                 </fields>
3091                 <links>
3092                         <link field="work_payment" reltype="might_have" key="id" map="" class="mwp"/>
3093                         <link field="forgive_payment" reltype="might_have" key="id" map="" class="mfp"/>
3094                         <link field="goods_payment" reltype="might_have" key="id" map="" class="mgp"/>
3095                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
3096                 </links>
3097         </class>
3098         <class id="mdp" controller="open-ils.cstore" oils_obj:fieldmapper="money::desk_payment" oils_persist:tablename="money.desk_payment_view" reporter:core="true" reporter:label="Payments: Desk">
3099                 <fields oils_persist:primary="id" oils_persist:sequence="">
3100                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3101                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3102                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3103                         <field reporter:label="Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
3104                         <field reporter:label="Payment ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3105                         <field reporter:label="Note" name="note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3106                         <field reporter:label="Payment Date/Time" name="payment_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3107                         <field reporter:label="Payment Type" name="payment_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3108                         <field reporter:label="Billable Transaction" name="xact" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3109                         <field reporter:label="Accepting User" name="accepting_usr" oils_obj:array_position="9" oils_persist:virtual="false" />
3110                         <field reporter:label="Cash Drawer" name="cash_drawer" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
3111                         <field reporter:label="Voided?" name="voided" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
3112                         <field reporter:label="Cash Payment" name="cash_payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
3113                         <field reporter:label="Credit Card Payment" name="credit_card_payment" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
3114                         <field reporter:label="Check Payment" name="check_payment" oils_obj:array_position="14" oils_persist:virtual="true" reporter:datatype="link"/>
3115                 </fields>
3116                 <links>
3117                         <link field="cash_payment" reltype="might_have" key="id" map="" class="mcp"/>
3118                         <link field="credit_card_payment" reltype="might_have" key="id" map="" class="mccp"/>
3119                         <link field="check_payment" reltype="might_have" key="id" map="" class="mckp"/>
3120                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
3121                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
3122                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
3123                 </links>
3124         </class>
3125         <class id="cbrebi" controller="open-ils.cstore" oils_obj:fieldmapper="container::biblio_record_entry_bucket_item" oils_persist:tablename="container.biblio_record_entry_bucket_item">
3126                 <fields oils_persist:primary="id" oils_persist:sequence="container.biblio_record_entry_bucket_item_id_seq">
3127                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3128                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3129                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3130                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
3131                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3132                         <field name="target_biblio_record_entry" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
3133                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
3134                 </fields>
3135                 <links>
3136                         <link field="target_biblio_record_entry" reltype="has_a" key="id" map="" class="bre"/>
3137                         <link field="bucket" reltype="has_a" key="id" map="" class="cbreb"/>
3138                 </links>
3139         </class>
3140         <class id="asce" controller="open-ils.cstore" oils_obj:fieldmapper="asset::stat_cat_entry" oils_persist:tablename="asset.stat_cat_entry" reporter:label="Item Stat Cat Entry">
3141                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_entry_id_seq">
3142                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3143                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3144                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3145                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
3146                         <field reporter:label="Entry Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3147                         <field reporter:label="Stat Cat" name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
3148                         <field reporter:label="Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
3149                 </fields>
3150                 <links>
3151                         <link field="stat_cat" reltype="has_a" key="id" map="" class="asc"/>
3152                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
3153                 </links>
3154         </class>
3155         <class id="ahtc" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_transit_copy" oils_persist:tablename="action.hold_transit_copy" reporter:core="true" reporter:label="Hold Transit">
3156                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
3157                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3158                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3159                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3160                         <field reporter:label="Copy Status at Transit" name="copy_status" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
3161                         <field reporter:label="Destination Library" name="dest" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3162                         <field reporter:label="Receive Date/Time" name="dest_recv_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3163                         <field reporter:label="Hold requiring Transit" name="hold" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
3164                         <field reporter:label="Transit ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
3165                         <field reporter:label="Is Persistent?" name="persistant_transfer" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
3166                         <field reporter:label="Previous Stop" name="prev_hop" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
3167                         <field reporter:label="Sending Library" name="source" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3168                         <field reporter:label="Send Date/Time" name="source_send_time" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3169                         <field reporter:label="Transited Copy" name="target_copy" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
3170                         <field reporter:label="Base Transit" name="transit_copy" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
3171                 </fields>
3172                 <links>
3173                         <link field="transit_copy" reltype="might_have" key="id" map="" class="atc"/>
3174                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
3175                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
3176                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
3177                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
3178                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
3179                 </links>
3180         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
3181             <actions>
3182                 <create permission="TRANSIT_COPY" context_field="owner">
3183                     <context link="target_copy" field="circ_lib"/>
3184                 </create>
3185                 <retrieve/>
3186                 <update permission="UPDATE_TRANSIT" context_field="dest|source"/>
3187                 <delete permission="DELETE_TRANSIT" context_field="dest|source"/>
3188             </actions>
3189         </permacrud>
3190         </class>
3191         <class id="mb" controller="open-ils.cstore" oils_obj:fieldmapper="money::billing" oils_persist:tablename="money.billing" reporter:label="Billing Line Item">
3192                 <fields oils_persist:primary="id" oils_persist:sequence="money.billing_id_seq">
3193                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3194                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3195                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3196                         <field reporter:label="Amount" name="amount" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
3197                         <field reporter:label="Billing Timestamp" name="billing_ts" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3198                         <field reporter:label="Billing Type" name="billing_type" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3199                         <field reporter:label="Billing ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
3200                         <field reporter:label="Note" name="note" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3201                         <field reporter:label="Void Timestamp" name="void_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3202                         <field reporter:label="Voided?" name="voided" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3203                         <field reporter:label="Voiding Staff Member" name="voider" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
3204                         <field reporter:label="Transaction" name="xact" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
3205                 </fields>
3206                 <links>
3207                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
3208                         <link field="voider" reltype="has_a" key="id" map="" class="au"/>
3209                 </links>
3210         </class>
3211         <class id="pugm" controller="open-ils.cstore" oils_obj:fieldmapper="permission::usr_grp_map" oils_persist:tablename="permission.usr_grp_map">
3212                 <fields oils_persist:primary="id" oils_persist:sequence="permission.usr_grp_map_id_seq">
3213                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3214                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3215                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3216                         <field name="grp" oils_obj:array_position="3" oils_persist:virtual="false" />
3217                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
3218                         <field name="usr" oils_obj:array_position="5" oils_persist:virtual="false" />
3219                 </fields>
3220                 <links>
3221                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
3222                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
3223                 </links>
3224         </class>
3225         <class id="i18n" controller="open-ils.cstore" oils_obj:fieldmapper="config::i18n_core" oils_persist:tablename="config.i18n_core" oils_persist:field_safe="true">
3226                 <fields oils_persist:primary="id" oils_persist:sequence="config.i18n_core_id_seq">
3227                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3228                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3229                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3230                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3231                         <field name="fq_field" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3232                         <field name="identity_value" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3233                         <field name="translation" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3234                         <field name="string" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3235                 </fields>
3236                 <links>
3237                         <link field="translation" reltype="has_a" key="code" map="" class="i18n_l"/>
3238                 </links>
3239         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
3240             <actions>
3241                 <create permission="CREATE_TRANSLATION" global_required="true"/>
3242                 <retrieve permission="CREATE_TRANSLATION|UPDATE_TRANSLATION|DELETE_TRANSLATION" global_required="true"/>
3243                 <update permission="UPDATE_TRANSLATION" global_required="true"/>
3244                 <delete permission="DELETE_TRANSLATION" global_required="true"/>
3245             </actions>
3246         </permacrud>
3247         </class>
3248         <class id="i18n_l" controller="open-ils.cstore" oils_obj:fieldmapper="config::i18n_locale" oils_persist:tablename="config.i18n_locale" oils_persist:field_safe="true">
3249                 <fields oils_persist:primary="code">
3250                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3251                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3252                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3253                         <field name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3254                         <field name="marc_code" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3255                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
3256                         <field name="description" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
3257                 </fields>
3258                 <links/>
3259         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
3260             <actions>
3261                 <create permission="CREATE_LOCALE" global_required="true"/>
3262                 <retrieve permission="CREATE_LOCALE|UPDATE_LOCALE|DELETE_LOCALE" global_required="true"/>
3263                 <update permission="UPDATE_LOCALE" global_required="true"/>
3264                 <delete permission="DELETE_LOCALE" global_required="true"/>
3265             </actions>
3266         </permacrud>
3267         </class>
3268         <class id="rof" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::output_folder" oils_persist:tablename="reporter.output_folder">
3269                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.output_folder_id_seq">
3270                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3271                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3272                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3273                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3274                         <field name="parent" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3275                         <field name="owner" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
3276                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3277                         <field name="name" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3278                         <field name="shared" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
3279                         <field name="share_with" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
3280                         <field name="children" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3281                         <field name="outputs" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3282                 </fields>
3283                 <links>
3284                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
3285                         <link field="parent" reltype="has_a" key="id" map="" class="rof"/>
3286                         <link field="children" reltype="has_many" key="parent" map="" class="rof"/>
3287                         <link field="share_with" reltype="has_a" key="id" map="" class="aou"/>
3288                         <link field="outputs" reltype="has_many" key="folder" map="" class="rs"/>
3289                 </links>
3290         </class>
3291         <class id="rtf" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::template_folder" oils_persist:tablename="reporter.template_folder">
3292                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.template_folder_id_seq">
3293                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3294                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3295                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3296                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3297                         <field name="parent" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3298                         <field name="owner" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
3299                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3300                         <field name="name" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3301                         <field name="shared" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
3302                         <field name="share_with" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
3303                         <field name="children" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3304                         <field name="templates" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3305                 </fields>
3306                 <links>
3307                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
3308                         <link field="parent" reltype="has_a" key="id" map="" class="rtf"/>
3309                         <link field="children" reltype="has_many" key="parent" map="" class="rtf"/>
3310                         <link field="share_with" reltype="has_a" key="id" map="" class="aou"/>
3311                         <link field="templates" reltype="has_many" key="folder" map="" class="rt"/>
3312                 </links>
3313         </class>
3314         <class id="rrf" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::report_folder" oils_persist:tablename="reporter.report_folder">
3315                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.report_folder_id_seq">
3316                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3317                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3318                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3319                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3320                         <field name="parent" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3321                         <field name="owner" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
3322                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3323                         <field name="name" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3324                         <field name="shared" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
3325                         <field name="share_with" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
3326                         <field name="children" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3327                         <field name="reports" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
3328                 </fields>
3329                 <links>
3330                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
3331                         <link field="parent" reltype="has_a" key="id" map="" class="rrf"/>
3332                         <link field="children" reltype="has_many" key="parent" map="" class="rrf"/>
3333                         <link field="share_with" reltype="has_a" key="id" map="" class="aou"/>
3334                         <link field="reports" reltype="has_many" key="folder" map="" class="rr"/>
3335                 </links>
3336         </class>
3337         <class id="rt" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::template" oils_persist:tablename="reporter.template">
3338                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.template_id_seq">
3339                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3340                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3341                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3342                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3343                         <field name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3344                         <field name="create_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3345                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3346                         <field name="data" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3347                         <field name="folder" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3348                         <field name="description" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3349                         <field name="reports" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
3350                 </fields>
3351                 <links>
3352                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
3353                         <link field="folder" reltype="has_a" key="id" map="" class="rtf"/>
3354                         <link field="reports" reltype="has_many" key="template" map="" class="rr"/>
3355                 </links>
3356         </class>
3357         <class id="rr" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::report" oils_persist:tablename="reporter.report">
3358                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.report_id_seq">
3359                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3360                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3361                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3362                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3363                         <field name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3364                         <field name="create_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3365                         <field name="template" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
3366                         <field name="data" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
3367                         <field name="folder" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3368                         <field name="recur" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3369                         <field name="recurance" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
3370                         <field name="name" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="text"/>
3371                         <field name="description" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
3372                         <field name="runs" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
3373                 </fields>
3374                 <links>
3375                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
3376                         <link field="template" reltype="has_a" key="id" map="" class="rt"/>
3377                         <link field="folder" reltype="has_a" key="id" map="" class="rrf"/>
3378                         <link field="runs" reltype="has_many" key="report" map="" class="rs"/>
3379                 </links>
3380         </class>
3381         <class id="rs" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::schedule" oils_persist:tablename="reporter.schedule">
3382                 <fields oils_persist:primary="id" oils_persist:sequence="reporter.schedule_id_seq">
3383                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3384                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3385                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3386                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3387                         <field name="runner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3388                         <field name="start_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3389                         <field name="complete_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3390                         <field name="run_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3391                         <field name="email" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3392                         <field name="excel_format" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
3393                         <field name="csv_format" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool"/>
3394                         <field name="html_format" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
3395                         <field name="error_code" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="int"/>
3396                         <field name="error_text" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
3397                         <field name="report" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="link"/>
3398                         <field name="folder" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
3399                         <field name="chart_pie" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
3400                         <field name="chart_bar" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
3401                         <field name="chart_line" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="bool"/>
3402                 </fields>
3403                 <links>
3404                         <link field="runner" reltype="has_a" key="id" map="" class="au"/>
3405                         <link field="report" reltype="has_a" key="id" map="" class="rr"/>
3406                         <link field="folder" reltype="has_a" key="id" map="" class="rof"/>
3407                 </links>
3408         </class>
3409         <class id="rmsr" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::materialized_simple_record" oils_persist:tablename="reporter.materialized_simple_record" reporter:label="Fast Simple Record Extracts">
3410                 <fields oils_persist:primary="id">
3411                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3412                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3413                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3414                         <field reporter:label="Record ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3415                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3416                         <field reporter:label="Overall Record Quality" name="quality" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
3417                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3418                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3419                         <field reporter:label="Title Proper (normalized)" name="title" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3420                         <field reporter:label="Author (normalized)" name="author" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3421                         <field reporter:label="Publisher (normalized)" name="publisher" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3422                         <field reporter:label="Publication Year (normalized)" name="pubdate" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="int"/>
3423                         <field reporter:label="ISBN" name="isbn" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
3424                         <field reporter:label="ISSN" name="issn" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
3425                         <field reporter:label="Full Bibliographic record" name="biblio_record" oils_obj:array_position="14" oils_persist:virtual="true" reporter:datatype="link"/>
3426                 </fields>
3427                 <links>
3428                         <link field="biblio_record" reltype="might_have" key="id" map="" class="bre"/>
3429                 </links>
3430         </class>
3431         <class id="rssr" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::super_simple_record" oils_persist:tablename="reporter.super_simple_record" reporter:label="Simple Record Extracts">
3432                 <fields oils_persist:primary="id">
3433                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3434                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3435                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3436                         <field reporter:label="Record ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3437                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3438                         <field reporter:label="Overall Record Quality" name="quality" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
3439                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3440                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3441                         <field reporter:label="Title Proper (normalized)" name="title" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3442                         <field reporter:label="Author (normalized)" name="author" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3443                         <field reporter:label="Publisher (normalized)" name="publisher" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3444                         <field reporter:label="Publication Year (normalized)" name="pubdate" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="int"/>
3445                         <field reporter:label="ISBN" name="isbn" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
3446                         <field reporter:label="ISSN" name="issn" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
3447                         <field reporter:label="Full Bibliographic record" name="biblio_record" oils_obj:array_position="14" oils_persist:virtual="true" reporter:datatype="link"/>
3448                 </fields>
3449                 <links>
3450                         <link field="biblio_record" reltype="might_have" key="id" map="" class="bre"/>
3451                 </links>
3452         </class>
3453         <class id="rsr" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::simple_record" oils_persist:tablename="reporter.simple_record">
3454                 <fields oils_persist:primary="id">
3455                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3456                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3457                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3458                         <field reporter:label="Record ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3459                         <field reporter:label="Metarecord" name="metarecord" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3460                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="5" oils_persist:virtual="false" />
3461                         <field reporter:label="Overall Record Quality" name="quality" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
3462                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3463                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3464                         <field reporter:label="Title Proper (normalized)" name="title" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3465                         <field reporter:label="Uniform Title (normalized)" name="uniform_title" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3466                         <field reporter:label="Author (normalized)" name="author" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="text"/>
3467                         <field reporter:label="Publisher (normalized)" name="publisher" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
3468                         <field reporter:label="Publication Year (normalized)" name="pubdate" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="int"/>
3469                         <field reporter:label="Series Title (normalized)" name="series_title" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
3470                         <field reporter:label="Series Statement (normalized)" name="series_statement" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
3471                         <field reporter:label="Summary (normalized)" name="summary" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
3472                         <field reporter:label="ISBN" name="isbn" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="text"/>
3473                         <field reporter:label="ISSN" name="issn" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
3474                         <field reporter:label="Topic Subjects (normalized)" name="topic_subject" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="text"/>
3475                         <field reporter:label="Geographic Subjects (normalized)" name="geographic_subject" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="text"/>
3476                         <field reporter:label="Genres (normalized)" name="genre" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
3477                         <field reporter:label="Personal Name Subjects (normalized)" name="name_subject" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="text"/>
3478                         <field reporter:label="Corporate Name Subjects (normalized)" name="corporate_subject" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="text"/>
3479                         <field reporter:label="External URI List (normalized)" name="external_uri" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
3480                         <field reporter:label="Full Bibliographic record" name="biblio_record" oils_obj:array_position="25" oils_persist:virtual="true" reporter:datatype="link"/>
3481                 </fields>
3482                 <links>
3483                         <link field="metarecord" reltype="has_a" key="id" map="" class="mmr"/>
3484                         <link field="biblio_record" reltype="might_have" key="id" map="" class="bre"/>
3485                 </links>
3486         </class>
3487         <class id="rud" controller="open-ils.reporter-store open-ils.cstore" oils_obj:fieldmapper="reporter::user_demographic" oils_persist:tablename="reporter.demographic" reporter:label="User Demographics">
3488                 <fields oils_persist:primary="id">
3489                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3490                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3491                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3492                         <field reporter:label="User ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3493                         <field reporter:label="Date of Birth" name="dob" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3494                         <field reporter:label="General Demographic Division" name="general_division" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3495                 </fields>
3496                 <links>
3497                         <link field="id" reltype="might_have" key="id" map="" class="au"/>
3498                 </links>
3499         </class>
3500         <class id="rcirct" controller="open-ils.reporter-store open-ils.cstore" oils_obj:fieldmapper="reporter::circulation_type" oils_persist:tablename="reporter.circ_type" reporter:label="Circulation Type">
3501                 <fields oils_persist:primary="id">
3502                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3503                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3504                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3505                         <field reporter:label="Circulation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3506                         <field reporter:label="Circulation Type" name="type" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3507                 </fields>
3508                 <links>
3509                         <link field="id" reltype="might_have" key="id" map="" class="circ"/>
3510                 </links>
3511         </class>
3512         <class id="rhrr" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::hold_request_record" oils_persist:tablename="reporter.hold_request_record">
3513                 <fields oils_persist:primary="id">
3514                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3515                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3516                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3517                         <field reporter:label="Hold ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3518                         <field reporter:label="Hold Target" name="target" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
3519                         <field reporter:label="Hold Request Type" name="hold_type" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3520                         <field reporter:label="Target Bib Record" name="bib_record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
3521                 </fields>
3522                 <links>
3523                         <link field="id" reltype="might_have" key="id" map="" class="ahr"/>
3524                         <link field="bib_record" reltype="has_a" key="id" map="" class="bre"/>
3525                 </links>
3526         </class>
3527         <class id="rxbt" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::xact_billing_totals" oils_persist:tablename="reporter.xact_billing_totals">
3528                 <fields oils_persist:primary="xact">
3529                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3530                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3531                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3532                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
3533                         <field reporter:label="Unvoided Billing Amount" name="unvoided" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
3534                         <field reporter:label="Voided Billing Amount" name="voided" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money"/>
3535                         <field reporter:label="Total Billing Amount" name="total" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="money"/>
3536                 </fields>
3537                 <links>
3538                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
3539                 </links>
3540         </class>
3541         <class id="rxpt" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::xact_paid_totals" oils_persist:tablename="reporter.xact_paid_totals">
3542                 <fields oils_persist:primary="xact">
3543                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3544                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3545                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3546                         <field reporter:label="Transaction ID" name="xact" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
3547                         <field reporter:label="Unvoided Paid Amount" name="unvoided" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
3548                         <field reporter:label="Voided (Returned) Paid Amount" name="voided" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money"/>
3549                         <field reporter:label="Total Paid Amount" name="total" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="money"/>
3550                 </fields>
3551                 <links>
3552                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
3553                 </links>
3554         </class>
3555
3556     <class id="erfcc" controller="open-ils.reporter-store" oils_obj:fieldmapper="extend_reporter::full_circ_count" oils_persist:tablename="extend_reporter.full_circ_count" reporter:label="Total Circulation Count, Including Legacy">
3557         <fields oils_persist:primary="id">
3558             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3559             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3560             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3561             <field reporter:label="Copy ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="int" />
3562             <field reporter:label="Total Circulation Count" name="circ_count" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
3563         </fields>
3564         <links>
3565             <link field="id" reltype="has_a" key="id" map="" class="acp"/>
3566         </links>
3567     </class>
3568
3569         <!-- ********************************************************************************************************************* -->
3570         <!-- What follows is a set of example extensions that are useful for PINES.  Comment out or remove if you don't want them. -->
3571         <!-- ********************************************************************************************************************* -->
3572         <class id="rccc" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::classic_current_circ" oils_persist:tablename="reporter.classic_current_circ" reporter:core="true" reporter:label="Classic Circulation View">
3573                 <fields oils_persist:primary="id">
3574                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3575                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3576                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3577                         <field reporter:label="Circulation" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3578                         <field reporter:label="Library Circulation Location Short (Policy) Name" name="circ_lib" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3579                         <field reporter:label="Library Circulation Location Link" name="circ_lib_id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3580                         <field reporter:label="Circulation Date/Time" name="xact_start" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3581                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3582                         <field reporter:label="Copy Link" name="copy_id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3583                         <field reporter:label="Circ Modifier" name="circ_modifier" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3584                         <field reporter:label="Owning Library Short (Policy) Name" name="owning_lib_name" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3585                         <field reporter:label="Item Language" name="language" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="text"/>
3586                         <field reporter:label="Literary Form" name="lit_form" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
3587                         <field reporter:label="MARC Form" name="item_form" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
3588                         <field reporter:label="MARC Type" name="item_type" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
3589                         <field reporter:label="Shelving Location" name="shelving_location" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
3590                         <field reporter:label="Patron Profile Group" name="profile_group" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
3591                         <field reporter:label="Patron Age Demographic" name="demographic_general_division" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="text"/>
3592                         <field reporter:label="Call Number Link" name="call_number" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="link"/>
3593                         <field reporter:label="Call Number Label" name="call_number_label" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="text"/>
3594                         <field reporter:label="Call Number Dewey/Prefix" name="dewey" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="text"/>
3595                         <field reporter:label="Patron Link" name="patron_id" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="link"/>
3596                         <field reporter:label="Patron Home Library Link" name="patron_home_lib" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="link"/>
3597                         <field reporter:label="Patron Home Library Short (Policy) Name" name="patron_home_lib_shortname" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="text"/>
3598                         <field reporter:label="Patron County" name="patron_county" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
3599                         <field reporter:label="Patron City" name="patron_city" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="text"/>
3600                         <field reporter:label="Patron ZIP Code" name="patron_zip" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="text"/>
3601                         <field reporter:label="Legacy CAT1 Link" name="stat_cat_1" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="link"/>
3602                         <field reporter:label="Legacy CAT2 Link" name="stat_cat_2" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="link"/>
3603                         <field reporter:label="Dewey Range -- Tens" name="dewey_range_tens" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="text"/>
3604                         <field reporter:label="Dewey Range -- Hundreds" name="dewey_range_hundreds" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="text"/>
3605                         <field reporter:label="Dewey Block -- Tens" name="dewey_block_tens" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="text"/>
3606                         <field reporter:label="Dewey Block -- Hundreds" name="dewey_block_hundreds" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="text"/>
3607                         <field reporter:label="Legacy CAT1 Value" name="stat_cat_1_value" oils_obj:array_position="33" oils_persist:virtual="false" reporter:datatype="text"/>
3608                         <field reporter:label="Legacy CAT2 Value" name="stat_cat_2_value" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="text"/>
3609                 </fields>
3610                 <links>
3611                         <link field="id" reltype="has_a" key="id" map="" class="circ"/>
3612                         <link field="copy_id" reltype="has_a" key="id" map="" class="acp"/>
3613                         <link field="patron_id" reltype="has_a" key="id" map="" class="au"/>
3614                         <link field="circ_lib_id" reltype="has_a" key="id" map="" class="aou"/>
3615                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
3616                         <link field="patron_home_lib" reltype="has_a" key="id" map="" class="aou"/>
3617                         <link field="stat_cat_1" reltype="has_a" key="id" map="" class="rsce1"/>
3618                         <link field="stat_cat_2" reltype="has_a" key="id" map="" class="rsce2"/>
3619                 </links>
3620         </class>
3621
3622         <class id="rsce1" controller="open-ils.reporter-store open-ils.cstore" oils_obj:fieldmapper="reporter::legacy_cat1" oils_persist:tablename="reporter.legacy_cat1" reporter:label="CAT1 Entry">
3623                 <fields oils_persist:primary="id">
3624                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3625                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3626                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3627                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="id" />
3628                         <field reporter:label="Entry Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3629                         <field reporter:label="Entry Value" name="value" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3630                 </fields>
3631                 <links>
3632                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
3633                 </links>
3634         </class>
3635
3636         <class id="rsce2" controller="open-ils.reporter-store open-ils.cstore" oils_obj:fieldmapper="reporter::legacy_cat2" oils_persist:tablename="reporter.legacy_cat2" reporter:label="CAT2 Entry">
3637                 <fields oils_persist:primary="id">
3638                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3639                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3640                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3641                         <field reporter:label="Entry ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="id" />
3642                         <field reporter:label="Entry Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3643                         <field reporter:label="Entry Value" name="value" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3644                 </fields>
3645                 <links>
3646                         <link field="owner" reltype="has_a" key="id" map="" class="aou"/>
3647                 </links>
3648         </class>
3649
3650         <class id="rccbs" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::classic_current_billing_summary" oils_persist:tablename="reporter.classic_current_billing_summary" reporter:core="true" reporter:label="Classic Open Transaction Summary">
3651                 <fields oils_persist:primary="id">
3652                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3653                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3654                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3655                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
3656
3657                         <field reporter:label="Billing Location Short (Policy) Name" name="billing_location_shortname" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3658                         <field reporter:label="Billing Location Name" name="billing_location_name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3659                         <field reporter:label="Billing Location Link" name="billing_location" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3660
3661                         <field reporter:label="User Home Library Short (Policy) Name" name="usr_home_ou_shortname" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
3662                         <field reporter:label="User Home Library Name" name="usr_home_ou_name" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3663                         <field reporter:label="User Home Library Link" name="usr_home_ou" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3664
3665                         <field reporter:label="User Barcode" name="barcode" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3666                         <field reporter:label="User Link" name="usr" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
3667
3668                         <field reporter:label="Transaction Start Date/Time" name="xact_start" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3669                         <field reporter:label="Transaction End Date/Time" name="xact_finish" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3670                         <field reporter:label="Transaction Type" name="xact_type" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
3671
3672                         <field reporter:label="Total Paid" name="total_paid" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="money"/>
3673                         <field reporter:label="Total Billed" name="total_owed" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="money"/>
3674
3675                         <field reporter:label="Last Payment Date/Time" name="last_payment_ts" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3676                         <field reporter:label="Last Payment Note" name="last_payment_note" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
3677                         <field reporter:label="Last Payment Type" name="last_payment_type" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="text"/>
3678
3679                         <field reporter:label="Last Billing Date/Time" name="last_billing_ts" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3680                         <field reporter:label="Last Billing Note" name="last_billing_note" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
3681                         <field reporter:label="Last Billing Type" name="last_billing_type" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="text"/>
3682
3683                         <field reporter:label="User Age Demographic" name="demographic_general_division" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="text"/>
3684                         <field reporter:label="User County" name="patron_county" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
3685                         <field reporter:label="User City" name="patron_city" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="text"/>
3686                         <field reporter:label="User ZIP Code" name="patron_zip" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="text"/>
3687
3688                         <field reporter:label="Balance Owed" name="balance_owed" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="money"/>
3689                         <field reporter:label="User Profile Group" name="profile_group" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="text"/>
3690
3691                 </fields>
3692                 <links>
3693                         <link field="id" reltype="has_a" key="id" map="" class="mbt"/>
3694                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
3695                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
3696                         <link field="usr_home_ou" reltype="has_a" key="id" map="" class="aou"/>
3697                 </links>
3698         </class>
3699
3700         <class id="iatc" controller="open-ils.reporter-store" oils_obj:fieldmapper="action::intersystem_transit_copy" oils_persist:readonly="true" reporter:core="true" reporter:label="Inter-system Copy Transit">
3701                 <oils_persist:source_definition>
3702
3703                         SELECT  t.*
3704                           FROM  action.transit_copy t
3705                                 JOIN actor.org_unit AS s ON (t.source = s.id)
3706                                 JOIN actor.org_unit AS d ON (t.dest = d.id)
3707                           WHERE s.parent_ou &lt;&gt; d.parent_ou
3708
3709                 </oils_persist:source_definition>
3710                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
3711                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3712                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3713                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3714                         <field reporter:label="Pretransit Copy Status" name="copy_status" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
3715                         <field reporter:label="Destination" name="dest" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3716                         <field reporter:label="Receive Date/Time" name="dest_recv_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3717                         <field reporter:label="Transit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
3718                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
3719                         <field reporter:label="Previous Hop (unused)" name="prev_hop" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
3720                         <field reporter:label="Source" name="source" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
3721                         <field reporter:label="Send Date/Time" name="source_send_time" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3722                         <field reporter:label="Transited Copy" name="target_copy" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
3723                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
3724                 </fields>
3725                 <links>
3726                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
3727                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
3728                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
3729                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
3730                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
3731                 </links>
3732         </class>
3733
3734         <class id="rodcirc" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::overdue_circs" oils_persist:tablename="reporter.overdue_circs" reporter:core="true" reporter:label="Overdue Circulation">
3735                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
3736                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3737                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3738                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3739                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3740                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
3741                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3742                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
3743                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
3744                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
3745                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3746                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
3747                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
3748                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
3749                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
3750                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
3751                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
3752                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
3753                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
3754                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
3755                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
3756                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
3757                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
3758                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3759                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
3760                         <field reporter:label="Patron" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
3761                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
3762                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
3763                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
3764                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
3765                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
3766                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="text"/>
3767                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="money"/>
3768                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
3769                 </fields>
3770                 <links>
3771                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
3772                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
3773                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
3774                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
3775                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
3776                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
3777                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
3778                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
3779                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
3780                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
3781                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
3782                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
3783                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
3784                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
3785                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
3786                 </links>
3787         </class>
3788
3789     <class id="rocit" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::classic_item_list" oils_persist:tablename="reporter.classic_item_list" reporter:core="true" reporter:label="Classic Item List">
3790         <fields oils_persist:primary="id">
3791             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3792             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3793             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3794             <field reporter:label="Title" name="title" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="text"/>
3795             <field reporter:label="Author" name="author" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3796             <field reporter:label="Pubdate" name="pubdate" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3797             <field reporter:label="Copy ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
3798             <field reporter:label="Price" name="price" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
3799             <field reporter:label="Barcode" name="barcode" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
3800             <field reporter:label="Callnumber Label" name="call_number_label" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
3801             <field reporter:label="Dewy Tens" name="dewey_block_tens" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
3802             <field reporter:label="Dewy Hundreds" name="dewey_block_hundreds" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="text"/>
3803             <field reporter:label="Use Count" name="use_count" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="int"/>
3804             <field reporter:label="Circ Modifier" name="circ_modifier" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
3805             <field reporter:label="Shelving Location Name" name="shelving_location" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="text"/>
3806             <field reporter:label="Legacy Stat Cat 1" name="stat_cat_1" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
3807             <field reporter:label="Legacy Stat Cat 2" name="stat_cat_2" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
3808             <field reporter:label="Legacy Stat Cat 1 Value" name="stat_cat_1_value" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="text"/>
3809             <field reporter:label="Legacy Stat Cat 2 Value" name="stat_cat_2_value" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="text"/>
3810             <field reporter:label="Edit Date" name="edit_date" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3811             <field reporter:label="Create Date" name="create_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3812             <field reporter:label="Owning Lib Name" name="owning_lib_name" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
3813             <field reporter:label="Circ Lib Name" name="circ_lib_name" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="text"/>
3814             <field reporter:label="Owning Lib" name="owning_lib" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
3815             <field reporter:label="Circ Lib" name="circ_lib" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
3816             <field reporter:label="Creator" name="creator" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="link"/>
3817             <field reporter:label="Age Protection" name="age_protect" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="link"/>
3818             <field reporter:label="OPAC Visible" name="opac_visible" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="bool"/>
3819             <field reporter:label="Reference" name="ref" oils_obj:array_position="28" oils_persist:virtual="false" reporter:datatype="bool"/>
3820             <field reporter:label="Deposit Amount" name="deposit_amount" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="text"/>
3821             <field reporter:label="Deleted" name="deleted" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="bool"/>
3822             <field reporter:label="TCN" name="tcn_value" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="text"/>
3823             <field reporter:label="Status" name="status" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="link"/>
3824             <field reporter:label="Stop Fines Reason" name="stop_fines" oils_obj:array_position="33" oils_persist:virtual="false" reporter:datatype="text"/>
3825             <field reporter:label="Due Date" name="due_date" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="timestamp"/>
3826             <field reporter:label="Patron Barcode" name="patron_barcode" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="text"/>
3827             <field reporter:label="Patron Name" name="patron_name" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="text"/>
3828         </fields>
3829         <links>
3830             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3831             <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
3832             <link field="creator" reltype="has_a" key="id" map="" class="au"/>
3833             <link field="age_protect" reltype="has_a" key="id" map="" class="crahp"/>
3834             <link field="status" reltype="has_a" key="id" map="" class="ccs"/>
3835         </links>
3836     </class>
3837
3838     <class id="rmocbbol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_circ_balance_by_owning_lib" oils_persist:tablename="money.open_circ_balance_by_owning_lib" reporter:core="true" reporter:label="Open Circulation Billing by Owning Library">
3839         <fields oils_persist:primary="id">
3840             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3841             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3842             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3843             <field reporter:label="Circulation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
3844             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3845             <field reporter:label="Billing Type" name="billing_type" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3846             <field reporter:label="Total Billed" name="billed" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="money"/>
3847         </fields>
3848         <links>
3849             <link field="id" reltype="has_a" key="id" map="" class="circ"/>
3850             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3851         </links>
3852     </class>
3853
3854     <class id="rmobbol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_balance_by_owning_lib" oils_persist:tablename="money.open_balance_by_owning_lib" reporter:core="true" reporter:label="Open Circulation Balance by Owning Library">
3855         <fields oils_persist:primary="owning_lib">
3856             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3857             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3858             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3859             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3860             <field reporter:label="Billing Types" name="billing_types" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
3861             <field reporter:label="Balance" name="balance" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money"/>
3862         </fields>
3863         <links>
3864             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3865         </links>
3866     </class>
3867
3868     <class id="rmocbbcol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_circ_balance_by_circ_and_owning_lib" oils_persist:tablename="money.open_circ_balance_by_circ_and_owning_lib" reporter:core="true" reporter:label="Open Circulation Billing by Circulating Library and Owning Library">
3869         <fields oils_persist:primary="id">
3870             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3871             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3872             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3873             <field reporter:label="Circulation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
3874             <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3875             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3876             <field reporter:label="Billing Type" name="billing_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3877             <field reporter:label="Total Billed" name="billed" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
3878         </fields>
3879         <links>
3880             <link field="id" reltype="has_a" key="id" map="" class="circ"/>
3881             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3882             <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
3883         </links>
3884     </class>
3885
3886     <class id="rmobbcol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_balance_by_circ_and_owning_lib" oils_persist:tablename="money.open_balance_by_circ_and_owning_lib" reporter:core="true" reporter:label="Open Circulation Balance by Circulating Library and Owning Library">
3887         <fields oils_persist:primary="circ_lib">
3888             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3889             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3890             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3891             <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3892             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3893             <field reporter:label="Billing Types" name="billing_types" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3894             <field reporter:label="Balance" name="balance" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="money"/>
3895         </fields>
3896         <links>
3897             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3898             <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
3899         </links>
3900     </class>
3901
3902     <class id="rmocbbhol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_circ_balance_by_usr_home_and_owning_lib" oils_persist:tablename="money.open_circ_balance_by_usr_home_and_owning_lib" reporter:core="true" reporter:label="Open Circulation Billing by User Home Library and Owning Library">
3903         <fields oils_persist:primary="id">
3904             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3905             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3906             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3907             <field reporter:label="Circulation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
3908             <field reporter:label="User Home Library" name="home_ou" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3909             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3910             <field reporter:label="Billing Type" name="billing_type" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
3911             <field reporter:label="Total Billed" name="billed" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
3912         </fields>
3913         <links>
3914             <link field="id" reltype="has_a" key="id" map="" class="circ"/>
3915             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3916             <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
3917         </links>
3918     </class>
3919
3920     <class id="rmobbhol" controller="open-ils.reporter-store" oils_obj:fieldmapper="reporter::money::open_balance_by_usr_home_and_owning_lib" oils_persist:tablename="money.open_balance_by_usr_home_and_owning_lib" reporter:core="true" reporter:label="Open Circulation Balance by User Home Library and Owning Library">
3921         <fields oils_persist:primary="home_ou">
3922             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
3923             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
3924             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
3925             <field reporter:label="User Home Library" name="home_ou" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3926             <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
3927             <field reporter:label="Billing Types" name="billing_types" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
3928             <field reporter:label="Balance" name="balance" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="money"/>
3929         </fields>
3930         <links>
3931             <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
3932             <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
3933         </links>
3934     </class>
3935
3936
3937         <!-- ********************************************************************************************************************* -->
3938
3939 </IDL>