e54f189c00113662f29d5a4c4d1f39ee70312643
[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="Matched Attribute" name="matched_attr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
254                         <field reporter:label="Evergreen Record" name="eg_record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
255                         <field reporter:label="Field Type" name="field_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
256                 </fields>
257                 <links>
258                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
259                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
260                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
261                 </links>
262                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
263                         <actions>
264                                 <create permission="CREATE_BIB_IMPORT_QUEUE" global_required="true"/>
265                                 <retrieve permission="CREATE_BIB_IMPORT_QUEUE|UPDATE_BIB_IMPORT_QUEUE|DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
266                                 <update permission="UPDATE_BIB_IMPORT_QUEUE" global_required="true"/>
267                                 <delete permission="DELETE_BIB_IMPORT_QUEUE" global_required="true"/>
268                         </actions>
269                 </permacrud>
270         </class>
271
272         <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">
273                 <fields oils_persist:primary="id" oils_persist:sequence="vandelay.queue_id_seq">
274                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
275                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
276                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
277                         <field reporter:label="Queue ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
278                         <field reporter:label="Owner" name="owner" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
279                         <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
280                         <field reporter:label="Complete" name="complete" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
281                         <field reporter:label="Type" name="queue_type" oils_obj:array_position="7" 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="Matched Attribute" name="matched_attr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
385                         <field reporter:label="Evergreen Record" name="eg_record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
386                 </fields>
387                 <links>
388                         <link field="queued_record" reltype="has_a" key="id" map="" class="vqbr"/>
389                         <link field="eg_record" reltype="has_a" key="id" map="" class="bre"/>
390                         <link field="matched_attr" reltype="has_a" key="id" map="" class="vqbra"/>
391                 </links>
392                 <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
393                         <actions>
394                                 <create permission="CREATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
395                                 <retrieve permission="CREATE_AUTHORITY_IMPORT_QUEUE|UPDATE_AUTHORITY_IMPORT_QUEUE|DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
396                                 <update permission="UPDATE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
397                                 <delete permission="DELETE_AUTHORITY_IMPORT_QUEUE" global_required="true"/>
398                         </actions>
399                 </permacrud>
400         </class>
401
402
403         <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">
404                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_org_unit_opt_in_id_seq">
405                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
406                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
407                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
408                         <field reporter:label="Opt-in ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
409                         <field reporter:label="Workstation" name="opt_in_ws" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
410                         <field reporter:label="Staff Member" name="staff" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
411                         <field reporter:label="User" name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
412                         <field reporter:label="Allowed Org Unit" name="org_unit" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
413                         <field reporter:label="Opt-in Date/Time" name="opt_in_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
414                 </fields>
415                 <links>
416                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
417                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
418                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
419                         <link field="opt_in_ws" reltype="has_a" key="id" map="" class="aws"/>
420                 </links>
421         </class>
422
423     <class id="czs" controller="open-ils.cstore" oils_obj:fieldmapper="config::z3950_source" oils_persist:tablename="config.z3950_source" reporter:label="Z39.50 Source">
424         <fields oils_persist:primary="name">
425             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
426             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
427             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
428             <field reporter:label="Z39.50 Source" name="name" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
429             <field reporter:label="Label" name="label" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
430             <field reporter:label="Host" name="host" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
431             <field reporter:label="Port" name="port" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="int"/>
432             <field reporter:label="DB" name="db" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
433             <field reporter:label="Record Format" name="record_format" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
434             <field reporter:label="Transmission Format" name="transmission_format" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
435             <field reporter:label="Auth" name="auth" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="bool"/>
436             <field reporter:label="Attrs" name="attrs" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="link"/>
437         </fields>
438         <links>
439             <link field="attrs" reltype="has_many" key="source" map="" class="cza"/>
440         </links>
441     </class>
442
443     <class id="cza" controller="open-ils.cstore" oils_obj:fieldmapper="config::z3950_attr" oils_persist:tablename="config.z3950_attr" reporter:label="Z39.50 Attribute">
444         <fields oils_persist:primary="id" oils_persist:sequence="config.z3950_attr_id_seq">
445             <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
446             <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
447             <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
448             <field reporter:label="Z39.50 Attr ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
449             <field reporter:label="Z39.50 Source" name="source" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
450             <field reporter:label="Name" name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
451             <field reporter:label="Label" name="label" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
452             <field reporter:label="Code" name="code" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="int"/>
453             <field reporter:label="Format" name="format" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="int"/>
454             <field reporter:label="Truncation" name="truncation" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="int"/>
455         </fields>
456         <links>
457             <link field="source" reltype="has_a" key="name" map="" class="czs"/>
458         </links>
459     </class>
460
461         <class id="aws" controller="open-ils.cstore" oils_obj:fieldmapper="actor::workstation" oils_persist:tablename="actor.workstation" reporter:label="Workstation">
462                 <fields oils_persist:primary="id" oils_persist:sequence="actor.workstation_id_seq">
463                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
464                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
465                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
466                         <field reporter:label="Workstation ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
467                         <field reporter:label="Workstation Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
468                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
469                 </fields>
470                 <links>
471                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
472                 </links>
473         </class>
474
475         <class id="ccm" controller="open-ils.cstore" oils_obj:fieldmapper="config::circ_modifier" oils_persist:tablename="config.circ_modifier" reporter:label="Circulation Modifier">
476                 <fields oils_persist:primary="code">
477                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
478                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
479                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
480                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
481                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
482                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
483                         <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"/>
484                         <field reporter:label="Magnetic Media" name="magnetic_media" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
485                 </fields>
486                 <links/>
487         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
488             <actions>
489                 <create permission="CREATE_CIRC_MOD" context_field="parent_ou"/>
490                 <retrieve/>
491                 <update permission="UPDATE_CIRC_MOD" context_field="parent_ou"/>
492                 <delete permission="DELETE_CIRC_MOD" context_field="parent_ou"/>
493             </actions>
494         </permacrud>
495         </class>
496
497         <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">
498                 <fields oils_persist:primary="code">
499                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
500                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
501                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
502                         <field reporter:label="Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
503                         <field reporter:label="Format" name="value" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
504                 </fields>
505                 <links/>
506         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
507             <actions>
508                 <create permission="CREATE_MARC_CODE" global_required="true"/>
509                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
510                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
511                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
512             </actions>
513         </permacrud>
514         </class>
515
516         <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">
517                 <fields oils_persist:primary="id" oils_persist:sequence="config.hold_matrix_matchpoint_id_seq">
518                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
519                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
520                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
521                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
522                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
523                         <field reporter:label="User Home Library" name="user_home_ou" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
524                         <field reporter:label="Request Library" name="request_ou" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
525                         <field reporter:label="Pickup Library" name="pickup_ou" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
526                         <field reporter:label="Owning Library" name="item_owning_ou" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
527                         <field reporter:label="Item Circ Library" name="item_circ_ou" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
528                         <field reporter:label="User Permission Group" name="usr_grp" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
529                         <field reporter:label="Requestor Permission Group" name="requestor_grp" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
530                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
531                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
532                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
533                         <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"/>
534                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
535                 </fields>
536                 <links>
537                         <link field="user_home_ou" reltype="has_a" key="id" map="" class="aou"/>
538                         <link field="request_ou" reltype="has_a" key="id" map="" class="aou"/>
539                         <link field="pickup_ou" reltype="has_a" key="id" map="" class="aou"/>
540                         <link field="item_owning_ou" reltype="has_a" key="id" map="" class="aou"/>
541                         <link field="item_circ_ou" reltype="has_a" key="id" map="" class="aou"/>
542                         <link field="usr_grp" reltype="has_a" key="id" map="" class="pgt"/>
543                         <link field="requestor_grp" reltype="has_a" key="id" map="" class="pgt"/>
544                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
545                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
546                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
547                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
548                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
549                 </links>
550         </class>
551
552         <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">
553                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_matchpoint_id_seq">
554                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
555                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
556                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
557                         <field reporter:label="Matchpoint ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
558                         <field reporter:label="Active?" name="active" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
559                         <field reporter:label="Org Unit" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
560                         <field reporter:label="Permission Group" name="grp" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
561                         <field reporter:label="Circulation Modifier" name="circ_modifier" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
562                         <field reporter:label="MARC Type" name="marc_type" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
563                         <field reporter:label="MARC Form" name="marc_form" oils_obj:array_position="9" oils_persist:virtual="false" oils_persist:primitive="string" reporter:datatype="link"/>
564                         <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"/>
565                         <field reporter:label="Reference?" name="ref_flag" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
566                         <field reporter:label="User Age: Lower Bound" name="usr_age_lower_bound" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
567                         <field reporter:label="User Age: Upper Bound" name="usr_age_upper_bound" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
568                 </fields>
569                 <links>
570                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
571                         <link field="grp" reltype="has_a" key="id" map="" class="pgt"/>
572                         <link field="circ_modifier" reltype="has_a" key="id" map="" class="ccm"/>
573                         <link field="marc_type" reltype="has_a" key="id" map="" class="ccm"/>
574                         <link field="marc_type" reltype="has_a" key="code" map="" class="citm"/>
575                         <link field="marc_form" reltype="has_a" key="code" map="" class="cifm"/>
576                         <link field="marc_vr_format" reltype="has_a" key="code" map="" class="cvrfm"/>
577                 </links>
578         </class>
579
580         <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">
581                 <fields oils_persist:primary="matchpoint">
582                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
583                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
584                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
585                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
586                         <field reporter:label="Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
587                         <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"/>
588                         <field reporter:label="Transit Range" name="transit_range" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
589                         <field reporter:label="Max Holds" name="max_holds" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
590                         <field reporter:label="Max includes Frozen" name="include_frozen_holds" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
591                         <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"/>
592                 </fields>
593                 <links>
594                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
595                         <link field="age_hold_protect_rule" reltype="has_a" key="id" map="" class="crahp"/>
596                 </links>
597         </class>
598
599         <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">
600                 <fields oils_persist:primary="matchpoint">
601                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
602                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
603                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
604                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
605                         <field reporter:label="Circulate?" name="circulate" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
606                         <field reporter:label="Max Items Out" name="max_items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
607                         <field reporter:label="Max Overdue" name="max_overdue" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int"/>
608                         <field reporter:label="Max Fines" name="max_fines" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="money"/>
609                         <field reporter:label="Test Script" name="script_test" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
610                         <field reporter:label="Test Context Location" name="org_unit" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="int"/>
611                 </fields>
612                 <links>
613                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
614                 </links>
615         </class>
616
617         <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">
618                 <fields oils_persist:primary="id" oils_persist:sequence="config.circ_matrix_circ_mod_test_id_seq">
619                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
620                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
621                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
622                         <field reporter:label="Test ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
623                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
624                         <field reporter:label="Items Out" name="items_out" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int"/>
625                         <field reporter:label="Circulation Modifier" name="circ_mod" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
626                 </fields>
627                 <links>
628                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
629                         <link field="circ_mod" reltype="has_a" key="id" map="" class="ccm"/>
630                 </links>
631         </class>
632
633         <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">
634                 <fields oils_persist:primary="matchpoint">
635                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
636                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
637                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
638                         <field reporter:label="Matchpoint ID" name="matchpoint" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id"/>
639                         <field reporter:label="Duration Rule" name="duration_rule" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
640                         <field reporter:label="Recurring Fine Rule" name="recurring_fine_rule" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
641                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
642                 </fields>
643                 <links>
644                         <link field="matchpoint" reltype="has_a" key="id" map="" class="ccmm"/>
645                         <link field="duration_rule" reltype="has_a" key="id" map="" class="crcd"/>
646                         <link field="max_fine_rule" reltype="has_a" key="id" map="" class="crmf"/>
647                         <link field="recurring_fine_rule" reltype="has_a" key="id" map="" class="crrf"/>
648                 </links>
649         </class>
650
651         <class id="cit" controller="open-ils.cstore" oils_obj:fieldmapper="config::identification_type" oils_persist:tablename="config.identification_type" reporter:label="Identification Type">
652                 <fields oils_persist:primary="id" oils_persist:sequence="config.identification_type_id_seq">
653                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
654                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
655                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
656                         <field reporter:label="Identification ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
657                         <field reporter:label="Identification Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
658                 </fields>
659                 <links/>
660         </class>
661
662         <class id="asvq" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_question" oils_persist:tablename="action.survey_question" reporter:label="User Survey Question">
663                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_question_id_seq">
664                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
665                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
666                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
667                         <field reporter:label="Answers" name="answers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
668                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
669                         <field reporter:label="Question ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
670                         <field reporter:label="Question" name="question" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
671                         <field reporter:label="Survey" name="survey" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
672                 </fields>
673                 <links>
674                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
675                         <link field="responses" reltype="has_many" key="question" map="" class="asvr"/>
676                         <link field="answers" reltype="has_many" key="question" map="" class="asva"/>
677                 </links>
678         </class>
679         <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">
680                 <fields oils_persist:primary="id" oils_persist:sequence="">
681                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
682                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
683                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
684                         <field reporter:label="Balance Owed" name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
685                         <field reporter:label="Transaction ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id"/>
686                         <field reporter:label="Last Billing Note" name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
687                         <field reporter:label="Last Billing Timestamp" name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
688                         <field reporter:label="Last Billing Type" name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
689                         <field reporter:label="Last Payment Note" name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
690                         <field reporter:label="Last Payment Timestamp" name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
691                         <field reporter:label="Last Payment Type" name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
692                         <field reporter:label="Total Owed" name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
693                         <field reporter:label="Total Paid" name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
694                         <field reporter:label="Billed User" name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
695                         <field reporter:label="Transaction Finish Time" name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
696                         <field reporter:label="Transaction Start Time" name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
697                         <field reporter:label="Transaction Type" name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
698                 </fields>
699                 <links>
700                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
701                 </links>
702         </class>
703         <class id="aun" controller="open-ils.cstore" oils_obj:fieldmapper="actor::usr_note" oils_persist:tablename="actor.usr_note" reporter:label="User Note">
704                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_note_id_seq">
705                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
706                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
707                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
708                         <field reporter:label="Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
709                         <field reporter:label="Creating Staff" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
710                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
711                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
712                         <field reporter:label="Note Title" name="title" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
713                         <field reporter:label="User" name="usr" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link" />
714                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
715                 </fields>
716                 <links>
717                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
718                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
719                 </links>
720         </class>
721         <class id="aus" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_setting" oils_persist:tablename="actor.usr_setting" reporter:label="User Setting">
722                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_setting_id_seq">
723                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
724                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
725                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
726                         <field reporter:label="Setting ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
727                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
728                         <field reporter:label="User" name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
729                         <field reporter:label="Value" name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
730                 </fields>
731                 <links>
732                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
733                 </links>
734         </class>
735         <class id="mafe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::author_field_entry" oils_persist:tablename="metabib.author_field_entry">
736                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.author_field_entry_id_seq">
737                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
738                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
739                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
740                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
741                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
742                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
743                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
744                 </fields>
745                 <links>
746                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
747                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
748                 </links>
749         </class>
750         <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">
751                 <fields oils_persist:primary="id" oils_persist:sequence="action.in_house_use_id_seq">
752                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
753                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
754                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
755                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
756                         <field reporter:label="Item" name="item" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="int" />
757                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
758                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
759                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
760                 </fields>
761                 <links>
762                         <link field="item" reltype="has_a" key="id" map="" class="acp"/>
763                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
764                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
765                 </links>
766         </class>
767         <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">
768                 <fields oils_persist:primary="id" oils_persist:sequence="action.non_cat_in_house_use_id_seq">
769                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
770                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
771                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
772                         <field reporter:label="Use ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
773                         <field reporter:label="Item Type" name="item_type" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
774                         <field reporter:label="Using Library" name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
775                         <field reporter:label="Recording Staff" name="staff" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
776                         <field reporter:label="Use Date/Time" name="use_time" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
777                 </fields>
778                 <links>
779                         <link field="item_type" reltype="has_a" key="id" map="" class="cnct"/>
780                         <link field="staff" reltype="has_a" key="id" map="" class="au"/>
781                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
782                 </links>
783         </class>
784         <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">
785                 <fields oils_persist:primary="id" oils_persist:sequence="action.transit_copy_id_seq">
786                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
787                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
788                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
789                         <field reporter:label="Pretransit Copy Status" name="copy_status" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
790                         <field reporter:label="Destination" name="dest" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
791                         <field reporter:label="Receive Date/Time" name="dest_recv_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
792                         <field reporter:label="Transit ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id"/>
793                         <field reporter:label="Is Persistent? (unused)" name="persistant_transfer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
794                         <field reporter:label="Previous Hop (unused)" name="prev_hop" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
795                         <field reporter:label="Source" name="source" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
796                         <field reporter:label="Send Date/Time" name="source_send_time" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="timestamp"/>
797                         <field reporter:label="Transited Copy" name="target_copy" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
798                         <field reporter:label="Hold Transit" name="hold_transit_copy" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
799                 </fields>
800                 <links>
801                         <link field="hold_transit_copy" reltype="might_have" key="id" map="" class="ahtc"/>
802                         <link field="source" reltype="has_a" key="id" map="" class="aou"/>
803                         <link field="copy_status" reltype="has_a" key="id" map="" class="ccs"/>
804                         <link field="dest" reltype="has_a" key="id" map="" class="aou"/>
805                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
806                 </links>
807         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
808             <actions>
809                 <create permission="TRANSIT_COPY"/>
810                 <retrieve/>
811                 <update permission="UPDATE_TRANSIT" context_field="dest|source"/>
812                 <delete permission="DELETE_TRANSIT" context_field="dest|source"/>
813             </actions>
814         </permacrud>
815         </class>
816         <class id="asvr" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey_response" oils_persist:tablename="action.survey_response" reporter:label="Survey Response">
817                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_response_id_seq">
818                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
819                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
820                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
821                         <field reporter:label="Answer" name="answer" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
822                         <field reporter:label="Answer Date/Time" name="answer_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
823                         <field reporter:label="Effective Answer Date/Time" name="effective_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
824                         <field reporter:label="Answer ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
825                         <field reporter:label="Question" name="question" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
826                         <field reporter:label="Response Group ID" name="response_group_id" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int" />
827                         <field reporter:label="Survey" name="survey" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
828                         <field reporter:label="Responding User" name="usr" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
829                 </fields>
830                 <links>
831                         <link field="question" reltype="has_a" key="id" map="" class="asvq"/>
832                         <link field="survey" reltype="has_a" key="id" map="" class="asv"/>
833                         <link field="answer" reltype="has_a" key="id" map="" class="asva"/>
834                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
835                 </links>
836         </class>
837         <class id="ccbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::copy_bucket_item" oils_persist:tablename="container.copy_bucket_item">
838                 <fields oils_persist:primary="id" oils_persist:sequence="container.copy_bucket_item_id_seq">
839                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
840                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
841                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
842                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" />
843                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
844                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
845                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
846                 </fields>
847                 <links>
848                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
849                         <link field="bucket" reltype="has_a" key="id" map="" class="ccb"/>
850                 </links>
851         </class>
852         <class id="are" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_entry" oils_persist:tablename="authority.record_entry">
853                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_entry_id_seq">
854                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
855                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
856                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
857                         <field name="active" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
858                         <field name="arn_source" oils_obj:array_position="4" oils_persist:virtual="false" />
859                         <field name="arn_value" oils_obj:array_position="5" oils_persist:virtual="false" />
860                         <field name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
861                         <field name="creator" oils_obj:array_position="7" oils_persist:virtual="false" />
862                         <field name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
863                         <field name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
864                         <field name="editor" oils_obj:array_position="10" oils_persist:virtual="false" />
865                         <field name="id" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="id" />
866                         <field name="last_xact_id" oils_obj:array_position="12" oils_persist:virtual="false" />
867                         <field name="marc" oils_obj:array_position="13" oils_persist:virtual="false" />
868                         <field name="source" oils_obj:array_position="14" oils_persist:virtual="false" />
869                         <field name="fixed_fields" oils_obj:array_position="15" oils_persist:virtual="true" />
870                         <field name="notes" oils_obj:array_position="16" oils_persist:virtual="true" />
871                 </fields>
872                 <links>
873                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
874                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
875                         <link field="notes" reltype="has_many" key="record" map="" class="arn"/>
876                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="ard"/>
877                 </links>
878         </class>
879         <class id="ard" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_descriptor" oils_persist:tablename="authority.rec_descriptor">
880                 <fields oils_persist:primary="id" oils_persist:sequence="authority.rec_descriptor_id_seq">
881                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
882                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
883                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
884                         <field name="char_encoding" oils_obj:array_position="3" oils_persist:virtual="false" />
885                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" />
886                         <field name="record" oils_obj:array_position="5" oils_persist:virtual="false" />
887                         <field name="record_status" oils_obj:array_position="6" oils_persist:virtual="false" />
888                 </fields>
889                 <links>
890                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
891                 </links>
892         </class>
893         <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">
894                 <fields oils_persist:primary="code" oils_persist:sequence="">
895                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
896                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
897                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
898                         <field reporter:label="Language Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
899                         <field reporter:label="Language" name="value" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true"/>
900                 </fields>
901                 <links/>
902         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
903             <actions>
904                 <create permission="CREATE_MARC_CODE" global_required="true"/>
905                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
906                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
907                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
908             </actions>
909         </permacrud>
910         </class>
911         <class id="mccp" controller="open-ils.cstore" oils_obj:fieldmapper="money::credit_card_payment" oils_persist:tablename="money.credit_card_payment">
912                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
913                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
914                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
915                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
916                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" />
917                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
918                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
919                         <field name="approval_code" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
920                         <field name="cash_drawer" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
921                         <field name="cc_number" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
922                         <field name="cc_type" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
923                         <field name="expire_month" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int" />
924                         <field name="expire_year" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="int" />
925                         <field name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
926                         <field name="note" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
927                         <field name="payment_ts" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp"/>
928                         <field name="xact" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
929                         <field name="payment_type" oils_obj:array_position="16" oils_persist:virtual="true" reporter:datatype="text"/>
930                         <field name="payment" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
931                 </fields>
932                 <links>
933                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
934                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
935                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
936                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
937                 </links>
938         </class>
939         <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">
940                 <fields oils_persist:primary="name">
941                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
942                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
943                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
944                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
945                         <field reporter:label="Name" name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" />
946                         <field reporter:label="Namespace URI" name="namespace_uri" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
947                         <field reporter:label="Namespace Prefix" name="prefix" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
948                         <field reporter:label="XSLT" name="xslt" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text" />
949                 </fields>
950                 <links/>
951         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
952             <actions>
953                 <create permission="CREATE_XML_TRANSFORM" global_required="true"/>
954                 <retrieve/>
955                 <update permission="UPDATE_XML_TRANSFORM" global_required="true"/>
956                 <delete permission="DELETE_XML_TRANSFORM" global_required="true"/>
957             </actions>
958         </permacrud>
959         </class>
960         <class id="cmf" controller="open-ils.cstore" oils_obj:fieldmapper="config::metabib_field" oils_persist:tablename="config.metabib_field">
961                 <fields oils_persist:primary="id" oils_persist:sequence="config.metabib_field_id_seq">
962                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
963                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
964                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
965                         <field name="field_class" oils_obj:array_position="3" oils_persist:virtual="false" />
966                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
967                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
968                         <field name="xpath" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
969                         <field name="weight" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int" />
970                         <field name="format" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
971                         <field name="search_field" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool" />
972                         <field name="facet_field" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="bool" />
973                 </fields>
974                 <links/>
975         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
976             <actions>
977                 <create permission="CREATE_METABIB_FIELD" global_required="true"/>
978                 <retrieve/>
979                 <update permission="UPDATE_METABIB_FIELD" global_required="true"/>
980                 <delete permission="DELETE_METABIB_FIELD" global_required="true"/>
981             </actions>
982         </permacrud>
983         </class>
984         <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">
985                 <fields oils_persist:primary="code" oils_persist:sequence="">
986                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
987                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
988                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
989                         <field reporter:label="Audience Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
990                         <field reporter:label="Description" name="description" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text" oils_persist:i18n="true" />
991                         <field reporter:label="Audience" name="value" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
992                 </fields>
993                 <links/>
994         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
995             <actions>
996                 <create permission="CREATE_MARC_CODE" global_required="true"/>
997                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
998                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
999                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1000             </actions>
1001         </permacrud>
1002         </class>
1003         <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">
1004                 <fields oils_persist:primary="code" oils_persist:sequence="">
1005                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1006                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1007                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1008                         <field reporter:label="Item Form Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="value" reporter:datatype="text"/>
1009                         <field reporter:label="Item Form" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1010                 </fields>
1011                 <links/>
1012         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1013             <actions>
1014                 <create permission="CREATE_MARC_CODE" global_required="true"/>
1015                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
1016                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
1017                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
1018             </actions>
1019         </permacrud>
1020         </class>
1021         <class id="acn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number" oils_persist:tablename="asset.call_number" reporter:label="Call Number/Volume">
1022                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_id_seq">
1023                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1024                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1025                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1026                         <field reporter:label="Copies" name="copies" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1027                         <field reporter:label="Create Date/Time" name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1028                         <field reporter:label="Creating User" name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1029                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
1030                         <field reporter:label="Last Edit Date/Time" name="edit_date" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1031                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
1032                         <field reporter:label="Call Number/Volume ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
1033                         <field reporter:label="Call Number Label" name="label" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
1034                         <field reporter:label="Owning Library" name="owning_lib" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1035                         <field reporter:label="Bib Record" name="record" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
1036                         <field reporter:label="Notes" name="notes" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
1037                 </fields>
1038                 <links>
1039                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1040                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1041                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1042                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1043                         <link field="notes" reltype="has_many" key="call_number" map="" class="acnn"/>
1044                         <link field="copies" reltype="has_many" key="call_number" map="" class="acp"/>
1045                 </links>
1046         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1047             <actions>
1048                 <create permission="CREATE_VOLUME" context_field="owning_lib"/>
1049                 <retrieve/>
1050                 <update permission="UPDATE_VOLUME" context_field="owning_lib"/>
1051                 <delete permission="DELETE_VOLUME" context_field="owning_lib"/>
1052             </actions>
1053         </permacrud>
1054         </class>
1055         <class id="cst" controller="open-ils.cstore" oils_obj:fieldmapper="config::standing" oils_persist:tablename="config.standing">
1056                 <fields oils_persist:primary="id" oils_persist:sequence="config.standing_id_seq">
1057                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1058                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1059                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1060                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1061                         <field name="value" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:i18n="true" />
1062                 </fields>
1063                 <links/>
1064         </class>
1065         <class id="mous" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_user_summary" oils_persist:tablename="money.open_usr_summary">
1066                 <fields oils_persist:primary="usr" oils_persist:sequence="">
1067                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1068                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1069                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1070                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money" />
1071                         <field name="total_owed" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1072                         <field name="total_paid" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1073                         <field name="usr" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1074                 </fields>
1075                 <links/>
1076         </class>
1077         <class id="mct" controller="open-ils.cstore" oils_obj:fieldmapper="money::collections_tracker" oils_persist:tablename="money.collections_tracker">
1078                 <fields oils_persist:primary="id" oils_persist:sequence="money.collections_tracker_id_seq">
1079                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1080                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1081                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1082                         <field name="collector" oils_obj:array_position="3" oils_persist:virtual="false" />
1083                         <field name="enter_time" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1084                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1085                         <field name="location" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1086                         <field name="usr" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1087                 </fields>
1088                 <links>
1089                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1090                         <link field="collector" reltype="has_a" key="id" map="" class="au"/>
1091                         <link field="location" reltype="has_a" key="id" map="" class="aou"/>
1092                 </links>
1093         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1094             <actions>
1095                 <create permission="money.collections_tracker.create" context_field="location"/>
1096                 <retrieve/>
1097                 <delete permission="money.collections_tracker.create" context_field="location"/>
1098             </actions>
1099         </permacrud>
1100         </class>
1101         <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">
1102                 <fields oils_persist:primary="id" oils_persist:sequence="biblio.record_entry_id_seq">
1103                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1104                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1105                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1106                         <field reporter:label="Call Numbers" name="call_numbers" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1107                         <field reporter:label="Fixed Field Entry" name="fixed_fields" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
1108                         <field reporter:label="Is Active?" name="active" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="bool"/>
1109                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1110                         <field reporter:label="Record Creator" name="creator" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1111                         <field reporter:label="Is Deleted?" name="deleted" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1112                         <field reporter:label="Last Edit Data/Time" name="edit_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1113                         <field reporter:label="Last Editing User" name="editor" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1114                         <field reporter:label="Fingerprint" name="fingerprint" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1115                         <field reporter:label="Record ID" name="id" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="id" />
1116                         <field reporter:label="Last Transaction ID" name="last_xact_id" oils_obj:array_position="13" oils_persist:virtual="false"  reporter:datatype="text"/>
1117                         <field reporter:label="MARC21Slim" name="marc" oils_obj:array_position="14" oils_persist:virtual="false"  reporter:datatype="text"/>
1118                         <field reporter:label="Overall Quality" name="quality" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="int" />
1119                         <field reporter:label="Record Source" name="source" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="link"/>
1120                         <field reporter:label="TCN Source" name="tcn_source" oils_obj:array_position="17" oils_persist:virtual="false"  reporter:datatype="text"/>
1121                         <field reporter:label="TCN Value" name="tcn_value" oils_obj:array_position="18" oils_persist:virtual="false"  reporter:datatype="text"/>
1122                         <field reporter:label="Metarecord" name="metarecord" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
1123                         <field reporter:label="Language Code" name="language" oils_obj:array_position="20" oils_persist:virtual="true" reporter:datatype="link"/>
1124                         <field reporter:label="Non-MARC Record Notes" name="notes" oils_obj:array_position="21" oils_persist:virtual="true" reporter:datatype="link"/>
1125                         <field reporter:label="Indexed Keyword Field Entries" name="keyword_field_entries" oils_obj:array_position="22" oils_persist:virtual="true" reporter:datatype="link"/>
1126                         <field reporter:label="Indexed Subject Field Entries" name="subject_field_entries" oils_obj:array_position="23" oils_persist:virtual="true" reporter:datatype="link"/>
1127                         <field reporter:label="Indexed Title Field Entries" name="title_field_entries" oils_obj:array_position="24" oils_persist:virtual="true" reporter:datatype="link"/>
1128                         <field reporter:label="Indexed Author Field Entries" name="author_field_entries" oils_obj:array_position="25" oils_persist:virtual="true" reporter:datatype="link"/>
1129                         <field reporter:label="Indexed Series Field Entries" name="series_field_entries" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="link"/>
1130                         <field reporter:label="Flattened MARC Fields " name="full_record_entries" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="link"/>
1131                         <field reporter:label="Simple Record Extracts " name="simple_record" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1132                 </fields>
1133                 <links>
1134                         <link field="editor" reltype="has_a" key="id" map="" class="au"/>
1135                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1136                         <link field="simple_record" reltype="might_have" key="id" map="" class="rmsr"/>
1137                         <link field="metarecord" reltype="might_have" key="source" map="metarecord" class="mmrsm"/>
1138                         <link field="call_numbers" reltype="has_many" key="record" map="" class="acn"/>
1139                         <link field="keyword_field_entries" reltype="has_many" key="source" map="" class="mkfe"/>
1140                         <link field="fixed_fields" reltype="might_have" key="record" map="" class="mrd"/>
1141                         <link field="language" reltype="might_have" key="record" map="item_lang" class="mrd"/>
1142                         <link field="subject_field_entries" reltype="has_many" key="source" map="" class="msfe"/>
1143                         <link field="title_field_entries" reltype="has_many" key="source" map="" class="mtfe"/>
1144                         <link field="notes" reltype="has_many" key="record" map="" class="bren"/>
1145                         <link field="author_field_entries" reltype="has_many" key="source" map="" class="mafe"/>
1146                         <link field="series_field_entries" reltype="has_many" key="source" map="" class="msefe"/>
1147                         <link field="full_record_entries" reltype="has_many" key="record" map="" class="mfr"/>
1148                 </links>
1149         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1150             <actions>
1151                 <create permission="CREATE_MARC|IMPORT_MARC" global_required="true"/>
1152                 <retrieve/>
1153                 <update permission="UPDATE_MARC" global_required="true"/>
1154             </actions>
1155         </permacrud>
1156         </class>
1157         <class id="aouhoo" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::hours_of_operation" oils_persist:tablename="actor.hours_of_operation">
1158                 <fields oils_persist:primary="id" oils_persist:sequence="">
1159                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1160                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1161                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1162                         <field name="dow_0_close" oils_obj:array_position="3" oils_persist:virtual="false" />
1163                         <field name="dow_0_open" oils_obj:array_position="4" oils_persist:virtual="false" />
1164                         <field name="dow_1_close" oils_obj:array_position="5" oils_persist:virtual="false" />
1165                         <field name="dow_1_open" oils_obj:array_position="6" oils_persist:virtual="false" />
1166                         <field name="dow_2_close" oils_obj:array_position="7" oils_persist:virtual="false" />
1167                         <field name="dow_2_open" oils_obj:array_position="8" oils_persist:virtual="false" />
1168                         <field name="dow_3_close" oils_obj:array_position="9" oils_persist:virtual="false" />
1169                         <field name="dow_3_open" oils_obj:array_position="10" oils_persist:virtual="false" />
1170                         <field name="dow_4_close" oils_obj:array_position="11" oils_persist:virtual="false" />
1171                         <field name="dow_4_open" oils_obj:array_position="12" oils_persist:virtual="false" />
1172                         <field name="dow_5_close" oils_obj:array_position="13" oils_persist:virtual="false" />
1173                         <field name="dow_5_open" oils_obj:array_position="14" oils_persist:virtual="false" />
1174                         <field name="dow_6_close" oils_obj:array_position="15" oils_persist:virtual="false" />
1175                         <field name="dow_6_open" oils_obj:array_position="16" oils_persist:virtual="false" />
1176                         <field name="id" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="id" />
1177                         <field name="org_unit" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="org_unit"/>
1178                 </fields>
1179                 <links>
1180                         <link field="org_unit" reltype="might_have" key="id" map="" class="aou"/>
1181                 </links>
1182         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1183             <actions>
1184                 <create permission="CREATE_HOURS_OF_OPERATION" context_field="org_unit"/>
1185                 <retrieve/>
1186                 <update permission="UPDATE_HOURS_OF_OPERATION" context_field="org_unit"/>
1187                 <delete permission="DELETE_HOURS_OF_OPERATION" context_field="org_unit"/>
1188             </actions>
1189         </permacrud>
1190         </class>
1191         <class id="aoucd" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit::closed_date" oils_persist:tablename="actor.org_unit_closed">
1192                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_closed_id_seq">
1193                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1194                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1195                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1196                         <field name="close_end" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp" />
1197                         <field name="close_start" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp" />
1198                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1199                         <field name="org_unit" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1200                         <field name="reason" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
1201                 </fields>
1202                 <links>
1203                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1204                 </links>
1205         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1206             <actions>
1207                 <create permission="CREATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1208                 <retrieve/>
1209                 <update permission="UPDATE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1210                 <delete permission="DELETE_ORG_UNIT_CLOSING" context_field="org_unit"/>
1211             </actions>
1212         </permacrud>
1213         </class>
1214         <class id="crcd" controller="open-ils.cstore" oils_obj:fieldmapper="config::rules::circ_duration" oils_persist:tablename="config.rule_circ_duration">
1215                 <fields oils_persist:primary="id" oils_persist:sequence="config.rule_circ_duration_id_seq">
1216                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1217                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1218                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1219                         <field name="extended" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="interval"/>
1220                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1221                         <field name="max_renewals" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="int" />
1222                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
1223                         <field name="normal" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="interval"/>
1224                         <field name="shrt" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="interval"/>
1225                 </fields>
1226                 <links>
1227                 </links>
1228         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1229             <actions>
1230                 <create permission="CREATE_CIRC_DURATION" global_required="true"/>
1231                 <retrieve/>
1232                 <update permission="UPDATE_CIRC_DURATION" global_required="true"/>
1233                 <delete permission="DELETE_CIRC_DURATION" global_required="true"/>
1234             </actions>
1235         </permacrud>
1236         </class>
1237         <class id="mobts" controller="open-ils.cstore" oils_obj:fieldmapper="money::open_billable_transaction_summary" oils_persist:tablename="money.open_billable_xact_summary">
1238                 <fields oils_persist:primary="id" oils_persist:sequence="">
1239                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1240                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1241                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1242                         <field name="balance_owed" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="money"/>
1243                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1244                         <field name="last_billing_note" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
1245                         <field name="last_billing_ts" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1246                         <field name="last_billing_type" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="text"/>
1247                         <field name="last_payment_note" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1248                         <field name="last_payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1249                         <field name="last_payment_type" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="text"/>
1250                         <field name="total_owed" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="money"/>
1251                         <field name="total_paid" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="money"/>
1252                         <field name="usr" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="link"/>
1253                         <field name="xact_finish" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="timestamp" />
1254                         <field name="xact_start" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="timestamp" />
1255                         <field name="xact_type" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="text"/>
1256                         <field name="xact" oils_obj:array_position="17" oils_persist:virtual="true" reporter:datatype="link"/>
1257                         <field name="grocery" oils_obj:array_position="18" oils_persist:virtual="true" reporter:datatype="link"/>
1258                         <field name="circulation" oils_obj:array_position="19" oils_persist:virtual="true" reporter:datatype="link"/>
1259                         <field name="billing_location" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
1260                 </fields>
1261                 <links>
1262                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1263                         <link field="xact" reltype="might_have" key="id" map="" class="mbt"/>
1264                         <link field="circulation" reltype="might_have" key="id" map="" class="circ"/>
1265                         <link field="grocery" reltype="might_have" key="id" map="" class="mg"/>
1266                         <link field="billing_location" reltype="has_a" key="id" map="" class="aou"/>
1267                 </links>
1268         </class>
1269         <class id="au" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user" oils_persist:tablename="actor.usr" reporter:core="true" reporter:label="ILS User">
1270                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_id_seq">
1271                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1272                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1273                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1274                         <field reporter:label="All Addresses" name="addresses" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1275                         <field reporter:label="All Library Cards" name="cards" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
1276                         <field reporter:label="All Circulations" name="checkouts" oils_obj:array_position="5" oils_persist:virtual="true" reporter:datatype="link"/>
1277                         <field reporter:label="All Hold Requests" name="hold_requests" oils_obj:array_position="6" oils_persist:virtual="true" reporter:datatype="link"/>
1278                         <field reporter:label="All Permissions" name="permissions" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
1279                         <field reporter:label="All User Settings" name="settings" oils_obj:array_position="8" oils_persist:virtual="true" reporter:datatype="link"/>
1280                         <field reporter:label="Standing Penalties" name="standing_penalties" oils_obj:array_position="9" oils_persist:virtual="true" reporter:datatype="link"/>
1281                         <field reporter:label="Statistical Category Entries" name="stat_cat_entries" oils_obj:array_position="10" oils_persist:virtual="true" reporter:datatype="link"/>
1282                         <field reporter:label="Survey Responses" name="survey_responses" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1283                         <field name="ws_ou" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
1284                         <field name="wsid" oils_obj:array_position="13" oils_persist:virtual="true" reporter:datatype="link"/>
1285                         <field reporter:label="Active" name="active" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1286                         <field reporter:label="Alert Message" name="alert_message" oils_obj:array_position="15" oils_persist:virtual="false"  reporter:datatype="text"/>
1287                         <field reporter:label="Barred" name="barred" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1288                         <field reporter:label="Physical Address" name="billing_address" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="link"/>
1289                         <field reporter:label="Current Library Card" name="card" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="link"/>
1290                         <field reporter:label="Claims-returned Count" name="claims_returned_count" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="int" />
1291                         <field reporter:label="Record Creation Date/Time" name="create_date" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1292                         <field reporter:label="User Credit Balance" name="credit_forward_balance" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="money" />
1293                         <field reporter:label="Daytime Phone" name="day_phone" oils_obj:array_position="22" oils_persist:virtual="false"  reporter:datatype="text"/>
1294                         <field reporter:label="Date of Birth" name="dob" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1295                         <field reporter:label="Email Address" name="email" oils_obj:array_position="24" oils_persist:virtual="false"  reporter:datatype="text"/>
1296                         <field reporter:label="Evening Phone" name="evening_phone" oils_obj:array_position="25" oils_persist:virtual="false"  reporter:datatype="text"/>
1297                         <field reporter:label="Privilege Expiration Date" name="expire_date" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1298                         <field reporter:label="Last Name" name="family_name" oils_obj:array_position="27" oils_persist:virtual="false"  reporter:datatype="text"/>
1299                         <field reporter:label="First Name" name="first_given_name" oils_obj:array_position="28" oils_persist:virtual="false"  reporter:datatype="text"/>
1300                         <field reporter:label="Home Library" name="home_ou" oils_obj:array_position="29" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1301                         <field reporter:label="User ID" name="id" oils_obj:array_position="30" oils_persist:virtual="false" reporter:datatype="id" />
1302                         <field reporter:label="Primary Identification Type" name="ident_type" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="link"/>
1303                         <field reporter:label="Secondary Identification Type" name="ident_type2" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="link"/>
1304                         <field reporter:label="Primary Identification" name="ident_value" oils_obj:array_position="33" oils_persist:virtual="false"  reporter:datatype="text"/>
1305                         <field reporter:label="Secondary Identification" name="ident_value2" oils_obj:array_position="34" oils_persist:virtual="false"  reporter:datatype="text"/>
1306                         <field name="last_xact_id" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="text"/>
1307                         <field reporter:label="Mailing Address" name="mailing_address" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="link"/>
1308                         <field reporter:label="Is Group Lead Account" name="master_account" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="bool"/>
1309                         <field reporter:label="Internet Access Level" name="net_access_level" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1310                         <field reporter:label="Other Phone" name="other_phone" oils_obj:array_position="39" oils_persist:virtual="false"  reporter:datatype="text"/>
1311                         <field reporter:label="Password (obfuscated)" name="passwd" oils_obj:array_position="40" oils_persist:virtual="false"  reporter:datatype="text"/>
1312                         <field reporter:label="Photo URL" name="photo_url" oils_obj:array_position="41" oils_persist:virtual="false"  reporter:datatype="text"/>
1313                         <field reporter:label="Prefix" name="prefix" oils_obj:array_position="42" oils_persist:virtual="false"  reporter:datatype="text"/>
1314                         <field reporter:label="Main (Profile) Permission Group" name="profile" oils_obj:array_position="43" oils_persist:virtual="false" reporter:datatype="link"/>
1315                         <field reporter:label="Middle Name" name="second_given_name" oils_obj:array_position="44" oils_persist:virtual="false"  reporter:datatype="text"/>
1316                         <field reporter:label="Standing (unused)" name="standing" oils_obj:array_position="45" oils_persist:virtual="false" reporter:datatype="link"/>
1317                         <field reporter:label="Suffix/Title" name="suffix" oils_obj:array_position="46" oils_persist:virtual="false"  reporter:datatype="text"/>
1318                         <field reporter:label="Is Super User" name="super_user" oils_obj:array_position="47" oils_persist:virtual="false" reporter:datatype="bool"/>
1319                         <field reporter:label="Family Linkage or other Group" name="usrgroup" oils_obj:array_position="48" oils_persist:virtual="false" reporter:datatype="int"/>
1320                         <field reporter:label="OPAC/Staff Client User Name" name="usrname" oils_obj:array_position="49" oils_persist:virtual="false"  reporter:datatype="text"/>
1321                         <field reporter:label="Additional Permission Groups" name="groups" oils_obj:array_position="50" oils_persist:virtual="true" reporter:datatype="link"/>
1322                         <field reporter:label="Is Deleted" name="deleted" oils_obj:array_position="51" oils_persist:virtual="false" reporter:datatype="bool"/>
1323                         <field reporter:label="User Notes" name="notes" oils_obj:array_position="52" oils_persist:virtual="true" reporter:datatype="link"/>
1324                         <field reporter:label="Demographic Info" name="demographic" oils_obj:array_position="53" oils_persist:virtual="true" reporter:datatype="link"/>
1325                         <field reporter:label="Billable Transactions" name="billable_transactions" oils_obj:array_position="54" oils_persist:virtual="true" reporter:datatype="link"/>
1326                         <field reporter:label="Checkins" name="checkins" oils_obj:array_position="55" oils_persist:virtual="true" reporter:datatype="link"/>
1327                         <field reporter:label="Circulations Performed as Staff" name="performed_circulations" oils_obj:array_position="56" oils_persist:virtual="true" reporter:datatype="link"/>
1328                 </fields>
1329                 <links>
1330                         <link field="demographic" reltype="might_have" key="id" map="" class="rud"/>
1331                         <link field="net_access_level" reltype="has_a" key="id" map="" class="cnal"/>
1332                         <link field="profile" reltype="has_a" key="id" map="" class="pgt"/>
1333                         <link field="ident_type" reltype="has_a" key="id" map="" class="cit"/>
1334                         <link field="billing_address" reltype="has_a" key="id" map="" class="aua"/>
1335                         <link field="mailing_address" reltype="has_a" key="id" map="" class="aua"/>
1336                         <link field="home_ou" reltype="has_a" key="id" map="" class="aou"/>
1337                         <link field="standing" reltype="has_a" key="id" map="" class="cst"/>
1338                         <link field="card" reltype="has_a" key="id" map="" class="ac"/>
1339                         <link field="ident_type2" reltype="has_a" key="id" map="" class="cit"/>
1340                         <link field="stat_cat_entries" reltype="has_many" key="target_usr" map="" class="actscecm"/>
1341                         <link field="groups" reltype="has_many" key="usr" map="grp" class="pugm"/>
1342                         <link field="usrgroup" reltype="has_many" key="usrgroup" map="" class="au"/>
1343                         <link field="checkouts" reltype="has_many" key="usr" map="" class="circ"/>
1344                         <link field="hold_requests" reltype="has_many" key="usr" map="" class="circ"/>
1345                         <link field="permissions" reltype="has_many" key="usr" map="perm" class="pupm"/>
1346                         <link field="settings" reltype="has_many" key="usr" map="" class="aus"/>
1347                         <link reporter:label="Billable Transactions" field="billable_transactions" reltype="has_many" key="usr" map="" class="mbt"/>
1348                         <link field="standing_penalties" reltype="has_many" key="usr" map="" class="ausp"/>
1349                         <link field="addresses" reltype="has_many" key="usr" map="" class="aua"/>
1350                         <link field="survey_responses" reltype="has_many" key="usr" map="" class="asvr"/>
1351                         <link field="notes" reltype="has_many" key="usr" map="" class="aun"/>
1352                         <link reporter:label="Check-ins Performed as Staff" field="checkins" reltype="has_many" key="checkin_staff" map="" class="circ"/>
1353                         <link field="cards" reltype="has_many" key="usr" map="" class="ac"/>
1354                         <link reporter:label="Circulations Performed as Staff" field="performed_circulations" reltype="has_many" key="circ_staff" map="" class="circ"/>
1355                 </links>
1356         </class>
1357         <class id="aous" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_setting" oils_persist:tablename="actor.org_unit_setting">
1358                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_setting_id_seq">
1359                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1360                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1361                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1362                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" />
1363                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1364                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1365                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1366                 </fields>
1367                 <links>
1368                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
1369                 </links>
1370         </class>
1371         <class id="acpn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_note" oils_persist:tablename="asset.copy_note" reporter:label="Copy Note">
1372                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_note_id_seq">
1373                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1374                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1375                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1376                         <field reporter:label="Note Creation Date/Time" name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1377                         <field reporter:label="Note Creator" name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1378                         <field reporter:label="Note ID" name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1379                         <field reporter:label="Copy" name="owning_copy" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1380                         <field reporter:label="Is OPAC Visible?" name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1381                         <field reporter:label="Note Title" name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1382                         <field reporter:label="Note Content" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1383                 </fields>
1384                 <links>
1385                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1386                         <link field="creator" reltype="has_a" key="id" map="" class="au"/>
1387                 </links>
1388         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1389             <actions>
1390                 <create permission="CREATE_COPY_NOTE">
1391                     <context link="owning_copy" field="circ_lib"/>
1392                 </create>
1393                 <retrieve permission="VIEW_COPY_NOTES">
1394                     <context link="owning_copy" field="circ_lib"/>
1395                 </retrieve>
1396                 <update permission="UPDATE_COPY_NOTE">
1397                     <context link="owning_copy" field="circ_lib"/>
1398                 </update>
1399                 <delete permission="DELETE_COPY_NOTE">
1400                     <context link="owning_copy" field="circ_lib"/>
1401                 </delete>
1402             </actions>
1403         </permacrud>
1404         </class>
1405         <class id="mfr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::full_rec" oils_persist:tablename="metabib.full_rec" reporter:label="Flattened MARC Fields">
1406                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.full_rec_id_seq">
1407                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1408                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1409                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1410                         <field reporter:label="Field ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1411                         <field reporter:label="Indicator 1" name="ind1" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1412                         <field reporter:label="Indicator 2" name="ind2" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1413                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1414                         <field reporter:label="Subfield" name="subfield" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1415                         <field reporter:label="Tag" name="tag" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1416                         <field reporter:label="Normalized Value" name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1417                 </fields>
1418                 <links>
1419                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1420                 </links>
1421         </class>
1422         <class id="mmr" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::metarecord" oils_persist:tablename="metabib.metarecord">
1423                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_id_seq">
1424                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1425                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1426                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1427                         <field name="fingerprint" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1428                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1429                         <field name="master_record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1430                         <field name="mods" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1431                         <field name="source_records" oils_obj:array_position="7" oils_persist:virtual="true" reporter:datatype="link"/>
1432                 </fields>
1433                 <links>
1434                         <link field="master_record" reltype="has_a" key="id" map="" class="bre"/>
1435                         <link field="source_records" reltype="has_many" key="metarecord" map="source" class="mmrsm"/>
1436                 </links>
1437         </class>
1438         <class id="cnal" controller="open-ils.cstore" oils_obj:fieldmapper="config::net_access_level" oils_persist:tablename="config.net_access_level">
1439                 <fields oils_persist:primary="id" oils_persist:sequence="config.net_access_level_id_seq">
1440                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1441                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1442                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1443                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1444                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1445                 </fields>
1446                 <links/>
1447         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1448             <actions>
1449                 <create permission="CREATE_NET_ACCESS_LEVEL" global_required="true"/>
1450                 <retrieve/>
1451                 <update permission="UPDATE_NET_ACCESS_LEVEL" global_required="true"/>
1452                 <delete permission="DELETE_NET_ACCESS_LEVEL" global_required="true"/>
1453             </actions>
1454         </permacrud>
1455         </class>
1456         <class id="ppl" controller="open-ils.cstore" oils_obj:fieldmapper="permission::perm_list" oils_persist:tablename="permission.perm_list">
1457                 <fields oils_persist:primary="id" oils_persist:sequence="permission.perm_list_id_seq">
1458                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1459                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1460                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1461                         <field name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1462                         <field name="description" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1463                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:selector="code" reporter:datatype="id"/>
1464                 </fields>
1465                 <links/>
1466         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1467             <actions>
1468                 <create permission="CREATE_PERM" global_required="true"/>
1469                 <retrieve permission="CREATE_PERM|UPDATE_PERM|DELETE_PERM" global_required="true"/>
1470                 <update permission="UPDATE_PERM" global_required="true"/>
1471                 <delete permission="DELETE_PERM" global_required="true"/>
1472             </actions>
1473         </permacrud>
1474         </class>
1475         <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">
1476                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.metarecord_source_map_id_seq">
1477                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1478                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1479                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1480                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1481                         <field name="metarecord" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1482                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1483                 </fields>
1484                 <links>
1485                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1486                         <link field="metarecord" reltype="has_a" key="id" map="" class="mmr"/>
1487                 </links>
1488         </class>
1489         <class id="mkfe" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::keyword_field_entry" oils_persist:tablename="metabib.keyword_field_entry">
1490                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.keyword_field_entry_id_seq">
1491                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1492                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1493                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1494                         <field name="field" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1495                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1496                         <field name="source" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1497                         <field name="value" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1498                 </fields>
1499                 <links>
1500                         <link field="source" reltype="has_a" key="id" map="" class="bre"/>
1501                         <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
1502                 </links>
1503         </class>
1504         <class id="mcp" controller="open-ils.cstore" oils_obj:fieldmapper="money::cash_payment" oils_persist:tablename="money.cash_payment">
1505                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1506                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1507                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1508                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1509                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1510                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1511                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1512                         <field name="cash_drawer" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1513                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1514                         <field name="note" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1515                         <field name="payment_ts" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1516                         <field name="xact" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="link"/>
1517                         <field name="payment_type" oils_obj:array_position="11" oils_persist:virtual="true"  reporter:datatype="text"/>
1518                         <field name="payment" oils_obj:array_position="12" oils_persist:virtual="true" reporter:datatype="link"/>
1519                 </fields>
1520                 <links>
1521                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1522                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1523                         <link field="cash_drawer" reltype="has_a" key="id" map="" class="aws"/>
1524                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1525                 </links>
1526         </class>
1527         <class id="mfp" controller="open-ils.cstore" oils_obj:fieldmapper="money::forgive_payment" oils_persist:tablename="money.forgive_payment">
1528                 <fields oils_persist:primary="id" oils_persist:sequence="money.payment_id_seq">
1529                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1530                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1531                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1532                         <field name="accepting_usr" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1533                         <field name="amount" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="money" />
1534                         <field name="amount_collected" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="money" />
1535                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1536                         <field name="note" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text"/>
1537                         <field name="payment_ts" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1538                         <field name="xact" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="link"/>
1539                         <field name="payment_type" oils_obj:array_position="10" oils_persist:virtual="true"  reporter:datatype="text"/>
1540                         <field name="payment" oils_obj:array_position="11" oils_persist:virtual="true" reporter:datatype="link"/>
1541                 </fields>
1542                 <links>
1543                         <link field="payment" reltype="might_have" key="id" map="" class="mp"/>
1544                         <link field="accepting_usr" reltype="has_a" key="id" map="" class="au"/>
1545                         <link field="xact" reltype="has_a" key="id" map="" class="mbt"/>
1546                 </links>
1547         </class>
1548         <class id="mrd" controller="open-ils.cstore" oils_obj:fieldmapper="metabib::record_descriptor" oils_persist:tablename="metabib.rec_descriptor" reporter:label="Basic Record Descriptor">
1549                 <fields oils_persist:primary="id" oils_persist:sequence="metabib.rec_descriptor_id_seq">
1550                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1551                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1552                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1553                         <field reporter:label="Audn" name="audience" oils_obj:array_position="3" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1554                         <field reporter:label="BLvl" name="bib_level" oils_obj:array_position="4" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1555                         <field reporter:label="Cat Form" name="cat_form" oils_obj:array_position="5" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1556                         <field reporter:label="Character Encoding" name="char_encoding" oils_obj:array_position="6" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1557                         <field reporter:label="Ctrl" name="control_type" oils_obj:array_position="7" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1558                         <field reporter:label="ELvl" name="enc_level" oils_obj:array_position="8" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1559                         <field reporter:label="Descriptor ID" name="id" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="id" />
1560                         <field reporter:label="Form" name="item_form" oils_obj:array_position="10" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1561                         <field reporter:label="Lang" name="item_lang" oils_obj:array_position="11" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1562                         <field reporter:label="Type" name="item_type" oils_obj:array_position="12" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1563                         <field reporter:label="LitF" name="lit_form" oils_obj:array_position="13" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1564                         <field reporter:label="Pub Status" name="pub_status" oils_obj:array_position="14" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1565                         <field reporter:label="Bib Record Entry" name="record" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1566                         <field reporter:label="TMat" name="type_mat" oils_obj:array_position="16" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1567                         <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"/>
1568                         <field reporter:label="Date1" name="date1" oils_obj:array_position="18" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1569                         <field reporter:label="Date2" name="date2" oils_obj:array_position="19" oils_persist:virtual="false" oils_persist:primitive="string"  reporter:datatype="text"/>
1570                 </fields>
1571                 <links>
1572                         <link field="record" reltype="has_a" key="id" map="" class="bre"/>
1573                         <link field="item_lang" reltype="has_a" key="code" map="" class="clm"/>
1574                         <link field="item_type" reltype="has_a" key="code" map="" class="citm"/>
1575                         <link field="bib_level" reltype="has_a" key="code" map="" class="cblvl"/>
1576                         <link field="item_form" reltype="has_a" key="code" map="" class="cifm"/>
1577                         <link field="audience" reltype="has_a" key="code" map="" class="cam"/>
1578                         <link field="lit_form" reltype="has_a" key="code" map="" class="clfm"/>
1579                 </links>
1580         </class>
1581         <class id="ccs" controller="open-ils.cstore" oils_obj:fieldmapper="config::copy_status" oils_persist:tablename="config.copy_status">
1582                 <fields oils_persist:primary="id" oils_persist:sequence="config.copy_status_id_seq">
1583                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1584                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1585                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1586                         <field name="holdable" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="bool"/>
1587                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1588                         <field name="name" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1589                         <field name="opac_visible" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="bool"/>
1590                 </fields>
1591                 <links/>
1592         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1593             <actions>
1594                 <create permission="CREATE_COPY_STATUS" global_required="true"/>
1595                 <retrieve permission="CREATE_COPY_STATUS|UPDATE_COPY_STATUS|DELETE_COPY_STATUS" global_required="true"/>
1596                 <update permission="UPDATE_COPY_STATUS" global_required="true"/>
1597                 <delete permission="DELETE_COPY_STATUS" global_required="true"/>
1598             </actions>
1599         </permacrud>
1600         </class>
1601         <class id="ausp" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_standing_penalty" oils_persist:tablename="actor.usr_standing_penalty">
1602                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_standing_penalty_id_seq">
1603                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1604                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1605                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1606                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1607                         <field name="penalty_type" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1608                         <field name="usr" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1609                 </fields>
1610                 <links>
1611                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1612                 </links>
1613         </class>
1614         <class id="aua" controller="open-ils.cstore" oils_obj:fieldmapper="actor::user_address" oils_persist:tablename="actor.usr_address" reporter:label="User Address">
1615                 <fields oils_persist:primary="id" oils_persist:sequence="actor.usr_address_id_seq">
1616                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1617                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1618                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1619                         <field reporter:label="Type" name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1620                         <field reporter:label="City" name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
1621                         <field reporter:label="Country" name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1622                         <field reporter:label="County" name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1623                         <field reporter:label="Address ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1624                         <field reporter:label="Postal Code" name="post_code" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
1625                         <field reporter:label="State" name="state" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1626                         <field reporter:label="Street (1)" name="street1" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
1627                         <field reporter:label="Street (2)" name="street2" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
1628                         <field reporter:label="User" name="usr" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="link"/>
1629                         <field reporter:label="Valid Address?" name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
1630                         <field reporter:label="Within City Limits?" name="within_city_limits" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
1631                 </fields>
1632                 <links>
1633                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1634                 </links>
1635         </class>
1636         <class id="acnn" controller="open-ils.cstore" oils_obj:fieldmapper="asset::call_number_note" oils_persist:tablename="asset.call_number_note">
1637                 <fields oils_persist:primary="id" oils_persist:sequence="asset.call_number_note_id_seq">
1638                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1639                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1640                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1641                         <field name="call_number" oils_obj:array_position="3" oils_persist:virtual="false" />
1642                         <field name="create_date" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1643                         <field name="creator" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1644                         <field name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="id" />
1645                         <field name="pub" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
1646                         <field name="title" oils_obj:array_position="8" oils_persist:virtual="false"  reporter:datatype="text"/>
1647                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
1648                 </fields>
1649                 <links>
1650                         <link field="call_number" reltype="has_a" key="id" map="" class="acn"/>
1651                 </links>
1652         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1653             <actions>
1654                 <create permission="CREATE_VOLUME_NOTE">
1655                     <context link="call_number" field="owning_lib"/>
1656                 </create>
1657                 <retrieve permission="VIEW_VOLUME_NOTES">
1658                     <context link="call_number" field="owning_lib"/>
1659                 </retrieve>
1660                 <update permission="UPDATE_VOLUME_NOTE">
1661                     <context link="call_number" field="owning_lib"/>
1662                 </update>
1663                 <delete permission="DELETE_VOLUME_NOTE">
1664                     <context link="call_number" field="owning_lib"/>
1665                 </delete>
1666             </actions>
1667         </permacrud>
1668         </class>
1669         <class id="arn" controller="open-ils.cstore" oils_obj:fieldmapper="authority::record_note" oils_persist:tablename="authority.record_note">
1670                 <fields oils_persist:primary="id" oils_persist:sequence="authority.record_note_id_seq">
1671                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1672                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1673                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1674                         <field name="create_date" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1675                         <field name="creator" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1676                         <field name="edit_date" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1677                         <field name="editor" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1678                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
1679                         <field name="record" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="link"/>
1680                         <field name="value" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="text"/>
1681                 </fields>
1682                 <links>
1683                         <link field="record" reltype="has_a" key="id" map="" class="are"/>
1684                 </links>
1685         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1686             <actions>
1687                 <create permission="CREATE_AUTHORITY_RECORD_NOTE" global_required='true'/>
1688                 <retrieve permission="VIEW_AUTHORITY_RECORD_NOTES" global_required='true'/>
1689                 <update permission="UPDATE_AUTHORITY_RECORD_NOTE" global_required='true'/>
1690                 <delete permission="DELETE_AUTHORITY_RECORD_NOTE" global_required='true'/>
1691             </actions>
1692         </permacrud>
1693         </class>
1694         <class id="circ" controller="open-ils.cstore" oils_obj:fieldmapper="action::circulation" oils_persist:tablename="action.circulation" reporter:core="true" reporter:label="Circulation">
1695                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1696                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1697                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1698                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1699                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1700                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1701                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1702                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1703                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1704                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1705                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1706                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1707                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1708                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1709                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1710                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1711                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1712                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1713                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1714                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1715                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1716                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1717                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1718                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1719                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1720                         <field reporter:label="Patron" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
1721                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1722                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1723                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1724                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1725                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1726                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1727                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1728                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1729                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1730                 </fields>
1731                 <links>
1732                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1733                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1734                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1735                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1736                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1737                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
1738                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1739                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1740                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1741                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1742                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1743                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1744                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1745                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1746                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1747                 </links>
1748         </class>
1749         <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">
1750                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1751                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1752                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1753                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1754                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1755                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1756                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1757                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1758                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1759                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1760                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1761                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1762                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1763                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1764                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1765                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1766                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1767                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1768                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1769                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1770                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1771                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1772                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1773                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1774                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1775                         <field reporter:label="Patron ZIP" name="usr_post_code" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
1776                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1777                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1778                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1779                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1780                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1781                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1782                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1783                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1784                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1785                         <field reporter:label="Patron Home Library" name="usr_home_ou" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="link"/>
1786                         <field reporter:label="Patron Profile Group" name="usr_profile" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="link"/>
1787                         <field reporter:label="Patron Birth Year" name="usr_birth_year" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="int"/>
1788                         <field reporter:label="Call Number" name="copy_call_number" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="link"/>
1789                         <field reporter:label="Shelving Location" name="copy_location" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1790                         <field reporter:label="Copy Owning Library" name="copy_owning_lib" oils_obj:array_position="39" oils_persist:virtual="false" reporter:datatype="link"/>
1791                         <field reporter:label="Copy Circulating Library" name="copy_circ_lib" oils_obj:array_position="40" oils_persist:virtual="false" reporter:datatype="link"/>
1792                         <field reporter:label="Bib Record" name="copy_bib_record" oils_obj:array_position="41" oils_persist:virtual="false" reporter:datatype="link"/>
1793                 </fields>
1794                 <links>
1795                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1796                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1797                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1798                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1799                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1800                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1801                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1802                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1803                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1804                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1805                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1806                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1807                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1808                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1809                         <link field="copy_call_number" reltype="has_a" key="id" map="" class="acn"/>
1810                         <link field="copy_location" reltype="has_a" key="id" map="" class="acl"/>
1811                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1812                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1813                         <link field="copy_bib_record" reltype="has_a" key="id" map="" class="bre"/>
1814                 </links>
1815         </class>
1816         <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">
1817                 <fields oils_persist:primary="id" oils_persist:sequence="money.billable_xact_id_seq">
1818                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1819                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1820                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1821                         <field reporter:label="Check In Library" name="checkin_lib" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="org_unit"/>
1822                         <field reporter:label="Check In Staff" name="checkin_staff" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1823                         <field reporter:label="Check In Date/Time" name="checkin_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1824                         <field reporter:label="Circulating Library" name="circ_lib" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1825                         <field reporter:label="Circulating Staff" name="circ_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1826                         <field reporter:label="Desk Renewal" name="desk_renewal" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1827                         <field reporter:label="Due Date/Time" name="due_date" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1828                         <field reporter:label="Circulation Duration" name="duration" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="interval"/>
1829                         <field reporter:label="Circ Duration Rule" name="duration_rule" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="link"/>
1830                         <field reporter:label="Fine Interval" name="fine_interval" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="interval"/>
1831                         <field reporter:label="Circ ID" name="id" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="id" />
1832                         <field reporter:label="Max Fine Amount" name="max_fine" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="money" />
1833                         <field reporter:label="Max Fine Rule" name="max_fine_rule" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="link"/>
1834                         <field reporter:label="OPAC Renewal" name="opac_renewal" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="bool"/>
1835                         <field reporter:label="Phone Renewal" name="phone_renewal" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="bool"/>
1836                         <field reporter:label="Recurring Fine Amount" name="recuring_fine" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="money" />
1837                         <field reporter:label="Recurring Fine Rule" name="recuring_fine_rule" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="link"/>
1838                         <field reporter:label="Remaining Renewals" name="renewal_remaining" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="int" />
1839                         <field reporter:label="Fine Stop Reason" name="stop_fines" oils_obj:array_position="21" oils_persist:virtual="false" reporter:datatype="text"/>
1840                         <field reporter:label="Fine Stop Date/Time" name="stop_fines_time" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1841                         <field reporter:label="Circulating Item" name="target_copy" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
1842                         <field reporter:label="Patron ZIP" name="usr_post_code" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="text"/>
1843                         <field reporter:label="Transaction Finish Date/Time" name="xact_finish" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp" />
1844                         <field reporter:label="Check Out Date/Time" name="xact_start" oils_obj:array_position="26" oils_persist:virtual="false" reporter:datatype="timestamp" />
1845                         <field reporter:label="Record Creation Date/Time" name="create_time" oils_obj:array_position="27" oils_persist:virtual="false" reporter:datatype="timestamp" />
1846                         <field reporter:label="Transaction Billings" name="billings" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
1847                         <field reporter:label="Transaction Payments" name="payments" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
1848                         <field reporter:label="Base Transaction" name="billable_transaction" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
1849                         <field reporter:label="Circulation Type" name="circ_type" oils_obj:array_position="31" oils_persist:virtual="true" reporter:datatype="text"/>
1850                         <field reporter:label="Billing Totals" name="billing_total" oils_obj:array_position="32" oils_persist:virtual="true" reporter:datatype="money"/>
1851                         <field reporter:label="Payment Totals" name="payment_total" oils_obj:array_position="33" oils_persist:virtual="true" reporter:datatype="money"/>
1852                         <field reporter:label="Patron Home Library" name="usr_home_ou" oils_obj:array_position="34" oils_persist:virtual="false" reporter:datatype="link"/>
1853                         <field reporter:label="Patron Profile Group" name="usr_profile" oils_obj:array_position="35" oils_persist:virtual="false" reporter:datatype="link"/>
1854                         <field reporter:label="Patron Birth Year" name="usr_birth_year" oils_obj:array_position="36" oils_persist:virtual="false" reporter:datatype="int"/>
1855                         <field reporter:label="Call Number" name="copy_call_number" oils_obj:array_position="37" oils_persist:virtual="false" reporter:datatype="link"/>
1856                         <field reporter:label="Shelving Location" name="copy_location" oils_obj:array_position="38" oils_persist:virtual="false" reporter:datatype="link"/>
1857                         <field reporter:label="Copy Owning Library" name="copy_owning_lib" oils_obj:array_position="39" oils_persist:virtual="false" reporter:datatype="link"/>
1858                         <field reporter:label="Copy Circulating Library" name="copy_circ_lib" oils_obj:array_position="40" oils_persist:virtual="false" reporter:datatype="link"/>
1859                         <field reporter:label="Bib Record" name="copy_bib_record" oils_obj:array_position="41" oils_persist:virtual="false" reporter:datatype="link"/>
1860                 </fields>
1861                 <links>
1862                         <link field="billable_transaction" reltype="might_have" key="id" map="" class="mbt"/>
1863                         <link field="circ_staff" reltype="has_a" key="id" map="" class="au"/>
1864                         <link field="checkin_lib" reltype="has_a" key="id" map="" class="aou"/>
1865                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1866                         <link field="checkin_staff" reltype="has_a" key="id" map="" class="au"/>
1867                         <link field="circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1868                         <link field="payments" reltype="has_many" key="xact" map="" class="mp"/>
1869                         <link field="billings" reltype="has_many" key="xact" map="" class="mb"/>
1870                         <link field="duration_rule" reltype="has_a" key="name" map="" class="crcd"/>
1871                         <link field="max_fine_rule" reltype="has_a" key="name" map="" class="crmf"/>
1872                         <link field="recuring_fine_rule" reltype="has_a" key="name" map="" class="crrf"/>
1873                         <link field="circ_type" reltype="might_have" key="id" map="" class="rcirct"/>
1874                         <link field="billing_total" reltype="might_have" key="xact" map="" class="rxbt"/>
1875                         <link field="payment_total" reltype="might_have" key="xact" map="" class="rxpt"/>
1876                         <link field="copy_call_number" reltype="has_a" key="id" map="" class="acn"/>
1877                         <link field="copy_location" reltype="has_a" key="id" map="" class="acl"/>
1878                         <link field="copy_owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1879                         <link field="copy_circ_lib" reltype="has_a" key="id" map="" class="aou"/>
1880                         <link field="copy_bib_record" reltype="has_a" key="id" map="" class="bre"/>
1881                 </links>
1882         </class>
1883         <class id="ccnbi" controller="open-ils.cstore" oils_obj:fieldmapper="container::call_number_bucket_item" oils_persist:tablename="container.call_number_bucket_item">
1884                 <fields oils_persist:primary="id" oils_persist:sequence="container.call_number_bucket_item_id_seq">
1885                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1886                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1887                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1888                         <field name="bucket" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1889                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1890                         <field name="target_call_number" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link" />
1891                         <field name="create_time" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp" />
1892                 </fields>
1893                 <links>
1894                         <link field="target_call_number" reltype="has_a" key="id" map="" class="acn"/>
1895                         <link field="bucket" reltype="has_a" key="id" map="" class="ccnb"/>
1896                 </links>
1897         </class>
1898         <class id="cbreb" controller="open-ils.cstore" oils_obj:fieldmapper="container::biblio_record_entry_bucket" oils_persist:tablename="container.biblio_record_entry_bucket">
1899                 <fields oils_persist:primary="id" oils_persist:sequence="container.biblio_record_entry_bucket_id_seq">
1900                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1901                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1902                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1903                         <field name="items" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
1904                         <field name="btype" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
1905                         <field name="id" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="id" />
1906                         <field name="name" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="text"/>
1907                         <field name="owner" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1908                         <field name="pub" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1909                         <field name="create_time" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="timestamp" />
1910                 </fields>
1911                 <links>
1912                         <link field="owner" reltype="has_a" key="id" map="" class="au"/>
1913                         <link field="items" reltype="has_many" key="bucket" map="" class="cbrebi"/>
1914                 </links>
1915         </class>
1916         <class id="ahcm" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_copy_map" oils_persist:tablename="action.hold_copy_map">
1917                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_copy_map_id_seq">
1918                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1919                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1920                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1921                         <field name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1922                         <field name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1923                         <field name="target_copy" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1924                 </fields>
1925                 <links>
1926                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1927                         <link field="target_copy" reltype="has_a" key="id" map="" class="acp"/>
1928                 </links>
1929         </class>
1930         <class id="ahn" controller="open-ils.cstore" oils_obj:fieldmapper="action::hold_notification" oils_persist:tablename="action.hold_notification" reporter:label="Hold Notification">
1931                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_notification_id_seq">
1932                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1933                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1934                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1935                         <field reporter:label="Hold" name="hold" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="link"/>
1936                         <field reporter:label="Notification ID" name="id" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="id" />
1937                         <field reporter:label="Notification Method" name="method" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
1938                         <field reporter:label="Notification Note" name="note" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
1939                         <field reporter:label="Notifying Staff" name="notify_staff" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="link"/>
1940                         <field reporter:label="Notification Date/Time" name="notify_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
1941                 </fields>
1942                 <links>
1943                         <link field="hold" reltype="has_a" key="id" map="" class="ahr"/>
1944                         <link field="notify_staff" reltype="has_a" key="id" map="" class="au"/>
1945                 </links>
1946         </class>
1947         <class id="acpl" controller="open-ils.cstore" oils_obj:fieldmapper="asset::copy_location" oils_persist:tablename="asset.copy_location" reporter:label="Copy/Shelving Location">
1948                 <fields oils_persist:primary="id" oils_persist:sequence="asset.copy_location_id_seq">
1949                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1950                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1951                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1952                         <field reporter:label="Can Circulate?" name="circulate" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="bool"/>
1953                         <field reporter:label="Is Holdable?" name="holdable" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
1954                         <field reporter:label="Hold Capture Requires Verification" name="hold_verify" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="bool"/>
1955                         <field reporter:label="Location ID" name="id" oils_obj:array_position="6" oils_persist:virtual="false" reporter:selector="name" reporter:datatype="id"/>
1956                         <field reporter:label="Name" name="name" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1957                         <field reporter:label="Is OPAC Visible?" name="opac_visible" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="bool"/>
1958                         <field reporter:label="Owning Org Unit" name="owning_lib" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="org_unit"/>
1959                 </fields>
1960                 <links>
1961                         <link field="owning_lib" reltype="has_a" key="id" map="" class="aou"/>
1962                 </links>
1963         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1964             <actions>
1965                 <create permission="CREATE_COPY_LOCATION" context_field="owning_lib"/>
1966                 <retrieve/>
1967                 <update permission="UPDATE_COPY_LOCATION" context_field="owning_lib"/>
1968                 <delete permission="DELETE_COPY_LOCATION" context_field="owning_lib"/>
1969             </actions>
1970         </permacrud>
1971         </class>
1972         <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">
1973                 <fields oils_persist:primary="id" oils_persist:sequence="asset.stat_cat_entry_copy_map_id_seq">
1974                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1975                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1976                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1977                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
1978                         <field name="owning_copy" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
1979                         <field name="stat_cat" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
1980                         <field name="stat_cat_entry" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="link"/>
1981                 </fields>
1982                 <links>
1983                         <link field="owning_copy" reltype="has_a" key="id" map="" class="acp"/>
1984                         <link field="stat_cat_entry" reltype="has_a" key="id" map="" class="asce"/>
1985                         <link field="stat_cat" reltype="has_a" key="id" map="" class="asc"/>
1986                 </links>
1987         </class>
1988         <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">
1989                 <fields oils_persist:primary="code">
1990                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
1991                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
1992                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
1993                         <field reporter:label="Item Type Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
1994                         <field reporter:label="Item Type" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
1995                 </fields>
1996                 <links/>
1997         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
1998             <actions>
1999                 <create permission="CREATE_MARC_CODE" global_required="true"/>
2000                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
2001                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
2002                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
2003             </actions>
2004         </permacrud>
2005         </class>
2006         <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">
2007                 <fields oils_persist:primary="code">
2008                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2009                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2010                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2011                         <field reporter:label="Bib Level Code" name="code" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
2012                         <field reporter:label="Bib Level" name="value" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text" oils_persist:i18n="true"/>
2013                 </fields>
2014                 <links/>
2015         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2016             <actions>
2017                 <create permission="CREATE_MARC_CODE" global_required="true"/>
2018                 <retrieve permission="CREATE_MARC_CODE|UPDATE_MARC_CODE|DELETE_MARC_CODE" global_required="true"/>
2019                 <update permission="UPDATE_MARC_CODE" global_required="true"/>
2020                 <delete permission="DELETE_MARC_CODE" global_required="true"/>
2021             </actions>
2022         </permacrud>
2023         </class>
2024         <class id="sra" controller="open-ils.cstore" oils_obj:fieldmapper="search::relevance_adjustment" oils_persist:tablename="search.relevance_adjustment" reporter:label="Relevance Adjustment">
2025                 <fields oils_persist:primary="id" oils_persist:sequence="search.relevance_adjustment_id_seq">
2026                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2027                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2028                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2029                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="id"/>
2030                         <field reporter:label="Active" name="active" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="bool"/>
2031                         <field reporter:label="Index Field" name="field" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="link"/>
2032                         <field reporter:label="Bump Type" name="bump" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2033                         <field reporter:label="Multiplier" name="multiplier" oils_obj:array_position="7" oils_persist:virtual="false"  reporter:datatype="number"/>
2034                 </fields>
2035                 <links>
2036             <link field="field" reltype="has_a" key="id" map="" class="cmf"/>
2037         </links>
2038         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2039             <actions>
2040                 <create permission="CREATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
2041                 <retrieve permission="CREATE_RELEVANCE_ADJUSTMENT|UPDATE_RELEVANCE_ADJUSTMENT|DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
2042                 <update permission="UPDATE_RELEVANCE_ADJUSTMENT" global_required="true"/>
2043                 <delete permission="DELETE_RELEVANCE_ADJUSTMENT" global_required="true"/>
2044             </actions>
2045         </permacrud>
2046         </class>
2047         <class id="lasso" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso" oils_persist:tablename="actor.org_lasso">
2048                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_id_seq">
2049                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2050                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2051                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2052                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2053                         <field name="name" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="text"/>
2054                 </fields>
2055                 <links/>
2056         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2057             <actions>
2058                 <create permission="CREATE_LASSO" global_required="true"/>
2059                 <retrieve permission="CREATE_LASSO|UPDATE_LASSO|DELETE_LASSO" global_required="true"/>
2060                 <update permission="UPDATE_LASSO" global_required="true"/>
2061                 <delete permission="DELETE_LASSO" global_required="true"/>
2062             </actions>
2063         </permacrud>
2064         </class>
2065         <class id="lmap" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_lasso_map" oils_persist:tablename="actor.org_lasso_map">
2066                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_lasso_map_id_seq">
2067                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2068                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2069                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2070                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2071                         <field name="lasso" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="link"/>
2072                         <field name="org_unit" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2073                 </fields>
2074                 <links>
2075                         <link field="lasso" reltype="has_a" key="id" map="" class="lasso"/>
2076                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2077                 </links>
2078         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2079             <actions>
2080                 <create permission="CREATE_LASSO_MAP" global_required="true"/>
2081                 <retrieve permission="CREATE_LASSO_MAP|UPDATE_LASSO_MAP|DELETE_LASSO_MAP" global_required="true"/>
2082                 <update permission="UPDATE_LASSO_MAP" global_required="true"/>
2083                 <delete permission="DELETE_LASSO_MAP" global_required="true"/>
2084             </actions>
2085         </permacrud>
2086         </class>
2087         <class id="aoup" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_unit_proximity" oils_persist:tablename="actor.org_unit_proximity">
2088                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
2089                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2090                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2091                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2092                         <field name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2093                         <field name="from_org" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2094                         <field name="to_org" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2095                         <field name="prox" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2096                 </fields>
2097                 <links>
2098                         <link field="from_org" reltype="has_a" key="id" map="" class="aou"/>
2099                         <link field="to_org" reltype="has_a" key="id" map="" class="aou"/>
2100                 </links>
2101         </class>
2102         <class id="ssr" controller="open-ils.cstore" oils_obj:fieldmapper="search::search_result" oils_persist:tablename="search.search_result" oils_persist:readonly="true">
2103                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_unit_proximity_id_seq">
2104                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2105                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2106                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2107                         <field reporter:label="ID" name="id" oils_obj:array_position="3" oils_persist:virtual="false" reporter:datatype="id" />
2108                         <field reporter:label="Relevance" name="rel" oils_obj:array_position="4" oils_persist:virtual="false" reporter:datatype="float"/>
2109                         <field reporter:label="Record" name="record" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="link"/>
2110                         <field reporter:label="Total Results" name="total" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="int" />
2111                         <field reporter:label="Checked" name="checked" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="int"/>
2112                         <field reporter:label="Visible" name="visible" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="int"/>
2113                         <field reporter:label="Deleted" name="deleted" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="int"/>
2114                         <field reporter:label="Excluded" name="excluded" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="int"/>
2115                 </fields>
2116                 <links/>
2117         </class>
2118         <class id="asv" controller="open-ils.cstore" oils_obj:fieldmapper="action::survey" oils_persist:tablename="action.survey" reporter:label="Survey">
2119                 <fields oils_persist:primary="id" oils_persist:sequence="action.survey_id_seq">
2120                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2121                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2122                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2123                         <field reporter:label="Questions" name="questions" oils_obj:array_position="3" oils_persist:virtual="true" reporter:datatype="link"/>
2124                         <field reporter:label="Responses" name="responses" oils_obj:array_position="4" oils_persist:virtual="true" reporter:datatype="link"/>
2125                         <field reporter:label="Description" name="description" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="text"/>
2126                         <field reporter:label="Survey End Date/Time" name="end_date" oils_obj:array_position="6" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2127                         <field reporter:label="Survey ID" name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id"/>
2128                         <field reporter:label="Name" name="name" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="text"/>
2129                         <field reporter:label="OPAC Surevey?" name="opac" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="bool"/>
2130                         <field reporter:label="Owning Library" name="owner" oils_obj:array_position="10" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2131                         <field reporter:label="Poll Style?" name="poll" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="bool"/>
2132                         <field reporter:label="Is Required?" name="required" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="bool"/>
2133                         <field reporter:label="Survey Start Date/Time" name="start_date" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2134                         <field reporter:label="Display in User Summary" name="usr_summary" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="bool"/>
2135                 </fields>
2136                 <links>
2137                         <link field="owner" reltype="has_a" key="survey" map="" class="aou"/>
2138                         <link field="responses" reltype="has_many" key="survey" map="" class="asvr"/>
2139                         <link field="questions" reltype="has_many" key="survey" map="" class="asvq"/>
2140                 </links>
2141         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2142             <actions>
2143                 <create permission="CREATE_SURVEY" context_field="owner"/>
2144                 <retrieve/>
2145                 <update permission="UPDATE_SURVEY" context_field="owner"/>
2146                 <delete permission="DELETE_SURVEY" context_field="owner"/>
2147             </actions>
2148         </permacrud>
2149         </class>
2150         <class id="aoa" controller="open-ils.cstore" oils_obj:fieldmapper="actor::org_address" oils_persist:tablename="actor.org_address">
2151                 <fields oils_persist:primary="id" oils_persist:sequence="actor.org_address_id_seq">
2152                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2153                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2154                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2155                         <field name="address_type" oils_obj:array_position="3" oils_persist:virtual="false"  reporter:datatype="text"/>
2156                         <field name="city" oils_obj:array_position="4" oils_persist:virtual="false"  reporter:datatype="text"/>
2157                         <field name="country" oils_obj:array_position="5" oils_persist:virtual="false"  reporter:datatype="text"/>
2158                         <field name="county" oils_obj:array_position="6" oils_persist:virtual="false"  reporter:datatype="text"/>
2159                         <field name="id" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="id" />
2160                         <field name="org_unit" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2161                         <field name="post_code" oils_obj:array_position="9" oils_persist:virtual="false"  reporter:datatype="text"/>
2162                         <field name="state" oils_obj:array_position="10" oils_persist:virtual="false"  reporter:datatype="text"/>
2163                         <field name="street1" oils_obj:array_position="11" oils_persist:virtual="false"  reporter:datatype="text"/>
2164                         <field name="street2" oils_obj:array_position="12" oils_persist:virtual="false"  reporter:datatype="text"/>
2165                         <field name="valid" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="bool"/>
2166                 </fields>
2167                 <links>
2168                         <link field="org_unit" reltype="has_a" key="id" map="" class="aou"/>
2169                 </links>
2170         <permacrud xmlns="http://open-ils.org/spec/opensrf/IDL/permacrud/v1">
2171             <actions>
2172                 <create permission="CREATE_ORG_ADDRESS" context_field="org_unit"/>
2173                 <retrieve/>
2174                 <update permission="UPDATE_ORG_ADDRESS" context_field="org_unit"/>
2175                 <delete permission="DELETE_ORG_ADDRESS" context_field="org_unit"/>
2176             </actions>
2177         </permacrud>
2178         </class>
2179         <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">
2180                 <fields oils_persist:primary="id" oils_persist:sequence="action.hold_request_id_seq">
2181                         <field name="isnew" oils_obj:array_position="0" oils_persist:virtual="true" />
2182                         <field name="ischanged" oils_obj:array_position="1" oils_persist:virtual="true" />
2183                         <field name="isdeleted" oils_obj:array_position="2" oils_persist:virtual="true" />
2184                         <field name="status" oils_obj:array_position="3" oils_persist:virtual="true" />
2185                         <field reporter:label="Transit" name="transit" oils_obj:array_position="4" oils_persist:virtual="true" />
2186                         <field reporter:label="Capture Date/Time" name="capture_time" oils_obj:array_position="5" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2187                         <field reporter:label="Currently Targeted Copy" name="current_copy" oils_obj:array_position="6" oils_persist:virtual="false" />
2188                         <field reporter:label="Notify by Email?" name="email_notify" oils_obj:array_position="7" oils_persist:virtual="false" reporter:datatype="bool"/>
2189                         <field reporter:label="Hold Expire Date/Time" name="expire_time" oils_obj:array_position="8" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2190                         <field reporter:label="Fulfilling Library" name="fulfillment_lib" oils_obj:array_position="9" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2191                         <field reporter:label="Fulfilling Staff" name="fulfillment_staff" oils_obj:array_position="10" oils_persist:virtual="false" />
2192                         <field reporter:label="Fulfillment Date/Time" name="fulfillment_time" oils_obj:array_position="11" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2193                         <field reporter:label="Hold Type" name="hold_type" oils_obj:array_position="12" oils_persist:virtual="false" reporter:datatype="text"/>
2194                         <field reporter:label="Holdable Formats (for M-type hold)" name="holdable_formats" oils_obj:array_position="13" oils_persist:virtual="false" reporter:datatype="text"/>
2195                         <field reporter:label="Hold ID" name="id" oils_obj:array_position="14" oils_persist:virtual="false" reporter:datatype="id" />
2196                         <field reporter:label="Notifications Phone Number" name="phone_notify" oils_obj:array_position="15" oils_persist:virtual="false" reporter:datatype="text"/>
2197                         <field reporter:label="Pickup Library" name="pickup_lib" oils_obj:array_position="16" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2198                         <field reporter:label="Last Targeting Date/Time" name="prev_check_time" oils_obj:array_position="17" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2199                         <field reporter:label="Requesting Library" name="request_lib" oils_obj:array_position="18" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2200                         <field reporter:label="Request Date/Time" name="request_time" oils_obj:array_position="19" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2201                         <field reporter:label="Requesting User" name="requestor" oils_obj:array_position="20" oils_persist:virtual="false" reporter:datatype="link"/>
2202                         <field reporter:label="Item Selection Depth" name="selection_depth" oils_obj:array_position="21" oils_persist:virtual="false" />
2203                         <field reporter:label="Selection Locus" name="selection_ou" oils_obj:array_position="22" oils_persist:virtual="false" reporter:datatype="org_unit"/>
2204                         <field reporter:label="Target Object ID" name="target" oils_obj:array_position="23" oils_persist:virtual="false" reporter:datatype="link"/>
2205                         <field reporter:label="Hold User" name="usr" oils_obj:array_position="24" oils_persist:virtual="false" reporter:datatype="link"/>
2206                         <field reporter:label="Hold Cancel Date/Time" name="cancel_time" oils_obj:array_position="25" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2207                         <field name="notify_time" oils_obj:array_position="26" oils_persist:virtual="true" reporter:datatype="timestamp"/>
2208                         <field name="notify_count" oils_obj:array_position="27" oils_persist:virtual="true" reporter:datatype="int" />
2209                         <field reporter:label="Notifications" name="notifications" oils_obj:array_position="28" oils_persist:virtual="true" reporter:datatype="link"/>
2210                         <field reporter:label="Bib Record link" name="bib_rec" oils_obj:array_position="29" oils_persist:virtual="true" reporter:datatype="link"/>
2211                         <field reporter:label="Eligible Copies" name="eligible_copies" oils_obj:array_position="30" oils_persist:virtual="true" reporter:datatype="link"/>
2212                         <field reporter:label="Currently Frozen" name="frozen" oils_obj:array_position="31" oils_persist:virtual="false" reporter:datatype="bool"/>
2213                         <field reporter:label="Thaw Date (if frozen)" name="thaw_date" oils_obj:array_position="32" oils_persist:virtual="false" reporter:datatype="timestamp"/>
2214                 </fields>
2215                 <links>
2216                         <link field="fulfillment_lib" reltype="has_a" key="id" map="" class="aou"/>
2217                         <link field="fulfillment_staff" reltype="has_a" key="id" map="" class="au"/>
2218                         <link field="pickup_lib" reltype="has_a" key="id" map="" class="aou"/>
2219                         <link field="selection_ou" reltype="has_a" key="id" map="" class="aou"/>
2220                         <link field="requestor" reltype="has_a" key="id" map="" class="au"/>
2221                         <link field="current_copy" reltype="has_a" key="id" map="" class="acp"/>
2222                         <link field="usr" reltype="has_a" key="id" map="" class="au"/>
2223                         <link field="request_lib" reltype="has_a" key="id" map="" class="aou"/>
2224                         <link field="transit" reltype="might_have" key="hold" map="" class="ahtc"/>
2225                         <link field="notifications" reltype="has_many" key="hold" map="" class="ahn"/>
2226                         <link field="eligible_copies" reltype="has_many" key="hold" map="target_copy" class="ahcm"/>
2227