<!-- ============================================================= -->
<!--                    HEADER                                     -->
<!-- ============================================================= -->
<!--  MODULE:    DITA BASE DTD                                     -->
<!--  VERSION:   1.1                                               -->
<!--  DATE:      November 2006                                     -->
<!--                                                               -->
<!-- ============================================================= -->

<!-- ============================================================= -->
<!--                    PUBLIC DOCUMENT TYPE DEFINITION            -->
<!--                    TYPICAL INVOCATION                         -->
<!--                                                               -->
<!--  Refer to this file by the following public identifier or an 
      appropriate system identifier 
PUBLIC "-//OASIS//DTD DITA Composite//EN"
      Delivered as file "ditabase.dtd"                             -->

<!-- The public ID above refers to the latest version of this DTD.
     To refer to this specific version, you may use this value:
PUBLIC "-//OASIS//DTD DITA 1.1 Composite//EN"                      -->
 
<!-- ============================================================= -->
<!-- SYSTEM:     Darwin Information Typing Architecture (DITA)     -->
<!--                                                               -->
<!-- PURPOSE:    Base DTD holds all the information types          -->
<!--                                                               -->
<!-- ORIGINAL CREATION DATE:                                       -->
<!--             March 2001                                        -->
<!--                                                               -->
<!--             (C) Copyright OASIS Open 2005, 2006.              -->
<!--             (C) Copyright IBM Corporation 2001, 2004.         -->
<!--             All Rights Reserved.                              -->
<!--                                                               -->
<!--  UPDATES:                                                     -->
<!--    2005.11.15 RDA: Updated these comments to match template   -->
<!--    2006.06.07 RDA: Added indexing domain                      -->
<!--    2006.06.21 RDA: Added props attribute extensions           -->
<!-- ============================================================= -->


<!-- ============================================================= -->
<!--                    DOMAIN ENTITY DECLARATIONS                 -->
<!-- ============================================================= -->


<!ENTITY % ui-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA User Interface Domain//EN" 
"uiDomain.ent"                                                       >
%ui-d-dec;

<!ENTITY % hi-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA Highlight Domain//EN" 
"highlightDomain.ent"                                                >
%hi-d-dec;

<!ENTITY % pr-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA Programming Domain//EN" 
"programmingDomain.ent"                                              >
%pr-d-dec;

<!ENTITY % sw-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA Software Domain//EN" 
"softwareDomain.ent"                                                 >
%sw-d-dec;

<!ENTITY % ut-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA Utilities Domain//EN" 
"utilitiesDomain.ent"                                                >
%ut-d-dec;

<!ENTITY % indexing-d-dec     PUBLIC 
"-//OASIS//ENTITIES DITA Indexing Domain//EN" 
"indexingDomain.ent"                                                 >
%indexing-d-dec;

<!-- ============================================================= -->
<!--                    DOMAIN ATTRIBUTE DECLARATIONS              -->
<!-- ============================================================= -->


<!-- ============================================================= -->
<!--                    DOMAIN EXTENSIONS                          -->
<!-- ============================================================= -->
<!--                    One for each extended base element, with
                        the name of the domain(s) in which the
                        extension was declared                     -->

<!ENTITY % pre          "pre     | %pr-d-pre;     | %sw-d-pre;     | 
                                   %ui-d-pre;"                       >
<!ENTITY % keyword      "keyword | %pr-d-keyword; | %sw-d-keyword; |
                                   %ui-d-keyword;"                   >
<!ENTITY % ph           "ph      | %pr-d-ph;      | %sw-d-ph;      | 
                                    %hi-d-ph;     | %ui-d-ph;"       >
<!ENTITY % fig          "fig     | %pr-d-fig;     | %ut-d-fig;"      >
<!ENTITY % dl           "dl      | %pr-d-dl;"                        >
<!ENTITY % index-base   "index-base | %indexing-d-index-base;"       >

