Create your own DTD plugin

IXIASOFT CCMS includes a plugin, com.ixiasoft.dita13.dtd, which is found in Repository/system/plugins. This plugin, like any standard DITA plugin, includes a file with the information needed to integrate it into the DITA standard DTDs (plugin.xml), and a catalog file (catalog.xml) that points to other DTDs and related files that you want to include as specializations in the CCMS. The plugin also includes a subfolder, dtd, which includes all of the CMS-specific DTDs.

One of these CMS-specific DTDs is IxiaDitabase.dtd. This file is essentially a copy of the DITA 1.3 ditabase DTD with some additional items that are specific to the CCMS. This is the starting point for integrating any other DTDs into the CMS, but rather than make changes to the com.ixiasoft.dita13.dtd plugin, IXIASOFT strongly recommends that you create your own plugin. While this is more trouble up front than simply editing IxiaDitabase.dtd, in the long run it will save you time and really is a best practice.

If you opt to create your own DTD plugin, you should do so before you begin production work in the CCMS. If you begin production work using com.ixiasoft.dita13.dtd and later want to create your own DTD plugin, you will need to change all of your topics' DOCTYPEs to reference your DTD rather than IxiaDitabase.dtd (if you want those topics to use the same specializations and constraints as new topics created going forward—which is advised, to reduce author confusion and inconsistency). This change is not trivial to make and should be avoided by as much prior planning as possible.

  1. Use Create Collection to create a new plugin folder in Repository/system/plugins.

    Give this DTD plugin a unique name, following standard DITA plugin naming conventions. This procedure and the ones that follow use the name com.company.dtd as an example. When following these instructions, be sure to substitute your actual name.

  2. Add a dtd subfolder using Create Collection.
  3. Copy plugin.xml and catalog.xml from com.ixiasoft.dita13.dtd to com.company.dtd.
    Tip: You might have to export both files to your desktop and then add them to com.company.dtd using Insert Documents.
  4. Copy IxiaDitabase.dtd from com.ixiasoft.dita13.dtd/dtd to com.company.dtd/dtd.
    Tip: Again, you might have to export IxiaDitabase.dtd to your desktop and then add it to com.company.dita.dtd/dtd using Insert Documents.
  5. If you use XMetaL,copy the XMetaL configuration files to the dtd subfolder .

    In the dtd subfolder, there are three other IxiaDitabase files: IxiaDitabase.css, IxiaDitabase.ctm, and IxiaDitabase.mcr. These are configuration files for XMetaL, so if you are using XMetaL, you also need to copy those three files to the dtd subfolder and rename them to match the name you gave your custom DTD .

    There is also a file named macros.dtd, which is needed for XMetaL as well. You also need to copy it to the dtd subfolder, but do not change its name.

    If you are not using XMetaL, you do not need to copy these files to the dtd subfolder, but it doesn't hurt anything to do so.

  6. Rename the copy of IxiaDitabase.dtd in com.company.dtd/dtd to CompanyDitabase.dtd.
  7. If you copied the XMetaL files, rename them as well, except for macros.dtd.
  8. Check out plugin.xml (in com.company.dtd) and open it.
  9. Change the plugin id from com.ixiasoft.dita13.ot.plugin.dtd to com.company.ot.plugin.dtd.
  10. Save, close and check in plugin.xml.

You now (mostly) have your own plugin. Going forward, you'll do all your integrations in your plugin instead of in com.ixiasoft.dita13.dtd.

Next, you need to make some important edits to your custom topic and map shells.