2.4. XML Infrastructure Directories

These directories are part of the XML infrastructure and are created (or soon will be) by the xml-core package. They are defined as the following:

/usr/share/xml/
declaration
schema
entities
misc

The xml-core package also creates the same set of infrastructure directories in /usr/local/share/xml for local installation of resources.

The layout of the XML infrastructure directories is similar to the layout in /usr/share/sgml. Note, however, that there is no notations directory under /usr/share/xml and that the dtd directory is now named schema.

The XML infrastructrure directories contain basic XML infrastructure files, convenient locations into which standard, commonly used resources may be installed, and installation directories for packages with minimal files and which do not warrant a new tree in a new application directory named /usr/share/xml/application-dir.

Packages with a large number of files, or with related stylesheets and other resources should create their own non-versioned application directory in /usr/share/xml. This directory is typically named after the set of resources, such as /usr/share/xml/resource-name, for example.

When a package directory is created in one of the infrastructure directories, it may or may not have version-numbered subdirectories, at the discretion of the maintainer. If version-numbered subdirectories are created, their names are the version numbers themselves. For example, the directory /usr/share/xml/schema/foo/1.1 contains version 1.1 of the packaged foo resources.

2.4.1. Directory Descriptions

schema

Packages with a small number of DTD or other schema-only files and no catalog files may install their files directly into this directory, but installation into a named subdirectory is preferable. Schema packages (including DTDs) that have one or more catalog files must create their own subdirectory, so that the catalog file (e.g. catalog.xml) has a unique location, and hence, filename.

Packages that also contain stylesheets or other non-schema files should create their own application directories in /usr/share/xml and install their files into that directory.

declaration

All declarations needed by more than one package should be placed here.

entities

Entities for general use are placed in here.

misc

If it doesn't seem to belong in any other directories, put it in here.