The program is documented in an English and in a Spanish manual, but the English is of a rather poor quality.
Related to this program is ISODB3, by the same author. ISODB3 converts ISO 2709 files into the dBase structure.
This will produce an output like this:
Structure for database: C:books.dbf Number of data records: 0 Date of last update : 11/14/95 Field Field Name Type Width Dec 1 AUTHOR1 Character 30 2 AUTHOR2 Character 30 3 AUTHOR3 Character 30 4 TITLE Character 50 5 PLACE Character 30 6 PUBLISHER Character 30 7 PAGES Character 10 8 ILL Logical 1 9 ISBN Character 14 10 KEYWORDS Character 50 ** Total ** 275(This is not the structure of an existing bibliographic dBase file, which might be up to 30 or 50 fields long.)
It is recommended to browse the input file in order to see if there are fields
Record No. 1 AUTHOR1 Willis, Joe D. AUTHOR2 Freye Campbell, Linda AUTHOR3 TITLE Exercise psychology PLACE Champaign PUBLISHER Human Kinetics PAGES xi, 258 ILL Y ISBN 0-87322-366-7 KEYWORDS psychology; fitness; physical educationIn this example the fields AUTHOR1, AUTHOR2 and AUTHOR3 should form one CDS/ISIS field in the end, and the field KEYWORDS must be split up into 3 occurrences of one CDS/ISIS field.
This can be done by the means of a FST, which has to be made with an editor. The general structure of this kind of FST is:
target field numbering FST technique dBase numbering 1 0 v1In the case of the example used here, the FST may look like this:
1 0 v1 1 0 v2 1 0 v3 2 0 v4 3 0 v5 4 0 v6 5 0 v7 6 0 v8 7 0 v9 8 0 v10 |;|The program will read this like:
db3isoYou will now see this text:
dBASE III to ISO exporter utility. ver 2.70, written by Alejandro, 3/1987. Select: [E]xport, e[X]it >The program will ask some questions, which may be answered by typing the appropriate information. In some cases you can answer by a simple <return> to indicate that you accept the default options the programs suggests.
The questions to be answered are:
You can only renumber the records when your FST contains a line like this:
1 0 MFNThis means that the dBase record number will be stored into the ISO 2709 field no. 1. Normally this numbering will start at 1, but DB3ISO allows you to change that. Probably this was meant for databases in which the CDS/ISIS records were updated from the original dBase file.
This is an example of a filled out screen:
dBASE III to ISO exporter utility. ver 2.70, written by Alejandro, 3/1987. Select: [E]xport, e[X]it >E dBASE III file name [.DBF]:books books.DBF Output ISO file [ISO.MST]:books.iso books.iso Input Field Selection Table file [.FST]: Field separator [#]:# Record separator [#]:# Starting record [ 1 ]: Last record [ 100 ]: Renumber from: 100 record(s) exported. Select: [E]xport, e[X]it >X End of running.(The input made by the user is printed bold printface; if you do not fill anything in, the program will take it's default values. In practice the screen does not look as nice as this. The program does not clear the screen; it start at the actual position of the cursor.)
When the dBase file contains a memo field, the program will automatically locate the corresponding text file (".DBT") in which the contents of the memo fields are stored:
dBASE III file name [.DBF]:books books.DBF books.DBT
In a dBase file numeric fields normally are preceded with blanks. These blanks will also be found after the conversion in the output. You can avoid this by editing the structure of the dBase source file with dBase (or another dBase-like software). You will need two steps to do so:
replace all [name of field] with ltrim([name of field])
ILL YWhen not filled in, this question mark will be transformed by DB3ISO into a space. You can solve this problem in two ways:
replace all ill with .N. for .not. ill
if v8='Y' or v8='T' then '^bill' fiBoth 'Y' and 'N' must be taken into account, because:
200 0 v4 300 0 v1 300 0 v2 300 0 v3etc. is meant to introduce the field tags of the Common Communication Format (CCF), in which 200 stands for the title field and 300 for the author field. After this, you can import the ISO 2709 file into your database without further modifications.
But it is better not to do so. Use the numbering of the source field as long as possible, which probably results in not using any conversion table for DB3ISO. Experience shows that in most cases you still need an FST when you import the file. You can use this FST to add some information that was not in the dBase file, e.g. the date of the conversion. Then it might become tricky to make a distinction between the original numbering, the ISO 2709 numbering and the CDS/ISIS tags.
A FST for the example we used here may look like this:
22 0 '^a19960210' 100 0 "^a"v9 200 0 "^a"v1/,"^a"v2/,"^a"v3/ 300 0 "^a"4 400 0 "^a"v5,"^b"v6 460 0 "^av7" p", if v8='Y'or v8='T' then '^bill' fi 620 0 "v10(We assume the CDS/ISIS database uses the CCF tags.) After the conversion the ";" of the keyword can be transformed into the occurence delimiter "%" with a CDS/ISIS modification program, e.g. GMOD. The "," in the author field may be changed to "^b" by the same kind of program.
Piet de Keyser's Manual Collection