MARC DTDs and Converters: Beta Version

Announcement to Users of MARC and SGML


We are happy to announce the availability not only of the beta test version of the MARC DTDs, but also new freeware utilities that permit the conversion between the MARC and SGML structures. The new beta versions of the DTDs are intended to be used for field testing and continued implementation of MARC in SGML (Standard Generalized Markup Language) systems. We are targeting this announcement to subscribers to the MARC Electronic Forum since you represent those most interested in the development and use of this new implementation of SGML for MARC data.

SGML, as applied in this suite of DTD's and related files, makes it possible to move MARC cataloging data into the SGML environments. Another goal of the MARC DTD project was to develop freeware MARC-to-SGML and SGML-to-MARC conversion utilities to facilitate this movement of data between the two data structures. This beta release includes those long-awaited utilities which should facilitate advanced testing of the MARC DTDs.

Conversion Utilities and Other Things New

The development of the conversion utilities was a major effort and led to a few changes in the MARC DTDs themselves. It was decided to write conversion software using PERL ( Practical Extraction and Report Language) Version 5. It was decided to develop the utilities as PERL "scripts" since as an interpreted programming language, it would not be necessary to recompile the PERL scripts to run on different software platforms. PERL interpreters are available for a variety of platforms including DOS, Windows, Windows NT, OS/2, Macintosh, and UNIX. PERL interpreters are also free, which means that potential users would not have to buy anything to make use of the utilities.

Besides the availability of conversion software, MARC SGML experimenters will also notice a change in the MARC DTDs themselves. The names of the DTDs are now "mrcafile.dtd" and "mrcbfile.dtd", instead of "mrca.dtd" and "mrcb.dtd" as they were with the alpha test versions. The names were changed to reflect the change in the scope of the DTDs. They now support the creation of multiple MARC records (that is, files of records) as a single SGML instance. The alpha test version forced each MARC record to be handled as a separate SGML document, which did not prove to be an effective use of SGML. Since MARC records are rarely exchanged individually, the handling of them in SGML as files of records made sense and was incorporated into the beta version.

What You Need To Do:

To make use of the beta version of the MARC DTDs and the conversion software, you will need various files and support documents. They are all available to you electronically via FTP (File Transfer Protocol) from an anonymous file server maintained by the Library of Congress in Washington, D.C. The host domain (address) of LC's FTP server is: ftp.loc.gov

Once an FTP session is initiated, you will be prompted for a name. You should enter:

  1. "anonymous"
  2. When you are prompted for a password, enter your Internet address, or simply your name.
  3. At the FTP> prompt, change to the MARC DTD subdirectory by entering the command: "cd pub/marcdtd" NOTE: The character between the subdirectory names is a forward slash!
  4. Enter the command "dir", if needed, to see a list of the files available in the MARC DTD subdirectory.

Files are actually transferred using the "get" command, which is available with most FTP software. The "get" command will copy a file to the default directory on the machine you are using locally. Some of the files should be transferred as ASCII text files. ASCII mode is usually the default with FTP software. To verify that you are in ASCII mode, enter the command "asc". You FTP software should respond with the message "Type is A" or some similar message which confirms you are set in the ASCII mode. The other possible mode is the binary mode. Entering "bin", or "binary" will switch to binary mode. NOTE: Failure to use ASCII mode when transferring text files such as DTDs and PERL scripts will corrupt them.

To retrieve the numerous entity reference files, use the command "mget" instead of "get". You will be prompted as the systems begins to transfer each entity reference file to you. Answer "y" (yes) to each prompt.

Because the MARC-to-SGML and SGML-to-MARC conversion utilities involve a number of files, they have been compressed into a single file using compression software called PKZIP (from PKWARE). You will need to use PKUNZIP to decompress the conversion utilities. As compressed files, they need to be transferred using the FTP "binary" mode.

If you do not have access to FTP, you may request a diskette containing this file by contacting the Library of Congress, Network Development and MARC Standards Office (NDMSO), who will be acting as the maintenance agency for these utilities.

We encourage you to experiment with the MARC DTDs. The results of testing the beta version of the DTDs and the conversion utilities will allow us to perfect them for future users. If you know of anyone else interested in this effort, encourage them to subscribe to the MARC electronic forum by sending a subscription message to "[email protected]".


Go to:


The Library of Congress

Library of Congress Help Desk (08/14/98)