<!-- ============================================================= -->
<!--                    DOMAIN ATTRIBUTE EXTENSIONS                -->
<!-- ============================================================= -->
<!ENTITY % props-attribute-extensions  ""                            >
<!ENTITY % base-attribute-extensions   ""                            >


<!-- ============================================================= -->
<!--                    TOPIC NESTING OVERRIDE                     -->
<!-- ============================================================= -->

<!--                    Redefine the infotype entity to exclude 
                        other topic types and disallow nesting     -->
<!ENTITY % glossentry-info-types 
                        "no-topic-nesting"                           >
<!ENTITY % info-types   "topic | concept | task | reference |
                         glossentry"                                 >


<!-- ============================================================= -->
<!--                    LOCALLY DEFINED CONTAINMENT                -->
<!-- ============================================================= -->
<!--                    Define a containment for topics for editor 
                        support                                    -->

<!ELEMENT dita          (%info-types;)+                              >


<!-- ============================================================= -->
<!--                    DOMAINS ATTRIBUTE OVERRIDE                 -->
<!-- ============================================================= -->
<!--                    Must be declared ahead of the DTDs, which
                        puts @domains first in order               -->

<!ENTITY included-domains 
                        "&ui-d-att; &hi-d-att; &pr-d-att; &sw-d-att;
                         &ut-d-att; &indexing-d-att;"                >


<!-- ============================================================= -->
<!--                    TOPIC ELEMENT INTEGRATION                  -->
<!-- ============================================================= -->
<!--                    Embed topic to get generic elements        -->
<!ENTITY % topic-type   PUBLIC 
"-//OASIS//ELEMENTS DITA Topic//EN" 
"topic.mod"                                                          >
%topic-type;


<!--                    Embed concept to get specific elements     -->
<!ENTITY % concept-typemod 
                        PUBLIC 
"-//OASIS//ELEMENTS DITA Concept//EN" 
"concept.mod"                                                        >                                                     
%concept-typemod;

<!--                    Embed task to get specific elements        -->
<!ENTITY % task-typemod PUBLIC
 "-//OASIS//ELEMENTS DITA Task//EN" 
"task.mod"                                                           >
%task-typemod;

<!--                     Embed reference to get specific elements  -->
<!ENTITY % reference-typemod 
                         PUBLIC 
"-//OASIS//ELEMENTS DITA Reference//EN" 
"reference.mod"                                                      >
%reference-typemod;

<!--                    Embed glossary to get specific elements    -->
<!ENTITY % glossary-typemod 
                        PUBLIC 
"-//OASIS//ELEMENTS DITA Glossary//EN" 
"glossary.mod"                                                       >                                                     
%glossary-typemod;

<!-- ============================================================= -->
<!--                    DOMAIN ELEMENT INTEGRATION                 -->
<!-- ============================================================= -->


<!ENTITY % ui-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA User Interface Domain//EN" 
"uiDomain.mod"                                                       >
%ui-d-def;

<!ENTITY % hi-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA Highlight Domain//EN" 
"highlightDomain.mod"                                                >
%hi-d-def;

<!ENTITY % pr-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA Programming Domain//EN" 
"programmingDomain.mod"                                              >
%pr-d-def;

<!ENTITY % sw-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA Software Domain//EN" 
"softwareDomain.mod"                                                 >
%sw-d-def;

<!ENTITY % ut-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA Utilities Domain//EN" 
"utilitiesDomain.mod"                                                >
%ut-d-def;

<!ENTITY % indexing-d-def     PUBLIC 
"-//OASIS//ELEMENTS DITA Indexing Domain//EN" 
"indexingDomain.mod"                                                 >
%indexing-d-def;


<!-- ============================================================= -->
<!--                    SPECIALIZATION ATTRIBUTES                  -->
<!-- ============================================================= -->

<!ATTLIST dita          %global-atts;                                >


<!-- ================== End DITA Base DTD  ======================= -->