<?xml encoding='US-ASCII'?>

<!-- STYLEBOOK BOOK DTD -->

<!-- import the external source-specific dtd -->
<!ENTITY % externalEntity SYSTEM "../../sources/entities.ent">
%externalEntity;

<!ELEMENT book (resources?|document|hidden|faqs|changes|group|external|separator)+>
<!ATTLIST book title     CDATA #REQUIRED
               copyright CDATA #IMPLIED>
               
<!ELEMENT resources EMPTY>
<!ATTLIST resources source CDATA #REQUIRED>

<!ELEMENT document EMPTY>
<!ATTLIST document id     ID    #REQUIRED
                   source CDATA #REQUIRED
                   label  CDATA #REQUIRED>

<!ELEMENT hidden EMPTY>
<!ATTLIST hidden id     ID    #REQUIRED
                 source CDATA #REQUIRED>

<!ELEMENT faqs EMPTY>
<!ATTLIST faqs id     ID    #REQUIRED
               source CDATA #REQUIRED
               label  CDATA #REQUIRED>

<!ELEMENT changes EMPTY>
<!ATTLIST changes id     ID    #REQUIRED
                  source CDATA #REQUIRED
                  label  CDATA #REQUIRED>

<!-- (entry) not supported in markup, cannot be tested -->
<!-- (group) not to have entry children, only standard children -->
<!-- <!ELEMENT group (entry)+> -->

<!ELEMENT group (document|faqs|changes|external)*> 
<!ATTLIST group id    ID    #IMPLIED
                label CDATA #REQUIRED>

<!-- (entry) not supported in markup, cannot be tested
<!ELEMENT entry EMPTY>
<!ATTLIST entry id     ID    #REQUIRED
                source CDATA #REQUIRED>
-->

<!ELEMENT external EMPTY>
<!ATTLIST external label CDATA #REQUIRED
                   href  CDATA #REQUIRED>
                   
<!ELEMENT separator EMPTY>

<!-- CVS $Revision: 1.3 $ $Date: 1999/12/01 23:03:37 $ -->
<!-- Revision by (shathaway@apache.org) 2011/09/01 -->