common.dtd
author fabien
Fri, 03 Feb 2006 16:28:04 -0500
branchdtd
changeset 3 066bee5b9521
parent 1 540690e532a7
child 4 7d1cb707b8fc
permissions -rw-r--r--
[svn r1975] r2268@freebird: fabien | 2006-01-31 00:28:15 -0500 Permet à toutes les pages de valider correctement.

<!-- Common DTD Elements -->

<!-- Notations -->
<!NOTATION SGML	PUBLIC "ISO 8879:1986//NOTATION Standard Generalized Markup Language//EN">

<!-- Entities declarations -->
<!ENTITY % local.common.attrib "">
<!ENTITY % common.attrib 
"id       ID                            #IMPLIED
lang      CDATA                         #IMPLIED
role      CDATA                         #IMPLIED
xreflabel CDATA                         #IMPLIED
%local.common.attrib;">
<!ENTITY % xref.attrib 
"linkend  IDREF                         #REQUIRED
endterm   IDREF                         #IMPLIED">
<!ENTITY % oref.attrib
"objent   ENTITY                        #REQUIRED
linkend  CDATA                          #REQUIRED
endterm  CDATA                          #REQUIRED">
<!ENTITY % title.class "title,subtitle?,titleabbrev?">
<!ENTITY % info.class "docinfo?,%title.class;">
<!ENTITY % author.class "author">
<!ENTITY % xref.class "anchor|xref|link|ulink|oref|olink">
<!ENTITY % special.location.class "">
<!ENTITY % location.class "web|email|address|phone
        %special.location.class;">
<!ENTITY % individu.class "firstname?,initials?,surname,title*,(%location.class;)*">
<!ENTITY % organism.class "name,dept?,(%location.class;)*">
<!ENTITY % special.text.class "">
<!ENTITY % commontext.class 
        "#PCDATA|emphasis|term|subscript|superscript|foreign|replaceable|literal|acronym
        |%xref.class;
        %special.text.class;">
<!ENTITY % local.block.class "">
<!ENTITY % special.block.class "">
<!ENTITY % commonblock.class 
        "para|formalpara|list|shortlist|deflist|example|citation
        %special.block.class;%local.block.class;">
<!ENTITY % listitem.class "listitem|item">

<!-- Top elements -->
<!ELEMENT article (%info.class;,preambule?,section+,addendum?)>
<!ATTLIST article %common.attrib;>
<!ELEMENT book (%info.class;,preambule?,section+,addendum?)>
<!ATTLIST book %common.attrib;>
<!-- Meta information elements -->
<!ELEMENT docinfo (%title.class;,version?,status?,date?,(%author.class;|authorgroup),copyright?,legalnotice?,revhistory?)>
<!ATTLIST docinfo %common.attrib;>
<!ELEMENT version (%commontext.class;)*>
<!ATTLIST version %common.attrib;>
<!ELEMENT status (%commontext.class;)*>
<!ATTLIST status %common.attrib;>
<!ELEMENT date (%commontext.class;)*>
<!ATTLIST date %common.attrib;>
<!ELEMENT copyright (year+,holder*)>
<!ATTLIST copyright %common.attrib;>
<!ELEMENT year (%commontext.class;)*>
<!ATTLIST year %common.attrib;>
<!ELEMENT holder (%individu.class;)*>
<!ATTLIST holder %common.attrib;>
<!ELEMENT revhistory (revision)+>
<!ATTLIST revhistory %common.attrib;>
<!ELEMENT revision (version,date,(%author.class;)*,status?,revremark?)>
<!ATTLIST revision %common.attrib;>
<!ELEMENT revremark (%commontext.class;)*>
<!ATTLIST revremark %common.attrib;>

<!-- structure elements -->
<!ELEMENT preambule ((%title.class;)?,(%commonblock.class;)*)>
<!ATTLIST preambule %common.attrib;>
<!ENTITY % local.section.alt "">
<!ENTITY % special.section.alt "">
<!ELEMENT section ((%title.class;)?,(%commonblock.class;)+,
        (section %special.section.alt;%local.section.alt;)*)>
<!ATTLIST section %common.attrib;>
<!ELEMENT addendum ((%title.class;)?,(%commonblock.class;)*)>
<!ATTLIST addendum %common.attrib;>

<!-- title elements -->
<!ELEMENT title (%commontext.class;)*>
<!ATTLIST title %common.attrib;>
<!ELEMENT subtitle (%commontext.class;)*>
<!ATTLIST subtitle %common.attrib;>
<!ELEMENT titleabbrev (%commontext.class;)*>
<!ATTLIST titleabbrev %common.attrib;>

