Notes about APIS Technical Details

Contact UMDL Help for more information.

Download the latest files...


October 11, 2007

Please understand that the template and script are far from a solution that "just works". They generally need to be adapted for each institution. This work requires some experience defining databases and managing data in FileMaker Pro. Use of the script requires someone with Perl programming skills. Perhaps most importantly, a thorough understanding of APIS data standards, and the specifications for submitting data to the centralized APIS database, are necessary. Given these prerequisites, I am more than willing to provide consultation. Thanks. John Weise


May 30, 2006

Significant changes have been made to the FileMaker Pro template to better support publication data, including the building of perseus citation links. Publication data has been moved to a new file called apisfmp_pubs.fp5 and related back to the main file through a portal. An unlimited number of publication references can now be added for each record in the main database.

The Perl script for converting data to the format required for the APIS Central database has been modified to support changes made to the FileMaker template and to correct minor problems. Data must now be exported from FileMaker as XML rather than HTML. Within FileMaker there is a script in the Scripts menu called "DLPS Export 20060412" which will export the records in the proper XML format. The Perl script is then run against the XML data to generate a file that can be submitted to the APIS central database.

Migration of data records to the new template can be done as follows:.

Once the migration is complete, it is possible to add publication data, including Perseus citation data, in the portal. This actually modifies the apisfmp_pubs.fp5 file..


December 19, 2005

The Perl script for converting data to the format required by APIS Central database has been modified.

Fixed issues identified by Columbia University.

namely...

6) Non-Michigan repositories in Mich. feed
7) Pipes must be removed from tag data, it conflicts with use of pipes to delineate the parts of the tag.

Plus repeating field value issue.

The remaining issues outlined at above link were data issues and handled by papyrologists.


June 3, 2005

The Perl script for converting data to format required by APIS Central database has been modified.

Handling of dd655 mapping corrected.

Handling of image files improved insituations where 600 dpi but not overview images exist, and the 600 dpi filename is not replicated in the overview image field.


January 25, 2005

The Perl script for converting data to format required by APIS Central database has been modified.

Most importantly, the "Materials" field is now mapped to the 655_phy field, as required for use in the Central Database.

Also added is a simple filter for "Materials" field values. It is a useful alteration for Michigan's data and may be useful to others. The %MaterialLong hash should be edited to serve local needs.

            ...

            my $fn = $fieldnames[$fieldcount]; 
            my $fv = $line; 
 
            if ( $fn eq 'Material' ) 
            { 
                # this hash may be edited to map abbreviations used 
                # in the "Material" field to longer terms preferred 
                # by APIS Central. 
                # There is a Material_Long field in the FileMaker database, 
                # however it was later decided that the Material field 
                # should be used, with mapping done here, to avoid another 
                # distribution of the template and to facilitate customizations. 
 
                # the value of the field is left unchanged if it does not appear 
                # as a key in the hash. 
 
                my %MaterialLong = ('wt'    => 'Wax Tablet', 
                                    'wood'  => 'Wooden Tablet', 
                                    'ost'   => 'Ostracon', 
                                    'pap'   => 'Papyrus', 
                                    'par'   => 'Parchment', 
                                    'parch' => 'Parchment', 
                                    ); 
 
                # remove leading and trailing whitespace from value 
                my $fv_key = $fv; 
                $fv_key =~ s,$\s*,,; 
                $fv_key =~ s,\s*^,,; 
 
                # lowercase the key for consistent lookup 
                $fv_key = lc($fv_key); 
 
                if ( exists $MaterialLong{$fv_key} ) 
                { 
                    $fv = $MaterialLong{$fv_key}; 
                } 
            } 
 
            my $fieldString = &fieldPrep($fn, $fv, \%marcFieldCountHash); 

            ...



January 24, 2005

A minor change has been made to the TitleStatement field definition, to conform to conventions of the central apis database. The long date is no longer appended. The new definition is...
If(IsEmpty(Type of text_title), INV NO, Type of text_title)

As of February 4, 2004

The University of Michigan Papyrus Collection uses FileMaker Pro to create and edit cataloging records for items of the collection. In May 2002, several fields were added to the database. Some, such as "creation date" were added for administrative purposes, while most others were added for compatability with the APIS central database (e.g., Preferred Citation).

Public access to APIS is currently deployed through generalized image database access mechanisms developed and managed by the University of Michigan, Digital Library Production Service, Image Services. The use of generalized methods allows the APIS database to be searched together with dozens of other collection databases, and simplifies the task of providing public access. Image Services uses a single SGML DTD for all collections, including APIS, yet maintains the unique attributes of each collection included in the system.

Digitization for APIS is done by the University of Michigan Digital Library Production Service.


Until December 31, 2000

nigelk@umich.edu 1997-04-24

This file gives what details are currently availalbe for the Michigan APIS files, systems, and technical practices. In this directory you will find the following files of interest:

Mich.fmpro.clone.Hqx
When un-binhex'd, this will yield a blank FileMaker Pro 3 database as is used by Michigan Papyrology. Link to field description document. When there are records in the database, they can be exported to SGML using a "tab-separated" export, exporting only the field "export.sgml.3". This exports all the records (in no particular order other than what's currently in force in the fmpro database) 99% of the way to SGML.
apis.dtd
The DTD used in the Michigan SGML database. This has no formal public identifier, it is currently version 0.2. An APIS contains one or more ENTRY elements, ENTRY's are basically all the fields of a fmpro record, chunked according to five broad categories, with some even more specific distinctions. The optional IDLIB element at the beginning of an APIS is more or less a stub for possible future ID/IDREF use.
strip.gml.pl
reorder.entries.pl
These are two perl5 scripts used to massage the fmpro output into better SGML, deal with odd characters, and in the case of the latter, order the individual entries by a particular discipline. This last step is done to save computing and massaging later on, as the ordering can be depended upon. Once fmpro output has been generated, these two scripts are used on the resulting text file. I use these in a UNIX environment, I use perl5.003. To use:
echo "<APIS>" > apis.entries.sgml
strip.gml.pl fmpro.file.gml > tmp1
reorder.entries.pl tmp1 >> apis.entries.sgml
echo "</APIS>" >> apis.entries.sgml
where apis.entries.sgml will be the final file, ready for normalization or what have you.

Return to Technical Spec Page