When processing a reference to an external entity whose declaration contains a public identifier but no system
identifier, OmniMark must be told how to locate the entity's replacement value. A library
declaration
performs this function.
library
declarations can also be used by OmniMark in a library file specified on the command line by
using the -library
command-line option. A library file can be used either while an OmniMark program is
being run or while a DTD is being compiled. It gives public/system identifier bindings that are only used during
that run.
For example, if a DTD is being compiled with the OmniMark program on one computer, and if the result will be
used on another computer (that may have a different directory structure), it is usually appropriate to put the
machine-specific library
file declaration in library files during each of the runs.
This example of a library
declaration could be used to locate the entity sets for alphabetic characters
defined in Annex D of ISO 8879.
library "ISO 8879-1986//ENTITIES Added Latin 1//EN" "iso-lat1.gml" "ISO 8879-1986//ENTITIES Added Latin 2//EN" "iso-lat2.gml" "ISO 8879-1986//ENTITIES Greek Letters//EN" "iso-grk1.gml" "ISO 8879-1986//ENTITIES Monotoniko Greek//EN" "iso-grk2.gml" "ISO 8879-1986//ENTITIES Russian Cyrillic//EN" "iso-cyr1.gml" "ISO 8879-1986//ENTITIES Non-Russian Cyrillic//EN" "iso-cyr2.gml"