<topic>
elementIn this scenario, an information architect for Acme, Incorporated wants to redefine the
content model for the topic document type. She wants to omit the
<abstract>
element and make the <shortdesc>
element required; she also wants to omit the <related-links>
element and
disallow topic nesting.
<!-- ============================================================= -->
<!-- CONSTRAINED TOPIC ENTITIES -->
<!-- ============================================================= -->
<!-- Declares the entity for the constraint module and defines -->
<!-- its contribution to the @domains attribute. -->
<!ENTITY topic-constraints
"(topic basic-Topic-c)"
>
<!-- Declares the entities referenced in the constrained content -->
<!-- model. -->
<!ENTITY % title "title">
<!ENTITY % titlealts "titlealts">
<!ENTITY % shortdesc "shortdesc">
<!ENTITY % prolog "prolog">
<!ENTITY % body "body">
<!-- Defines the constrained content model for <topic>. -->
<!ENTITY % topic.content
"((%title;),
(%titlealts;)?,
(%shortdesc;),
(%prolog;)?,
(%body;)?)"
>
<!-- ============================================================= -->
<!-- CONTENT CONSTRAINT INTEGRATION -->
<!-- ============================================================= -->
<!ENTITY % topic-constraints-c-def
PUBLIC "-//ACME//ELEMENTS DITA Topic Constraint//EN"
"acme-TopicConstraint.mod">
%topic-constraints-c-def;
@domains
attribute for
<topic>
:<!-- ============================================================= -->
<!-- DOMAINS ATTRIBUTE OVERRIDE -->
<!-- ============================================================= -->
<!ENTITY included-domains
"&hi-d-att;
&ut-d-att;
&indexing-d-att;
&topic-constraints;
"
>