MP Batch
MP Batch GUI
MP Batch GUI
Name/Version Reviewed: MP Batch / version
Reviewer / Date: Hugh Phillips / March 22, 2003
Date of last known release: March 6, 2003 (version
Function: Provides a GUI interface to cns and mp that allows batch processing of all selected files in a directory.
Documentation: Included as part of the Help menu in the application
Get application from: > Downloads > Utilities & Tools
Platform: MS-Windows
Principal Contact: Bruce Westcott,
Status: Functional, general release
Metadata Storage Structure: not applicable
MP Batch provides graphical user interface to mp and cns. By way of the GUI, this tool enables an alternate method for a user to accomplish what can be done by way of cns and mp command line operations or shell scripting and one or more mp configuration files. MP Batch appears to be most useful for someone who wants to process a single metadata file at a time without having to type into a command window. It also provides an alternative way to select and process multiple metadata files without having to construct a 'do' loop in a shell or shell script. MP Batch has a command line mode of operation in addition to the GUI and can write a batch file to process explicitly named files whenever the batch file is executed.

MP Batch has a clear interface for selecting files to process - singly, in groups of 2-3, or globally in a directory. Its use is intuitive: browse to the folder containing files of interest, select an input filename pattern and extension using wildcards if necessary, then move candidate files from the Available files window to the Selected Files window. Indicate a configuration file globally for mp and cns if desired, and alter the default language type to enable cns and mp to recognize non-English metadata element names if necessary. Application of cns and/or mp to the Selected files is enabled by checkboxes for cns and mp. Input to cns can be pre-filtered by a specified metadata element name 'alias' file, and input to mp can be pre-filtered for document.aml structuring if necessary. Any of the possible outputs from cns and mp can be selected for 'building' and the output filename extensions and output file locations set as desired. If a configuration file is in use, then specification of outputs and their names is disabled (these are typically specified in the configuration file). The Create Batch File button on the main MP Batch window allows all the selected operations, filters, output file names and locations for the selected files to be written into a standalone batch file that can be executed at any time.

The tool is best used for processing single files. The GUI allows fairly simple navigation to a candidate file. If a standard configuration file is called, then MP Batch is an attractive improvement over opening a shell window, navigating to the directory of interest, then typing in the command to call mp (or cns), a configuration file, and the input file. It becomes even more useful if different projects call for different output that would be specified by different configuration files; different MP Batch .ini files could point to these different configuration files. Without manually specifying Output File types and locations, the output created by way of a config file with MP Batch comes out in the same directory as the input file, which is exactly what most users will want. I see from 'About' information for MP Batch that it 'provides a GUI interface to mp,' and in this respect it seems to be quite successful when applied to one or a couple files.

This tool may be used to operate on large numbers of files sequentially (hence the Batch part of the MP Batch name). This is supported by the statement from the Help that says "The purpose of the MP Batch Processor is to allow 'mp' users to easily construct and maintain batch processor files that support the processing of multiple sets of input records through 'mp'..."

I tried to think of scenarios where I would want push large numbers of files through mp or cns in batch mode. Under such an operation one has to suspend concern about mp 'errors' files and cns 'leftovers' files because no one can easily review hundreds of them. Except for cases in which the input files are homogeneous and their cns 'leftovers' are superfluous (non-metadata) text, it is difficult to imagine a scenario where the batch application of cns is appropriate. When cns gets lost in a document, major portions of the input metadata can end up in the leftovers rather than the processed output document. Conditions under which one might suspend concern about mp reported errors include: candidate files that have already been processed with mp and their error level considered acceptable; groups of similar files produced from templates that are squeaky clean; and shortage of time - one has many files to process and is willing to accept imperfect results in exchange for a speedy process. Possible mp batch process scenarios (and their logical implementation) include:

I have performed some sort of global edit on a collection of metadata (say search and replace of a contact email address) and I need to regenerate output metadata forms incorporating the edit. If I used a shell script for the search and replace operation, then I would logically also use the script to call mp. [Global editing is an area where the capabilities of MP Batch could be beneficially strengthened. Batch mode search and replace operations in metadata collections for individual elements or parent metadata elements and their children are a recurring concern to custodians of metadata.]

I have a batch process for production of orthophoto metadata from a template and image specific information and I need to create all the metadata forms for each orthophoto instance. If I used a script for populating templates with image specific information, then I would logically also use the script to call mp.

Somebody gives me hundreds of datasets that have metadata in text form, and I want to convert that metadata to HTML. This is definitely a situation under which concern about errors would have to be suspended. Because errors in metadata files often can only be fixed one file at a time and fixing them can be an iterative process, it gives little advantage to generate error reports on more files than can reasonably be addressed by a single user in a short period of time. Pushing forward with such an operation may be justified because of time constraints or under conditions where it is known that the source text files are already nearly or fully mp compatible and CSDGM compliant.

In order to obtain the same control over mp output formatting that the command line and shell user would have, the MP Batch user needs to have one or more mp configuration files available. Someone who is confident to edit a configuration file can specify in the configuration file all of the output file types and naming conventions of the Output Files section of MP Batch, with the exception of where the output file ends up.

MP Batch only enables the batch application of mp and cns whereas a shell scripted approach can include any number of pre and post filters for metadata processing (e.g. spell check, browse image insertion, err2html) in addition to mp. It is unlikely that someone comfortable with use of mp or cns by way of shell scripting would break existing scripts apart in order to insert the use of MP Batch by way of its GUI or its command line backdoor.

In summary, MP Batch provides an alternate method to use mp and cns that will be helpful and convenient to some users. However to gain maximum benefit, the tool should be used in conjunction with a configuration file assembled by someone who understands some of the intricacies of a configuration file. This tool is not recommended for processing multiple metadata files in batch mode unless the user is knowledgeable about the input documents and their level of error, and already knows, understands, and accepts the type of cns 'leftovers' and mp 'errors' the batch process will produce.

Cost: none
Notable Plus:
Notable Minus:
The ease by which multiple files can be selected for processing by cns and/or mp could lead the unwary user to neglect examination and usage of the cns 'leftovers' and mp 'errors' files produced during the batch process. This may result in loss (from final metadata) of unrecognized metadata elements and values and final metadata that is carelessly non-compliant with the CSDGM. Metadata preparation and validation is usually an iterative process treating, examining, and re-examining one document at a time. Multiple document batch application of cns and mp will rarely be desirable, except possibly under scenarios similar to those outlined under the 'Description' in this review.

Only one (mp/cns) configuration file can be specified for a single run. This only presents a problem in the event of chained cns and mp use under MP Batch. I can't readily imagine a case when I would want to use a different configuration file for cns and mp, but the tool does not give the user that flexibility if needed.

Metadata Exchange: not applicable
The tool has a logical and well designed main control window. Anyone who is familiar with the command line options for mp and cns will readily recognize their implementation in the tool by way of checkboxes and Windows Browse To file specification boxes. For such a user, practically no Help documentation is necessary, however this tool provides an extensive on-line Help document accessed through the Help menu. In addition to documenting the tool itself, the Help menu also provides access to Peter Scheweitzer's web pages documenting cns and mp.

The Help file doesn't explain 'command line logging,' available through Tools > Options. This window has a 'command line logging' checkbox and file browser to specify a 'command line logging' file. Some experimentation reveals that this file stores the commands executed when the 'Execute' button is activated. Each application of 'Execute' overwrites an existing logging file. It is not cumulative and there is no time information other than the date stamp on the file. Most users will forget to open a new log file for each 'Execute.'

The tool is provided as a Windows installer file, and installed without problem under Windows 2000. The Help indicates that the tool is intended for Windows 98+ environments. The installation makes the tool available on the Start menu for all users, which is exactly what most implementors will want. When the tool is run for the first time by each user, a warning is presented that the location of mp must be specified, and immediately thereafter a dialog window (the same as the Tools > Options menu item) opens that allows the path to mp and cns to be set.

The Options window has a Convert HTTP Hyperlinks to relative paths option checkbox (inactive when a configuration file is in use). In general, it is desirable to leave this checked. Otherwise, in output metadata the hyperlink to linked documents, e.g. the FAQ (Questions & Answers) metadata from the HTML (Outline) metadata is a fully resolved path to the file. This linkage will fail if the files are moved to a new location.

The tool is dependent upon a working installation of cns and mp. These are (sensibly) not provided with the tool because they are so frequently updated. MP Batch is available for free public download. This is the first release of the tool so a history of maintenance has not been established. The 'About' information for the tool indicates that it is 'unsupported.'

The tool is configurable to the extent that filters (alias files for cns, document.aml preprocessing for mp) can be called and the types of output, their locations and filename extensions can be specified. The tool allows multiple processing templates to be specified, saved and recalled by way of .ini files that the tool generates. The tool will be forward compatible with revisions to the CSDGM as long as the command-line options to mp and cns do not change as a result. No source code for the tool is provided.

Tool Reliability:
The tool could not be caused to fail, however by way of the tool, it is possible to present non-metadata documents and files to cns and mp and thereby produce unexpected and meaningless output.

The command line backdoor to MP Batch also worked successfully when the Available Files list in the specified .ini file is filtered appropriately to show only metadata files, or the command line options select only a certain file extension. The .ini files does not contain a list of Selected Files, and the documentation for MP Batch in command line mode does not emphasize that its operation in batch mode is global for all files that match the filter (or none) in the selected directory. Without filtering, all kinds of non-metadata files (.gif, pdf) can be presented to cns and mp.

A batch file saved from the MP Batch interface encapsulates the commands necessary to perform the processing specified, on the files currently selected, and if rerun as a standalone batch file, works perfectly.

Sample of Interface:

Edited email concerning tool (reverse chronological order)

Back to Metadata Tools

Last updated on March 22, 2003
Links checked December 18, 2004
Hugh Phillips,