Integrate the emphasisDomain specialization

Inspired by Eliot Kimber's tutorials at http://dita4practitioners.github.io/dita-specialization-tutorials/, let's assume you have created a domain specialization, Emphasis, that includes a new element, <em> to be used to mark text for emphasis. This specialization includes the two files emphasisDomain.mod and emphasisDomain.ent. (Examples of both of these files are included as appendices.) The specialization does not include a DTD file because it is a domain specialization. A domain specialization never includes a DTD because it cannot be used on its own, contrary to a topic type specialization.

  1. Add emphasisDomain.mod and emphasisDomain.ent to the dtd subfolder of your DTD plugin.
  2. Check out and open CompanyDitabase.dtd.
  3. In the DOMAIN ENTITY DECLARATIONS section, add the following:
    <!ENTITY % emphasis-d-dec
      PUBLIC "-//COMPANY//ENTITIES Emphasis Domain//EN"     
             "emphasisDomain.ent"                                                
    >
    %emphasis-d-dec;
  4. In the DOMAIN EXTENSIONS section, edit the keyword entity to include emphasis-d-keyword:
    <!ENTITY % keyword      "keyword |
                             %pr-d-keyword; | 
                             %sw-d-keyword; |
                             %ui-d-keyword; |
                             %emphasis-d-keyword;
                            ">
  5. In the DOMAINS ATTRIBUTE OVERRIDE section, edit the included-domains entity to reference &emphasis-d-att:
    <!ENTITY included-domains 
                              "&concept-att;
                               &glossentry-att;
                               &glossgroup-att;
                               &reference-att;
                               &task-att;
                               &hi-d-att;
                               &ut-d-att; 
                               &indexing-d-att;
                               &hazard-d-att;
                               &abbrev-d-att;
                               &pr-d-att; 
                               &sw-d-att;
                               &ui-d-att; 
                               &taskbody-constraints; 
                               &localization-loc-d-att;
                               &emphasis-d-att;
      "
    >
  6. In the DOMAIN ELEMENT INTEGRATION section, add the following:
    <!ENTITY % emphasis-d-def  
      PUBLIC "-//COMPANY//ELEMENTS Emphasis Domain//EN"   
             "emphasisDomain.mod"
    >
    %emphasis-d-def;
  7. Save, close, and check in CompanyDitabase.dtd.
  8. Check out and open your DTD plugin's catalog.xml.
  9. Within the group that includes CompanyDitabase.dtd, add the public identifiers for the emphasisDomain.mod and emphasisDomain.ent files.
    <group>
       <!-- Topics -->
       <public publicId="-//COMPANY//DTD DITA Composite//EN" uri="dtd/CompanyDitabase.dtd"/>
    			
       ...
    
       <!-- Company Emphasis domain --> 
       <public publicId="-//COMPANY//ELEMENTS Emphasis Domain//EN" uri="dtd/emphasisDomain.mod"/>
       <public publicId="-//COMPANY//ENTITIES Emphasis Domain//EN" uri="dtd/emphasisDomain.ent"/>
    </group>
  10. Save, close, and check in catalog.xml
  11. Restart the IXIASOFT CCMS Desktop.
  12. To add the specialization to IXIASOFT CCMS Output Generator, do the following:
    1. Copy the entire com.company.dtd plugin folder into the %OutputGenDir%/data/%OT_Dir%/plugins folder, overwriting the existing copy.

      Depending on your CCMS Output Generator configuration, the DITA-OT path might vary.

    2. Run the integrator to integrate the plugin.

You can now add the <em> element to your content, in any context where you could add <keyword>.

You also need to add templates and CSS or attribute sets to your output plugins to properly format text in the <em> element.