| LSB Addendum: SGML & XML Rationale | ||
|---|---|---|
| <<< Previous | Next >>> | |
Why focusing so much on catalogs in these recommendations? Because they are the key to your directory structure and give a strong working infrastructure that every SGML or XML tool can count on.
Open catalogs have very often been resented because they lead to problems like conflicting SGMLDECLs. However, those problems do not appear if you use them carefully. One of the keys is to avoid putting everything in the same bag, and to have centralized catalogs that are specific to a given DTD.
The fact that they are DTD-specific has a number of advantages:
avoid SGMLDECL conflicts without assuming DTDDECL or DELEGATE support, which many tools do not yet support
avoid duplicate FPI declarations
allow to point to the right version of a given DTD and to the corresponding entities and style sheets from only one place
When splitting your CATALOG pointers in one file per DTD, you also somehow lose a global vision on all the catalogs that are installed on your system. This is why we have introduced the super-catalog, which points to all of the centralized catalogs on your system. It eases many scripting issues.
The super catalog may be used as a default centralized catalog, for example when the DTD is not known, however it cannot be guaranteed that there will not be any declaration conflicts if an application chooses to use this functionality.
OASIS says that all the catalogs should be named CATALOG or catalog. This was impossible to respect in /etc/sgml where you will have the centralized catalogs, because many files cannot hold the same name. Somehow it does not break those directives that much, because all the ordinary catalogs on your system would still be named catalog.
We also chose to specify catalog rather than CATALOG, while OASIS leaves the choice open. We considered that we should encourage one of both versions, whichever it should be, because it is simpler for everyone (scripts, maintainers, packagers, tools authors, ...). In this respect, LSB implementations could be considered as conformant to OASIS, while the contrary would not be true.
| <<< Previous | Home | Next >>> |
| R002--DocBook Directory layout | R004--Open Catalog usage for DocBook |