<!-- individu elements -->
<!ELEMENT authorgroup (%author.class;)+>
<!ATTLIST authorgroup %common.attrib;>
<!ELEMENT author (%individu.class;)*>
<!ATTLIST author %common.attrib;>
<!ELEMENT firstname (%commontext.class;)*>
<!ATTLIST firstname %common.attrib;>
<!ELEMENT surname (%commontext.class;)*>
<!ATTLIST surname %common.attrib;>
<!ELEMENT initials (%commontext.class;)*>
<!ATTLIST initials %common.attrib;>
<!ELEMENT email (#PCDATA)*>
<!ATTLIST email %common.attrib;>
<!ELEMENT web (#PCDATA)*>
<!ATTLIST web %common.attrib;>

<!-- company declaration -->
<!ELEMENT organism (%organism.class;)>
<!ATTLIST organism %common.attrib;>
<!ELEMENT name (%commontext.class;)*>
<!ATTLIST name %common.attrib;>
<!ELEMENT dept (%commontext.class;)*>
<!ATTLIST dept %common.attrib;>

<!-- address elements -->
<!ELEMENT address (street|pob|city|state|postcode|country|otheraddr)+>
<!ATTLIST address %common.attrib;
                  country CDATA #IMPLIED >
<!ELEMENT street (%commontext.class;)*>
<!ATTLIST street %common.attrib;>
<!ELEMENT pob (%commontext.class;)*>
<!ATTLIST pob %common.attrib;>
<!ELEMENT postcode (%commontext.class;)*>
<!ATTLIST postcode %common.attrib;>
<!ELEMENT city (%commontext.class;)*>
<!ATTLIST city %common.attrib;>
<!ELEMENT state (%commontext.class;)*>
<!ATTLIST state %common.attrib;>
<!ELEMENT country (%commontext.class;)*>
<!ATTLIST country %common.attrib;>
<!ELEMENT otheraddr (%commontext.class;)*>
<!ATTLIST otheraddr %common.attrib;>
<!ELEMENT phone (%commontext.class;)*>
<!ATTLIST phone %common.attrib;
                type (phone|fax|pager|mobile|home|work) "phone">

<!ELEMENT legalnotice (%commonblock.class;)+>
<!ATTLIST legalnotice %common.attrib;>

<!-- block elements -->
<!ELEMENT para (%commontext.class;)*>
<!ATTLIST para %common.attrib;>
<!ELEMENT formalpara (%title.class;,(%commonblock.class;)*)>
<!ATTLIST formalpara %common.attrib;>
<!ELEMENT example ((%title.class;)?,(%commonblock.class;)*)>
<!ATTLIST example %common.attrib;>
<!ELEMENT citation ((%commonblock.class;)+,(%author.class;)?)>
<!ATTLIST citation %common.attrib;>

<!-- lists elements -->
<!ELEMENT list (%listitem.class;)+>
<!ATTLIST list %common.attrib;
        type (alpha|numerical|roman|none) "none"
	start NMTOKEN #IMPLIED>
<!ELEMENT shortlist (item)+>
<!ATTLIST shortlist %common.attrib;>
<!ELEMENT listitem (%commonblock.class;)+>
<!ATTLIST listitem %common.attrib;>
<!ELEMENT item (%commontext.class;)*>
<!ATTLIST item %common.attrib;>
<!ELEMENT deflist  (definition)+>
<!ATTLIST deflist %common.attrib;>
<!ELEMENT definition (defterm,(%listitem.class;))>
<!ATTLIST definition %common.attrib;>
<!ELEMENT defterm (%commontext.class;)*>
<!ATTLIST defterm %common.attrib;>

<!-- text elements -->
<!ELEMENT emphasis (%commontext.class;)*>
<!ATTLIST emphasis %common.attrib;>
<!ELEMENT term (%commontext.class;)*>
<!ATTLIST term %common.attrib;>
<!ELEMENT foreign (%commontext.class;)*>
<!ATTLIST foreign %common.attrib;>
<!ELEMENT subscript (%commontext.class;)*>
<!ATTLIST subscript %common.attrib;>
<!ELEMENT superscript (%commontext.class;)*>
<!ATTLIST superscript %common.attrib;>
<!ELEMENT replaceable (%commontext.class;)*>
<!ATTLIST replaceable %common.attrib;>
<!ELEMENT literal (%commontext.class;)*>
<!ATTLIST literal %common.attrib;>
<!ELEMENT acronym (%commontext.class;)*>
<!ATTLIST acronym %common.attrib;
        text CDATA #IMPLIED>

<!-- xref elements -->
<!ELEMENT anchor EMPTY>
<!ATTLIST anchor %common.attrib;>
<!ELEMENT xref EMPTY>
<!ATTLIST xref %common.attrib;
               %xref.attrib;>
<!ELEMENT link (%commontext.class;)*>
<!ATTLIST link %common.attrib;
               %xref.attrib;>
<!ELEMENT ulink (%commontext.class;)*>
<!ATTLIST ulink %common.attrib;
                url CDATA #REQUIRED>
<!ELEMENT oref EMPTY>
<!ATTLIST oref %common.attrib;
               %oref.attrib;>
<!ELEMENT olink (%commontext.class;)*>
<!ATTLIST olink %common.attrib;
                %oref.attrib;>