Topic Constraint Module Step 4: Integrate the Constraint Module in a Document Type Shell
For testing purposes, copy the standard topic.dtd file to a convenient location, either in the same directory as the constraint module file or in a nearby directory. To make its purpose clear, you can name it something like topic-with-highlight-constraint.dtd if you want.
Edit the copied topic DTD file, search for the comment "DOMAINS ATTRIBUTE OVERRIDE," and
update the declaration of the
&included-domains;
text entity to include
a reference to the &topic-constraints;
text
entity:<!-- ============================================================= --> <!-- DOMAINS ATTRIBUTE OVERRIDE --> <!-- ============================================================= --> <!-- Must be declared ahead of the DTDs, which puts @domains first in order --> <!ENTITY included-domains "&hi-d-att; &ut-d-att; &indexing-d-att; &hazard-d-att; &abbrev-d-att; &pr-d-att; &sw-d-att; &ui-d-att; &topic-constraints; " >
This adds the declaration of the topic-element-type constraint module to the @domains
attribute for the <topic>
element as configured in this document type shell.
Now search for the comment "TOPIC ELEMENT INTEGRATION" and add this parameter entity
declaration and
reference:
... <!-- ============================================================= --> <!-- CONTENT CONSTRAINT INTEGRATION --> <!-- ============================================================= --> <!ENTITY % hiOnlyTopic-c-def SYSTEM "highlightOnlyTopicConstraint.mod"> %hiOnlyTopic-c-def; <!-- ============================================================= --> <!-- TOPIC ELEMENT INTEGRATION --> <!-- ============================================================= --> ...
The topic.dtd file you started with may or may not have the "CONTENT CONSTRAINT INTEGRATION" comment. If it's not there, add it.