Add a DTD for custom document objects

You can create specialization DTDs to define your own sets of document objects. Once you have created these DTDs, you must edit the configuration files that define them for the system.

To create a specialization DTD:

  1. Open the TEXTML Administration view.
  2. Connect to your server and docbase.
  3. Write your specialization DTD.
  4. Import your DTD file into the Repository's /system/dtd/ixia collection.
  5. Create a catalog file in the /system/catalogs collection.
    Note: Catalogs must follow the OASIS standard. See Add IXIASOFT and DITA catalogs to the local environment.
  6. Add publicids to the catalog that you are using.
    These statements tell the system where the DTD is located.
  7. Modify the following two files in /system/conf.
    • ditaclasses.xml – Declares the new classes of your DTD and sets up the XPath statements that define the locations of their metadata.

      The following code shows the lines that declare the generic topic and map classes.
      <class name="- topic/topic " type="topic" path="//*[contains(@class, 'topic ' )]/prolog/metadata" 
          	position="//*[contains(@class, 'topic ' )]/prolog/metadata/unknown|//*[contains(@class, 'topic ' )]/prolog/metadata/foreign|//*[contains(@class, 'topic ' )]/prolog/metadata/data-about|//*[contains(@class, 'topic ' )]/prolog/metadata/data" variables="false"/>
      <class name="- map/map " type="map" path="/*/topicmeta" 
          	position="/*/topicmeta/unknown|/*/topicmeta/foreign|/*/topicmeta/data-about|/*/ topicmeta/data|/*/topicmeta/resourceid" variables="false"/>
    • equivalence.xml – Determines how the custom objects' classes are handled by the DITA CMS interface. Objects that are designated as equivalent to topics, for example, display the same right-click menu options and are searched in a similar manner.

      In the example below, there are four types of objects equivalent to topic: topic, concept, reference, and task.

      Note: It is recommended you use the same names for the object types as you do for the corresponding class types in ditaclasses.xml.
      <equivalences>
      	<equivalence type="topic">
      		<object type="topic"/>
      		<object type="concept"/>
      		<object type="reference"/>
      		<object type="task"/>
      	</equivalence>

After you have added your files to the system, make your custom DITA objects accessible to users by defining templates and adding these to the system as well.