Documentation Center

Adding the DTD to the XMetaL catalogs

So that XMetaL can locate the DTD for your specialization, you must add it to the XMetaL catalog files.

Procedure

  1. Open the file Editor\DITA\XACS\dita_xac_catalog_specialized.xml in a text editor (for example, notepad)
  2. Search for {nameOfDTDYouCopied}, so for example if learningPlan was searched, you may find:
    ...
    <mapping>
    	<pubid>-//OASIS//DTD DITA Learning Plan//EN</pubid>
    	<sysid>learningPlan</sysid>
    	<handler>DitaDocHandler</handler>
    	<type>ditabase</type>
    </mapping>
    ...
  3. Duplicate the entire mapping block and change to:
    ...
    <mapping>
    	<pubid>{PublicIdOfYourDTD}</pubid>
    	<sysid>{yourDTDName}</sysid>
    	<handler>DitaDocHandler</handler>
    	<type>ditabase</type>
    </mapping>
    ...
    In the example for the machineAssembly.dtd:
    
    ...
    <mapping>
    	<pubid>-//OASIS//DTD DITA Learning Plan//EN</pubid>
    	<sysid>learningPlan</sysid>
    	<handler>DitaDocHandler</handler>
    	<type>ditabase</type>
    </mapping>
    <mapping>
    	<pubid>-//SDLTRISOFT//DTD DITA Machine Assembly//EN</pubid>
    	<sysid>machineAssembly</sysid>
    	<handler>DitaDocHandler</handler>
    	<type>ditabase</type>
    </mapping>
    ...
  4. Open the file Editor\Rules\dita_specialized.soc in a text editor and search for {nameOfDTDYouCopied}, so in the example, search learningPlan and find:
    ...
    PUBLIC "-//OASIS//DTD DITA Learning Plan//EN" "..\DITA\XACs\learningPlan\learningPlan_ditabase.dtd"
    ...  
  5. Duplicate this line and replace the first part with your PublicId and rename in the second part {nameOfDTDYouCopied} with {yourDTDName}
    In the example for the machineAssembly.dtd:
    
    ...
    PUBLIC "-//OASIS//DTD DITA Learning Plan//EN" "..\DITA\XACs\learningPlan\learningPlan_ditabase.dtd"
    PUBLIC "-//SDLTRISOFT//DTD DITA Machine Assembly//EN" "..\DITA\XACs\machineAssembly\machineAssembly_ditabase.dtd"
    ...