The New Titles database is a current awareness service that provides
periodic lists of titles cataloged by the Brown University Library. This
version of the New Titles list was first produced in October 2002
using MySQL (current version: 4.0.8) and PHP (current version: 4.2.2).
It was developed on walton.rockcluster.brown.edu and moved to the
production server, dl.lib.brown.edu, in March 2003. Starting with
January 2003 the list is produced on a quarterly basis.
For further information, view spreadsheet of file structure and
statistics at
and list
of steps for producing quarterly lists at
. This documentation was updated
in April 2003. [JMR]
_______________________________________________________________________
JOSIAH DATA OUTPUT
One initial list is created in Josiah, using a range of cataloging
dates. If present, Lexis-Nexis records should be removed from the file
(these records contain a MARC 035 field |aTCCLN).
From this list two primary output files are created in Josiah, one for
titles with call numbers in the bib record and another for titles with
call numbers in
the item record. Exclude CJK and Arabic language records from these
lists. The output files contain delimited fields for author, title,
imprint, bibliographic record number, bibliographic location, and
bibliographic or item call number (in that order). Both files are output
in call number order.
In the third iteration, separate files are output for (1) CJK materials,
(2) Arabic titles, (3) reference materials, (4) serials (LC), (5)
serials (non-LC) and (6) electronic serials.
Using the initial list:
(1) Create the CJK subfile from a search of Chinese, Japanese,
Korean item locations. The file contains delimited fields for author,
title, imprint, bibliographic record number, bibliographic location,
bibliographic call number and item call number (in that order). It has a
second call number field since this list draws call numbers from either
the item or the bib record.
(2) Create the Arabic subfile from a search on records coded for
the Arabic language.
(3) Create the reference subfile from a search of reference item
locations for respective buildings (Rock, Sciences, Hay, Orwig,
Demography, and Artslide). The file contains delimited fields for
author, title, imprint, bibliographic record number, bibliographic
location, bibliographic call number and item call number (in that
order). It has a second call number field since this list draws call
numbers from either the item or the bib record.
(4-6) Serials
a. Create a general serials file using a search of bibliographic
format=s
b. Three subfiles are created from the general serials file: one
for titles with call numbers in the bib record, another for titles with
call numbers in the item record and one for titles with call numbers in
local field 990. For each output include author, title, imprint,
bibliographic record number, bibliographic location, and one call number
type (bibliographic, item or 990). These will have only one call number
field.
CALL NUMBERS
Use the sorting of the files by call number to verify that records
contain a classification and book number. If any missing, enter the
appropriate data in the Josiah record.
UPLOAD
Create delimited files using the Josiah User-selected format and upload
to ets.cis.brown.edu. For each file:
a. From the Josiah list function, choose U, then C
b. Enter the fields listed above and in that order
c. On the screen for Record format, change the field delimited to
ASCII character vertical bar, and the repeated field character to ASCII
character circumflex
d. Choose C
e. Name the file
f. Output the file to the server by entering "y"
g. Follow the usual steps to FTP the file to the server
h. Return to the list of output files on the Josiah server and
delete the file you have successfully uploaded (there is space for only
10 files) [DC]
_______________________________________________________________________
MYSQL
Database: newtitles
The Josiah data files are uploaded into 7 MySQL tables in the
'newtitles' database. An additional permanent table is used to
associate call numbers used as form values with subjects names. In
the previous iteration a merged 'bibs' and 'items' file was created
to search by format ([videorecording], [microform], etc.). The
'UNION' command in MySQL 4.0 made this unnecessary.
Data from the previous quarter is retained in 7 tables called
'bibs_old', etc.
The total number of records in the database for july-dec 2002 is 31,433
(6.4 MB). The tables are described below:
- Table: 'bibs'
- Columns: author, title, imprint, bibno (primary key), location, callno
- Number of Records: 21,762 (4.4 MB) july-dec 2002 [24,581 jan-june 2002]
- Note: This is the primary table for L.C. call number types.
- Scripts: All L.C call number scripts plus 'non-harris', 'location',
'storage' and 'format' query this table. 'Storage' and 'format' also
query the 'items' table.
- Table: 'items'
- Columns: author, title, imprint, bibno (primary key), location, callno
- Number of Records: 6,282 (1.4 MB) july-dec 2002 [5,915 jan-june 2002]
- Note: This is the primary table for Harris and Cutter call number types.
- Scripts: 'harris_poetry', 'harris_plays', 'harris_music',
'harris_french', 'harris_videos', 'jcb', 'rhodeisland', 'itemsearch',
'format', 'storage'. ('Format' and 'storage also query the 'bibs' table
- Table: 'ref' [new for july-dec 2002]
- Columns: author, title, imprint, bibno, location, callno
- Number of Records: 173 (37.8 KB)
- Note: Includes only LC call numbers
- Script: 'reference'
- Table: 'lc_serials' [new for july-dec 2002]
- Columns: author, title, imprint, bibno, location, callno
- Number of Records: 340 (53.2 KB)
- Script: 'serials_lc'
- Table: 'nonlc_serials' [new for july-dec 2002]
- Columns: author, title, imprint, bibno, location, callno
- Number of Records: 396 (63.5 KB)
- Script: 'serials_nonlc'
- Table: 'ejournals' [new for july-dec 2002]
- Columns: author, title, imprint, bibno, location, callno
- Number of Records: 506 (74.6 KB)
- Script: 'serials_elec'
- Table: 'cjk' [new for july-dec 2002]
- Columns: author, title, imprint, bibno, location, callno
- Number of Records: 1,824 (363.6 KB)
- Script: 'cjk'
- Table: 'subjects'
- Columns: subjectid, class, subject_name
- Number of Records: 150 (10.6 KB)
- Note: This table was created to match form values with subject names
on results pages, e.g., 'PK' with 'Indo-Iranian Languages &
Literatures'.
- Scripts: All non-custom scripts
DATA MANIPULATION
Minimal data manipulation is needed. The 'items' and 'cjk' files have
empty call number fields (|"") which are stripped out before uploading
to MySQL. Additionally I strip out the prefix '880-XX' in the cjk
file. Once the data is uploaded I check the bib number for proper
formatting (bibno like "b%"), check for the absence of a call number
(callno is null), and eliminate "Rare" and "Small" in the callno field
since they interfere with subject searching of LC call numbers. In the
lc_serials, nonlc_serials, and ref tables I convert josiah location
codes (Update [table] set location = "Rock" where location = "r0001",
etc.)
Beginning with the July-Sept. 2004 list the Josiah skip field was output.
Queries are run to move the part of the title equivalent to the skip value
to a new field called 'article'. The queries on the web sort by title and
display $article.$title.
LANGUAGE ISSUES
- Some Arabic characters are rendered in the database with a leading '.'
or '`'. These characters appear in the Josiah webpac without the
leading punctuation mark. With the leading '.' or '`' they sort at the
beginning or end of the alphabetical sequence.
SORTING ISSUES
- The bibs file is output in call number order and that is used as the
default sort for L.C. call numbers. Because the items file contains
many non-standard call number types, author is used as the default sort.
The default call number sort sorts by LC class without regard to size
designation; since the call number field is not delimited in the MySQL
database the machine sort places 1-SIZE, 2-SIZE, 3-SIZE titles at the
beginning of the list.
- Titles which begin with double quotes do not sort properly because
the double quotes are replaced by a space when the file is uploaded.
Using ltrim(title) resolves this sorting problem.
_______________________________________________________________________
PHP SCRIPTS
SEARCH FORM (index.html)
The call number breakdown used on the search form is that used in previous
versions of New Titles. That in turn was based on the traditional circulation
statistics breakdown with changes suggested by selectors. Because different
scripts are used to retrieve results for different call number patterns, the
search form uses the script, 'link.php', to generate searches. For example:
-