2 DROP SCHEMA stats CASCADE;
3 DROP SCHEMA config CASCADE;
9 COMMENT ON SCHEMA config IS $$
11 * Copyright (C) 2005 Georgia Public Library Service
12 * Mike Rylander <mrylander@gmail.com>
14 * The config schema holds static configuration data for the
15 * Open-ILS installation.
19 * This program is free software; you can redistribute it and/or
20 * modify it under the terms of the GNU General Public License
21 * as published by the Free Software Foundation; either version 2
22 * of the License, or (at your option) any later version.
24 * This program is distributed in the hope that it will be useful,
25 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27 * GNU General Public License for more details.
32 CREATE TABLE config.bib_source (
33 id SERIAL PRIMARY KEY,
34 quality INT CHECK ( quality BETWEEN 0 AND 100 ),
35 source TEXT NOT NULL UNIQUE,
36 transcendant BOOL NOT NULL DEFAULT FALSE
38 COMMENT ON TABLE config.bib_source IS $$
40 * Copyright (C) 2005 Georgia Public Library Service
41 * Mike Rylander <mrylander@gmail.com>
43 * Valid sources of MARC records
45 * This is table is used to set up the relative "quality" of each
46 * MARC source, such as OCLC.
50 * This program is free software; you can redistribute it and/or
51 * modify it under the terms of the GNU General Public License
52 * as published by the Free Software Foundation; either version 2
53 * of the License, or (at your option) any later version.
55 * This program is distributed in the hope that it will be useful,
56 * but WITHOUT ANY WARRANTY; without even the implied warranty of
57 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
58 * GNU General Public License for more details.
63 INSERT INTO config.bib_source (quality, source) VALUES (90, 'oclc');
64 INSERT INTO config.bib_source (quality, source) VALUES (10, 'System Local');
65 INSERT INTO config.bib_source (quality, source, transcendant) VALUES (1, 'Project Gutenberg', TRUE);
67 CREATE TABLE config.standing (
68 id SERIAL PRIMARY KEY,
69 value TEXT NOT NULL UNIQUE
71 COMMENT ON TABLE config.standing IS $$
73 * Copyright (C) 2005 Georgia Public Library Service
74 * Mike Rylander <mrylander@gmail.com>
78 * This table contains the values that can be applied to a patron
79 * by a staff member. These values should not be changed, other
80 * that for translation, as the ID column is currently a "magic
81 * number" in the source. :(
85 * This program is free software; you can redistribute it and/or
86 * modify it under the terms of the GNU General Public License
87 * as published by the Free Software Foundation; either version 2
88 * of the License, or (at your option) any later version.
90 * This program is distributed in the hope that it will be useful,
91 * but WITHOUT ANY WARRANTY; without even the implied warranty of
92 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
93 * GNU General Public License for more details.
97 INSERT INTO config.standing (value) VALUES ('Good');
98 INSERT INTO config.standing (value) VALUES ('Barred');
101 CREATE TABLE config.xml_transform (
102 name TEXT PRIMARY KEY,
103 namespace_uri TEXT NOT NULL UNIQUE,
104 prefix TEXT NOT NULL,
107 INSERT INTO config.xml_transform VALUES ( 'marcxml', 'http://www.loc.gov/MARC21/slim', 'marc', '---' );
108 INSERT INTO config.xml_transform VALUES ( 'mods', 'http://www.loc.gov/mods/', 'mods', '/home/miker/MARC21slim2MODS.xsl' );
110 CREATE TABLE config.metabib_field (
111 id SERIAL PRIMARY KEY,
112 field_class TEXT NOT NULL CHECK (lower(field_class) IN ('title','author','subject','keyword','series')),
115 weight INT NOT NULL DEFAULT 1,
116 format TEXT NOT NULL DEFAULT 'mods',
117 search BOOL NOT NULL DEFAULT TRUE,
118 facet BOOL NOT NULL DEFAULT FALSE
120 COMMENT ON TABLE config.metabib_field IS $$
122 * Copyright (C) 2005 Georgia Public Library Service
123 * Mike Rylander <mrylander@gmail.com>
125 * XPath used for WoRMing
127 * This table contains the XPath used to chop up MODS into it's
128 * indexable parts. Each XPath entry is named and assigned to
129 * a "class" of either title, subject, author, keyword or series.
134 * This program is free software; you can redistribute it and/or
135 * modify it under the terms of the GNU General Public License
136 * as published by the Free Software Foundation; either version 2
137 * of the License, or (at your option) any later version.
139 * This program is distributed in the hope that it will be useful,
140 * but WITHOUT ANY WARRANTY; without even the implied warranty of
141 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
142 * GNU General Public License for more details.
146 CREATE UNIQUE INDEX config_metabib_field_class_name_idx ON config.metabib_field (field_class, name);
149 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'series', 'seriestitle', $$//mods:mods/mods:relatedItem[@type="series"]/mods:titleInfo$$ );
150 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'title', 'abbreviated', $$//mods:mods/mods:titleInfo[mods:title and (@type='abreviated')]$$ );
151 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'title', 'translated', $$//mods:mods/mods:titleInfo[mods:title and (@type='translated')]$$ );
152 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'title', 'uniform', $$//mods:mods/mods:titleInfo[mods:title and (@type='uniform')]$$ );
153 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'title', 'proper', $$//mods:mods/mods:titleInfo[mods:title and not (@type)]$$ );
154 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'author', 'corporate', $$//mods:mods/mods:name[@type='corporate']/mods:namePart[../mods:role/mods:text[text()='creator']]$$ );
155 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'author', 'personal', $$//mods:mods/mods:name[@type='personal']/mods:namePart[../mods:role/mods:text[text()='creator']]$$ );
156 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'author', 'conference', $$//mods:mods/mods:name[@type='conference']/mods:namePart[../mods:role/mods:text[text()='creator']]$$ );
157 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'author', 'other', $$//mods:mods/mods:name[@type='personal']/mods:namePart[not(../mods:role)]$$ );
158 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'subject', 'geographic', $$//mods:mods/mods:subject/mods:geographic$$ );
159 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'subject', 'name', $$//mods:mods/mods:subject/mods:name$$ );
160 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'subject', 'temporal', $$//mods:mods/mods:subject/mods:temporal$$ );
161 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'subject', 'topic', $$//mods:mods/mods:subject/mods:topic$$ );
162 -- INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'subject', 'genre', $$//mods:mods/mods:genre$$ );
163 INSERT INTO config.metabib_field ( field_class, name, xpath ) VALUES ( 'keyword', 'keyword', $$//mods:mods/*[not(local-name()='originInfo')]$$ ); -- /* to fool vim */
167 CREATE OR REPLACE FUNCTION oils_xml_transform ( TEXT, TEXT ) RETURNS TEXT AS $_$
168 SELECT CASE WHEN (SELECT COUNT(*) FROM config.xml_transform WHERE name = $2 AND xslt = '---') > 0 THEN $1
169 ELSE xslt_process($1, (SELECT xslt FROM config.xml_transform WHERE name = $2))
171 $_$ LANGUAGE SQL STRICT IMMUTABLE;
175 CREATE TYPE biblio_field_vtype AS ( record BIGINT, field INT, content TEXT );
176 CREATE OR REPLACE FUNCTION biblio_field_table ( record BIGINT, field_list INT[] ) RETURNS SETOF biblio_field_vtype AS $_$
179 rec biblio_field_vtype%ROWTYPE;
181 FOR i IN ARRAY_LOWER(field_list,1) .. ARRAY_UPPER(field_list,1) LOOP
182 FOR rec IN SELECT DISTINCT r, field_list[i], BTRIM(REGEXP_REPLACE(REGEXP_REPLACE(f, E'\n', ' ', 'g'), '[ ]+', ' ', 'g'))
185 $$oils_xml_transform(marc,'$$ || (SELECT format FROM config.metabib_field WHERE id = field_list[i]) || $$')$$,
186 'biblio.record_entry',
187 (SELECT xpath FROM config.metabib_field WHERE id = field_list[i]),
189 (SELECT x.prefix FROM config.xml_transform x JOIN config.metabib_field m ON (m.format = x.name) WHERE m.id = field_list[i]),
190 (SELECT x.namespace_uri FROM config.xml_transform x JOIN config.metabib_field m ON (m.format = x.name) WHERE m.id = field_list[i])
191 ) AS t( r bigint, f text)
192 WHERE f IS NOT NULL LOOP
197 $_$ LANGUAGE PLPGSQL;
201 CREATE OR REPLACE FUNCTION biblio_field_table ( record BIGINT, field INT ) RETURNS SETOF biblio_field_vtype AS $_$
202 SELECT * FROM biblio_field_table( $1, ARRAY[$2] )
207 CREATE TABLE config.non_cataloged_type (
208 id SERIAL PRIMARY KEY,
209 owning_lib INT NOT NULL, -- REFERENCES actor.org_unit (id),
211 circ_duration INTERVAL NOT NULL DEFAULT '14 days'::INTERVAL,
212 in_house BOOL NOT NULL DEFAULT FALSE,
213 CONSTRAINT noncat_once_per_lib UNIQUE (owning_lib,name)
215 COMMENT ON TABLE config.non_cataloged_type IS $$
217 * Copyright (C) 2005 Georgia Public Library Service
218 * Mike Rylander <mrylander@gmail.com>
220 * Types of valid non-cataloged items.
225 * This program is free software; you can redistribute it and/or
226 * modify it under the terms of the GNU General Public License
227 * as published by the Free Software Foundation; either version 2
228 * of the License, or (at your option) any later version.
230 * This program is distributed in the hope that it will be useful,
231 * but WITHOUT ANY WARRANTY; without even the implied warranty of
232 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
233 * GNU General Public License for more details.
238 INSERT INTO config.non_cataloged_type ( owning_lib, name ) VALUES ( 1, 'Paperback Book' );
240 CREATE TABLE config.identification_type (
241 id SERIAL PRIMARY KEY,
242 name TEXT NOT NULL UNIQUE
244 COMMENT ON TABLE config.identification_type IS $$
246 * Copyright (C) 2005 Georgia Public Library Service
247 * Mike Rylander <mrylander@gmail.com>
249 * Types of valid patron identification.
251 * Each patron must display at least one valid form of identification
252 * in order to get a library card. This table lists those forms.
257 * This program is free software; you can redistribute it and/or
258 * modify it under the terms of the GNU General Public License
259 * as published by the Free Software Foundation; either version 2
260 * of the License, or (at your option) any later version.
262 * This program is distributed in the hope that it will be useful,
263 * but WITHOUT ANY WARRANTY; without even the implied warranty of
264 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
265 * GNU General Public License for more details.
270 INSERT INTO config.identification_type ( name ) VALUES ( 'Drivers License' );
271 INSERT INTO config.identification_type ( name ) VALUES ( 'SSN' );
272 INSERT INTO config.identification_type ( name ) VALUES ( 'Other' );
274 CREATE TABLE config.rule_circ_duration (
275 id SERIAL PRIMARY KEY,
276 name TEXT NOT NULL UNIQUE CHECK ( name ~ '^\\w+$' ),
277 extended INTERVAL NOT NULL,
278 normal INTERVAL NOT NULL,
279 shrt INTERVAL NOT NULL,
280 max_renewals INT NOT NULL
282 COMMENT ON TABLE config.rule_circ_duration IS $$
284 * Copyright (C) 2005 Georgia Public Library Service
285 * Mike Rylander <mrylander@gmail.com>
287 * Circulation Duration rules
289 * Each circulation is given a duration based on one of these rules.
294 * This program is free software; you can redistribute it and/or
295 * modify it under the terms of the GNU General Public License
296 * as published by the Free Software Foundation; either version 2
297 * of the License, or (at your option) any later version.
299 * This program is distributed in the hope that it will be useful,
300 * but WITHOUT ANY WARRANTY; without even the implied warranty of
301 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
302 * GNU General Public License for more details.
306 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '7_days_0_renew', '7 days', '7 days', '7 days', 0);
307 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '28_days_2_renew', '28 days', '28 days', '28 days', 2);
308 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '3_months_0_renew', '3 mons', '3 mons', '3 mons', 0);
309 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '3_days_1_renew', '3 days', '3 days', '3 days', 1);
310 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '2_months_2_renew', '2 mons', '2 mons', '2 mons', 2);
311 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '35_days_1_renew', '35 days', '35 days', '35 days', 1);
312 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '7_days_2_renew', '7 days', '7 days', '7 days', 2);
313 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '1_hour_2_renew', '1 hour', '1 hour', '1 hour', 2);
314 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '28_days_0_renew', '28 days', '28 days', '28 days', 0);
315 INSERT INTO config.rule_circ_duration VALUES (DEFAULT, '14_days_2_renew', '14 days', '14 days', '14 days', 2);
318 CREATE TABLE config.rule_max_fine (
319 id SERIAL PRIMARY KEY,
320 name TEXT NOT NULL UNIQUE CHECK ( name ~ '^\\w+$' ),
321 amount NUMERIC(6,2) NOT NULL
323 COMMENT ON TABLE config.rule_max_fine IS $$
325 * Copyright (C) 2005 Georgia Public Library Service
326 * Mike Rylander <mrylander@gmail.com>
328 * Circulation Max Fine rules
330 * Each circulation is given a maximum fine based on one of
336 * This program is free software; you can redistribute it and/or
337 * modify it under the terms of the GNU General Public License
338 * as published by the Free Software Foundation; either version 2
339 * of the License, or (at your option) any later version.
341 * This program is distributed in the hope that it will be useful,
342 * but WITHOUT ANY WARRANTY; without even the implied warranty of
343 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
344 * GNU General Public License for more details.
348 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_min', 5.00);
349 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_mid', 10.00);
350 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_max', 100.00);
351 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_equip_min', 25.00);
352 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_equip_mid', 25.00);
353 INSERT INTO config.rule_max_fine VALUES (DEFAULT, 'overdue_equip_max', 100.00);
356 CREATE TABLE config.rule_recuring_fine (
357 id SERIAL PRIMARY KEY,
358 name TEXT NOT NULL UNIQUE CHECK ( name ~ '^\\w+$' ),
359 high NUMERIC(6,2) NOT NULL,
360 normal NUMERIC(6,2) NOT NULL,
361 low NUMERIC(6,2) NOT NULL,
362 recurance_interval INTERVAL NOT NULL DEFAULT '1 day'::INTERVAL
364 COMMENT ON TABLE config.rule_recuring_fine IS $$
366 * Copyright (C) 2005 Georgia Public Library Service
367 * Mike Rylander <mrylander@gmail.com>
369 * Circulation Recuring Fine rules
371 * Each circulation is given a recuring fine amount based on one of
372 * these rules. The recurance_interval should not be any shorter
373 * than the interval between runs of the fine_processor.pl script
374 * (which is run from CRON), or you could miss fines.
379 * This program is free software; you can redistribute it and/or
380 * modify it under the terms of the GNU General Public License
381 * as published by the Free Software Foundation; either version 2
382 * of the License, or (at your option) any later version.
384 * This program is distributed in the hope that it will be useful,
385 * but WITHOUT ANY WARRANTY; without even the implied warranty of
386 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
387 * GNU General Public License for more details.
391 INSERT INTO config.rule_recuring_fine VALUES (DEFAULT, '10_cent_per_day', 0.50, 0.10, 0.10, '1 day');
392 INSERT INTO config.rule_recuring_fine VALUES (DEFAULT, '50_cent_per_day', 0.50, 0.50, 0.50, '1 day');
395 CREATE TABLE config.rule_age_hold_protect (
396 id SERIAL PRIMARY KEY,
397 name TEXT NOT NULL UNIQUE CHECK ( name ~ '^\\w+$' ),
398 age INTERVAL NOT NULL,
401 COMMENT ON TABLE config.rule_age_hold_protect IS $$
403 * Copyright (C) 2005 Georgia Public Library Service
404 * Mike Rylander <mrylander@gmail.com>
406 * Hold Item Age Protection rules
408 * A hold request can only capture new(ish) items when they are
409 * within a particular proximity of the home_ou of the requesting
410 * user. The proximity ('prox' column) is calculated by counting
411 * the number of tree edges beween the user's home_ou and the owning_lib
412 * of the copy that could fulfill the hold.
417 * This program is free software; you can redistribute it and/or
418 * modify it under the terms of the GNU General Public License
419 * as published by the Free Software Foundation; either version 2
420 * of the License, or (at your option) any later version.
422 * This program is distributed in the hope that it will be useful,
423 * but WITHOUT ANY WARRANTY; without even the implied warranty of
424 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
425 * GNU General Public License for more details.
429 INSERT INTO config.rule_age_hold_protect VALUES (DEFAULT, '3month', '3 mons', 0);
430 INSERT INTO config.rule_age_hold_protect VALUES (DEFAULT, '6month', '6 mons', 2);
433 CREATE TABLE config.copy_status (
434 id SERIAL PRIMARY KEY,
435 name TEXT NOT NULL UNIQUE,
436 holdable BOOL NOT NULL DEFAULT FALSE
438 COMMENT ON TABLE config.copy_status IS $$
440 * Copyright (C) 2005 Georgia Public Library Service
441 * Mike Rylander <mrylander@gmail.com>
445 * The available copy statuses, and whether a copy in that
446 * status is available for hold request capture. 0 (zero) is
447 * the only special number in this set, meaning that the item
448 * is available for imediate checkout, and is counted as available
451 * Statuses with an ID below 100 are not removable, and have special
452 * meaning in the code. Do not change them except to translate the
455 * You may add and remove statuses above 100, and these can be used
456 * to remove items from normal circulation without affecting the rest
457 * of the copy's values or it's location.
461 * This program is free software; you can redistribute it and/or
462 * modify it under the terms of the GNU General Public License
463 * as published by the Free Software Foundation; either version 2
464 * of the License, or (at your option) any later version.
466 * This program is distributed in the hope that it will be useful,
467 * but WITHOUT ANY WARRANTY; without even the implied warranty of
468 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
469 * GNU General Public License for more details.
473 INSERT INTO config.copy_status (id,name,holdable) VALUES (0,'Available','t');
474 INSERT INTO config.copy_status (name,holdable) VALUES ('Checked out','t');
475 INSERT INTO config.copy_status (name) VALUES ('Bindery');
476 INSERT INTO config.copy_status (name) VALUES ('Lost');
477 INSERT INTO config.copy_status (name) VALUES ('Missing');
478 INSERT INTO config.copy_status (name,holdable) VALUES ('In process','t');
479 INSERT INTO config.copy_status (name,holdable) VALUES ('In transit','t');
480 INSERT INTO config.copy_status (name,holdable) VALUES ('Reshelving','t');
481 INSERT INTO config.copy_status (name,holdable) VALUES ('On holds shelf','t');
482 INSERT INTO config.copy_status (name,holdable) VALUES ('On order','t');
483 INSERT INTO config.copy_status (name) VALUES ('ILL');
484 INSERT INTO config.copy_status (name) VALUES ('Cataloging');
485 INSERT INTO config.copy_status (name) VALUES ('Reserves');
486 INSERT INTO config.copy_status (name) VALUES ('Discard/Weed');
487 INSERT INTO config.copy_status (name) VALUES ('Damaged');
489 SELECT SETVAL('config.copy_status_id_seq'::TEXT, 100);
492 CREATE TABLE config.net_access_level (
493 id SERIAL PRIMARY KEY,
494 name TEXT NOT NULL UNIQUE
496 COMMENT ON TABLE config.net_access_level IS $$
498 * Copyright (C) 2005 Georgia Public Library Service
499 * Mike Rylander <mrylander@gmail.com>
501 * Patron Network Access level
503 * This will be used to inform the in-library firewall of how much
504 * internet access the using patron should be allowed.
508 * This program is free software; you can redistribute it and/or
509 * modify it under the terms of the GNU General Public License
510 * as published by the Free Software Foundation; either version 2
511 * of the License, or (at your option) any later version.
513 * This program is distributed in the hope that it will be useful,
514 * but WITHOUT ANY WARRANTY; without even the implied warranty of
515 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
516 * GNU General Public License for more details.
520 INSERT INTO config.net_access_level (name) VALUES ('Filtered');
521 INSERT INTO config.net_access_level (name) VALUES ('Unfiltered');
522 INSERT INTO config.net_access_level (name) VALUES ('No Access');
524 CREATE TABLE config.audience_map (
525 code TEXT PRIMARY KEY,
530 COPY config.audience_map FROM STDIN;
531 Unknown or unspecified The target audience for the item not known or not specified.
532 a Preschool The item is intended for children, approximate ages 0-5 years.
533 b Primary The item is intended for children, approximate ages 6-8 years.
534 c Pre-adolescent The item is intended for young people, approximate ages 9-13 years.
535 d Adolescent The item is intended for young people, approximate ages 14-17 years.
536 e Adult The item is intended for adults.
537 f Specialized The item is aimed at a particular audience and the nature of the presentation makes the item of little interest to another audience.
538 g General The item is of general interest and not aimed at an audience of a particular intellectual level.
539 j Juvenile The item is intended for children and young people, approximate ages 0-15 years.
543 CREATE TABLE config.lit_form_map (
544 code TEXT PRIMARY KEY,
549 COPY config.lit_form_map FROM STDIN;
550 0 Not fiction (not further specified) The item is not a work of fiction and no further identification of the literary form is desired
551 1 Fiction (not further specified) The item is a work of fiction and no further identification of the literary form is desired
556 h Humor, satires, etc. The item is a humorous work, satire or of similar literary form.
557 i Letters The item is a single letter or collection of correspondence.
558 j Short stories The item is a short story or collection of short stories.
559 m Mixed forms The item is a variety of literary forms (e.g., poetry and short stories).
560 p Poetry The item is a poem or collection of poems.
561 s Speeches The item is a speech or collection of speeches.
562 u Unknown The literary form of the item is unknown.
565 CREATE TABLE config.language_map (
566 code TEXT PRIMARY KEY,
570 COPY config.language_map FROM STDIN;
577 afa Afroasiatic (Other)
578 afh Afrihili (Artificial language)
585 alg Algonquian (Other)
587 ang English, Old (ca. 450-1100)
591 arg Aragonese Spanish
595 art Artificial (Other)
599 ath Athapascan (Other)
600 aus Australian languages
607 bai Bamileke languages
636 cai Central American Indian (Other)
640 cau Caucasian (Other)
661 cpe Creoles and Pidgins, English-based (Other)
662 cpf Creoles and Pidgins, French-based (Other)
663 cpp Creoles and Pidgins, Portuguese-based (Other)
666 crp Creoles and Pidgins (Other)
679 dra Dravidian (Other)
681 dum Dutch, Middle (ca. 1050-1350)
690 enm English, Middle (1100-1500)
692 -esk Eskimo languages
704 fiu Finno-Ugrian (Other)
708 frm French, Middle (ca. 1400-1600)
709 fro French, Old (ca. 842-1400)
728 gmh German, Middle High (ca. 1050-1500)
729 goh German, Old High (ca. 750-1050)
734 grc Greek, Ancient (to 1453)
735 gre Greek, Modern (1453- )
741 hat Haitian French Creole
763 ina Interlingua (International Auxiliary Language Association)
766 ine Indo-European (Other)
768 -int Interlingua (International Auxiliary Language Association)
772 iro Iroquoian (Other)
814 -lan Occitan (post-1500)
831 luo Luo (Kenya and Tanzania)
842 map Austronesian (Other)
849 mga Irish, Middle (ca. 1100-1550)
852 mis Miscellaneous languages
853 mkh Mon-Khmer (Other)
864 mul Multiple languages
870 nai North American Indian (Other)
871 nap Neapolitan Italian
874 nbl Ndebele (South Africa)
875 nde Ndebele (Zimbabwe)
881 nic Niger-Kordofanian (Other)
883 nno Norwegian (Nynorsk)
884 nob Norwegian (Bokmål)
895 oci Occitan (post-1500)
902 oto Otomian languages
910 peo Old Persian (ca. 600-400 B.C.)
912 phi Philippine (Other)
918 pra Prakrit languages
919 pro Provençal (to 1500)
932 sag Sango (Ubangi Creole)
934 sai South American Indian (Other)
935 sal Salishan languages
936 sam Samaritan Aramaic
946 sga Irish, Old (to 1100)
953 sit Sino-Tibetan (Other)
975 ssa Nilo-Saharan (Other)
1036 wak Wakashan languages
1041 wen Sorbian languages
1059 CREATE TABLE config.item_form_map (
1060 code TEXT PRIMARY KEY,
1064 COPY config.item_form_map FROM STDIN;
1070 r Regular print reproduction
1074 CREATE TABLE config.item_type_map (
1075 code TEXT PRIMARY KEY,
1079 COPY config.item_type_map FROM STDIN;
1081 t Manuscript language material
1083 k Two-dimensional nonprojectable graphic
1084 r Three-dimensional artifact or naturally occurring object
1087 e Cartographic material
1088 f Manuscript cartographic material
1090 d Manuscript notated music
1091 i Nonmusical sound recording
1092 j Musical sound recording